{"product_id":"drahtgitterboden-standard-50x100","title":"Drahtgitterboden Standard 50×100 mm — 50 mm Traverse — MantaMESH","description":"\n\u003cp\u003e\u003cstrong\u003eDrahtgitterboden Standard\u003c\/strong\u003e für Palettenregale, Maschenweite 50 × 100 mm. Trägerprofil BOX 50 mm, Endform EXTERNALDN — kompatibel zu allen gängigen Palettenregal-Systemen mit Traversen-Auflage.\u003c\/p\u003e\n\u003cp\u003eKonfiguriere die passende Variante über die Optionen: \u003cstrong\u003eTiefe × Breite × Tragkraft\u003c\/strong\u003e. Standard-2-Balken-Variante für klassische Palettenregale.\u003c\/p\u003e\n\n\u003cstyle\u003e\n.bs24-prod-staffel { font-family: inherit; margin: 1.25rem 0 1rem; }\n.bs24-prod-staffel h3 { font-size: 1.2rem; margin: 0 0 .35rem; color: #153156; }\n.bs24-prod-staffel .hint { font-size: .85rem; color: #6b7280; margin: 0 0 .75rem; }\n\n\/* Schnell\/Günstig Toggle *\/\n.bs24-mode-toggle { display: inline-flex; gap: 0; border: 1.5px solid #E5E5E5; border-radius: 10px; overflow: hidden; margin: 0 0 .85rem; }\n.bs24-mode-toggle button { background: #fff; border: 0; padding: .5rem .9rem; font-size: .88rem; cursor: pointer; color: #6b7280; font-weight: 600; line-height: 1.2; }\n.bs24-mode-toggle button.active { background: #153156; color: #fff; }\n\n\/* Staffel-Tabelle *\/\n.bs24-prod-staffel table { width: 100%; border-collapse: collapse; font-size: .95rem; }\n.bs24-prod-staffel thead th { background: #153156; color: #fff; font-weight: 600; padding: .5rem .75rem; text-align: left; }\n.bs24-prod-staffel thead th:nth-child(n+2) { text-align: right; }\n.bs24-prod-staffel tbody td { padding: .45rem .75rem; border-bottom: 1px solid #E5E5E5; }\n.bs24-prod-staffel tbody td:nth-child(n+2) { text-align: right; font-variant-numeric: tabular-nums; }\n.bs24-prod-staffel tbody tr.bs24-active { background: #FFF1E5; }\n.bs24-prod-staffel tbody tr.bs24-active td { font-weight: 600; color: #153156; }\n.bs24-prod-staffel tbody tr.bs24-active td:first-child::after { content: \"  ← Deine Menge\"; font-size: .75rem; color: #FF7A00; font-weight: 600; margin-left: .35rem; }\n.bs24-prod-staffel .savings { display: inline-block; background: #6b7280; color: #fff; font-size: .75rem; font-weight: 600; padding: .1rem .45rem; border-radius: 99px; margin-left: .35rem; }\n\n\/* Dein-Preis-Block — prominent below table *\/\n.bs24-current-price { background: linear-gradient(135deg, #FFF1E5 0%, #FFE0C7 100%); border: 1.5px solid #FF7A00; border-radius: 10px; padding: .85rem 1rem; margin: 1rem 0 .5rem; }\n.bs24-current-price .cp-label { font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; color: #153156; }\n.bs24-current-price .cp-main { font-size: 1.5rem; font-weight: 800; color: #153156; line-height: 1.1; margin: .2rem 0; letter-spacing: -.01em; }\n.bs24-current-price .cp-main .suffix { font-size: .95rem; font-weight: 500; }\n.bs24-current-price .cp-total { font-size: .95rem; color: #153156; font-weight: 600; }\n.bs24-current-price .cp-total strong { color: #FF7A00; }\n.bs24-current-price .cp-brutto { font-size: .8rem; color: #6b7280; margin-top: .15rem; }\n\n.bs24-prod-staffel .ref-link { display: inline-block; margin-top: .75rem; background: #153156; color: #fff; padding: .5rem 1rem; border-radius: 6px; text-decoration: none; font-size: .9rem; font-weight: 600; }\n.bs24-prod-staffel .ref-link:hover { filter: brightness(1.1); }\n\u003c\/style\u003e\n\n\n\n\n\n\u003ch3\u003eEigenschaften\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMaterial: verzinkter Stahldraht, Trägerprofil pulverbeschichtet\u003c\/li\u003e\n\u003cli\u003eMaschenweite: 50 × 100 mm\u003c\/li\u003e\n\u003cli\u003eTrägerprofil: BOX 50 mm\u003c\/li\u003e\n\u003cli\u003eEndform: EXTERNALDN (nach unten gebogen) — Standard-Auflage auf Traversen\u003c\/li\u003e\n\u003cli\u003eLieferung Schnell: 2–10 Werktage. Günstig: ca. 35 Werktage\u003c\/li\u003e\n\u003cli\u003eVersand: pauschal, Mengen-Großbestellungen auf Anfrage\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cdiv class=\"bs24-prod-staffel\"\u003e\n  \u003ch3\u003eStaffelpreise \u0026amp; Lieferung\u003c\/h3\u003e\n  \u003cp class=\"hint\"\u003eWähle Lieferart + Menge — Dein aktueller Preis aktualisiert sich automatisch.\u003c\/p\u003e\n  \u003cdiv class=\"bs24-mode-toggle\" data-bs24-mode-toggle role=\"group\" aria-label=\"Liefermodus\"\u003e\n    \u003cbutton type=\"button\" data-mode=\"schnell\" class=\"active\"\u003e⚡ Schnell (2–10 Werktage)\u003c\/button\u003e\n    \u003cbutton type=\"button\" data-mode=\"guenstig\"\u003e💰 Günstig (ca. 35 Werktage)\u003c\/button\u003e\n  \u003c\/div\u003e\n  \u003ctable\u003e\n    \u003cthead\u003e\n      \u003ctr\u003e\n        \u003cth\u003eMenge ab\u003c\/th\u003e\n        \u003cth\u003eSchnell (2–10 Werktage)\u003c\/th\u003e\n        \u003cth data-bs24-col-guenstig\u003eGünstig (ca. 35 Werktage)\u003c\/th\u003e\n      \u003c\/tr\u003e\n    \u003c\/thead\u003e\n    \u003ctbody\u003e\u003c\/tbody\u003e\n  \u003c\/table\u003e\n  \u003cdiv class=\"bs24-current-price\"\u003e\n    \u003cdiv class=\"cp-label\"\u003eDein aktueller Preis (gewählte Menge + Modus)\u003c\/div\u003e\n    \u003cdiv class=\"cp-main\"\u003e\n\u003cspan data-bs24-unit-price\u003e—\u003c\/span\u003e\u003cspan class=\"suffix\"\u003e \/ Stk netto\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"cp-total\"\u003e\n\u003cspan data-bs24-qty\u003e1\u003c\/span\u003e Stk × \u003cspan data-bs24-unit-2\u003e—\u003c\/span\u003e = \u003cstrong data-bs24-total\u003e—\u003c\/strong\u003e netto\u003c\/div\u003e\n    \u003cdiv class=\"cp-brutto\"\u003eInkl. 19 % MwSt.: \u003cspan data-bs24-brutto\u003e—\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003ca href=\"\/pages\/regalzubehor\" class=\"ref-link\"\u003eIm Konfigurator vergleichen + bestellen →\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n(function(){\n  if (!window.BS24_PROD_STAFFEL) window.BS24_PROD_STAFFEL = {};\n  Object.assign(window.BS24_PROD_STAFFEL, {\"56912628711802\": {\"t\": [[1, 52.1, 50.4], [12, 19.6, 17.9], [96, 17.0, 15.3], [288, 16.8, 15.1], [504, 16.8, 15.1], [1008, 16.3, 14.6]], \"a\": 2}, \"56912628744570\": {\"t\": [[1, 54.0, 52.2], [12, 21.0, 19.2], [96, 18.4, 16.6], [288, 18.1, 16.3], [504, 18.1, 16.3], [1008, 17.6, 15.8]], \"a\": 2}, \"56912628777338\": {\"t\": [[1, 57.1, 55.2], [12, 23.2, 21.2], [96, 20.6, 18.6], [288, 20.3, 18.4], [504, 20.3, 18.4], [1008, 19.8, 17.9]], \"a\": 2}, \"56912628810106\": {\"t\": [[1, 60.7, 58.7], [12, 25.0, 23.2], [96, 22.4, 20.6], [288, 22.1, 20.3], [504, 22.1, 20.3], [1008, 21.6, 19.8]], \"a\": 2}, \"56912628842874\": {\"t\": [[1, 65.5, 63.2], [12, 28.0, 25.9], [96, 25.4, 23.3], [288, 25.1, 23.1], [504, 25.1, 23.1], [1008, 24.6, 22.6]], \"a\": 2}, \"56912628875642\": {\"t\": [[1, 72.9, 70.2], [12, 31.6, 29.4], [96, 29.0, 26.8], [288, 28.8, 26.5], [504, 28.8, 26.5], [1008, 28.2, 26.0]], \"a\": 2}, \"56912628908410\": {\"t\": [[1, 62.5, 60.5], [12, 24.8, 22.7], [96, 22.2, 20.1], [288, 21.9, 19.9], [504, 21.9, 19.9], [1008, 21.4, 19.4]], \"a\": 2}, \"56912628941178\": {\"t\": [[1, 65.2, 63.2], [12, 26.4, 24.3], [96, 23.8, 21.7], [288, 23.5, 21.4], [504, 23.5, 21.4], [1008, 23.0, 20.9]], \"a\": 2}, \"56912628973946\": {\"t\": [[1, 69.8, 67.6], [12, 29.1, 27.0], [96, 26.5, 24.4], [288, 26.3, 24.1], [504, 26.3, 24.1], [1008, 25.8, 23.6]], \"a\": 2}, \"56912629006714\": {\"t\": [[1, 74.8, 72.5], [12, 32.3, 30.0], [96, 29.7, 27.4], [288, 29.4, 27.1], [504, 29.4, 27.1], [1008, 28.9, 26.6]], \"a\": 2}, \"56912629039482\": {\"t\": [[1, 81.7, 79.2], [12, 36.4, 33.8], [96, 33.8, 31.2], [288, 33.5, 31.0], [504, 33.5, 31.0], [1008, 33.0, 30.5]], \"a\": 2}, \"56912629072250\": {\"t\": [[1, 93.1, 89.8], [12, 41.5, 38.8], [96, 38.9, 36.2], [288, 38.7, 35.9], [504, 38.7, 35.9], [1008, 38.1, 35.4]], \"a\": 2}, \"56912629105018\": {\"t\": [[1, 54.7, 53.9], [12, 19.0, 18.2], [96, 16.5, 15.8], [288, 16.2, 15.5], [504, 16.2, 15.5], [1008, 15.9, 15.2]], \"a\": 2}, \"56912629137786\": {\"t\": [[1, 57.6, 56.8], [12, 21.9, 21.0], [96, 19.5, 18.6], [288, 19.2, 18.3], [504, 19.2, 18.3], [1008, 18.8, 17.9]], \"a\": 2}, \"56912629170554\": {\"t\": [[1, 60.8, 59.8], [12, 25.0, 24.0], [96, 22.6, 21.6], [288, 22.3, 21.3], [504, 22.3, 21.3], [1008, 21.8, 20.8]], \"a\": 2}, \"56912629203322\": {\"t\": [[1, 63.8, 62.6], [12, 28.0, 26.8], [96, 25.5, 24.4], [288, 25.3, 24.1], [504, 25.3, 24.1], [1008, 24.7, 23.6]], \"a\": 2}, \"56912629236090\": {\"t\": [[1, 66.7, 65.4], [12, 30.9, 29.6], [96, 28.5, 27.2], [288, 28.0, 26.7], [504, 28.0, 26.7], [1008, 27.4, 26.1]], \"a\": 2}, \"56912629268858\": {\"t\": [[1, 69.6, 68.2], [12, 33.8, 32.4], [96, 31.4, 30.0], [288, 30.8, 29.4], [504, 30.8, 29.4], [1008, 30.2, 28.8]], \"a\": 2}, \"56912629301626\": {\"t\": [[1, 73.9, 73.0], [12, 24.9, 23.9], [96, 21.6, 20.6], [288, 21.2, 20.2], [504, 21.2, 20.2], [1008, 20.7, 19.8]], \"a\": 2}, \"56912629334394\": {\"t\": [[1, 76.9, 75.8], [12, 27.8, 26.7], [96, 24.5, 23.4], [288, 24.1, 23.0], [504, 24.1, 23.0], [1008, 23.6, 22.5]], \"a\": 2}, \"56912629367162\": {\"t\": [[1, 81.6, 80.2], [12, 32.4, 31.1], [96, 29.1, 27.8], [288, 28.7, 27.4], [504, 28.2, 26.9], [1008, 27.5, 26.3]], \"a\": 2}, \"56912629399930\": {\"t\": [[1, 84.5, 83.1], [12, 35.4, 33.9], [96, 32.0, 30.6], [288, 31.7, 30.2], [504, 31.1, 29.6], [1008, 30.4, 29.0]], \"a\": 2}, \"56912629432698\": {\"t\": [[1, 87.5, 85.9], [12, 38.4, 36.8], [96, 35.0, 33.4], [288, 34.6, 33.0], [504, 34.0, 32.4], [1008, 33.2, 31.7]], \"a\": 2}, \"56912629465466\": {\"t\": [[1, 90.4, 88.7], [12, 41.3, 39.5], [96, 37.9, 36.2], [288, 37.6, 35.8], [504, 36.8, 35.1], [1008, 36.0, 34.4]], \"a\": 2}, \"56912629498234\": {\"t\": [[1, 58.7, 57.9], [12, 20.5, 19.7], [96, 17.9, 17.1], [288, 17.6, 16.8], [504, 17.6, 16.8], [1008, 17.2, 16.4]], \"a\": 5}, \"56912629531002\": {\"t\": [[1, 62.0, 61.0], [12, 23.8, 22.8], [96, 21.2, 20.2], [288, 20.9, 19.9], [504, 20.9, 19.9], [1008, 20.4, 19.5]], \"a\": 5}, \"56912629563770\": {\"t\": [[1, 67.9, 66.7], [12, 29.6, 28.4], [96, 27.0, 25.7], [288, 26.7, 25.4], [504, 26.2, 25.0], [1008, 25.6, 24.4]], \"a\": 5}, \"56912629596538\": {\"t\": [[1, 71.1, 69.7], [12, 32.8, 31.4], [96, 30.2, 28.8], [288, 29.9, 28.5], [504, 29.3, 28.0], [1008, 28.7, 27.4]], \"a\": 5}, \"56912629629306\": {\"t\": [[1, 74.3, 72.8], [12, 36.0, 34.5], [96, 33.4, 31.9], [288, 32.8, 31.3], [504, 32.8, 31.3], [1008, 32.1, 30.6]], \"a\": 5}, \"56912629662074\": {\"t\": [[1, 77.6, 75.9], [12, 39.2, 37.6], [96, 36.6, 34.9], [288, 36.0, 34.3], [504, 36.0, 34.3], [1008, 35.2, 33.6]], \"a\": 5}, \"56912629694842\": {\"t\": [[1, 79.6, 78.6], [12, 27.0, 25.9], [96, 23.4, 22.3], [288, 23.0, 21.9], [504, 23.0, 21.9], [1008, 22.5, 21.4]], \"a\": 5}, \"56912629727610\": {\"t\": [[1, 82.9, 81.7], [12, 30.2, 29.0], [96, 26.6, 25.4], [288, 26.2, 25.0], [504, 26.2, 25.0], [1008, 25.6, 24.5]], \"a\": 5}, \"56912629760378\": {\"t\": [[1, 91.6, 90.0], [12, 38.8, 37.2], [96, 35.2, 33.6], [288, 34.8, 33.2], [504, 34.1, 32.6], [1008, 33.4, 31.9]], \"a\": 5}, \"56912629793146\": {\"t\": [[1, 94.9, 93.1], [12, 42.0, 40.3], [96, 38.4, 36.7], [288, 38.0, 36.3], [504, 37.3, 35.6], [1008, 36.5, 34.8]], \"a\": 5}, \"56912629825914\": {\"t\": [[1, 98.1, 96.2], [12, 45.2, 43.3], [96, 41.6, 39.7], [288, 41.2, 39.3], [504, 40.4, 38.6], [1008, 39.6, 37.8]], \"a\": 5}, \"56912629858682\": {\"t\": [[1, 101.3, 99.2], [12, 48.5, 46.4], [96, 44.9, 42.8], [288, 44.5, 42.4], [504, 43.6, 41.6], [1008, 42.7, 40.7]], \"a\": 5}});\n  if (window.__bs24StaffelInitialized) return;\n  window.__bs24StaffelInitialized = true;\n\n  var MWST = 0.19;\n  var currentMode = 'schnell'; \/\/ 'schnell' | 'guenstig'\n\n  function eur(n){ return n.toLocaleString('de-DE',{minimumFractionDigits:2,maximumFractionDigits:2}) + ' €'; }\n  function currentVariantId(){\n    var m = (location.search||'').match(\/[?\u0026]variant=(\\d+)\/);\n    if (m) return m[1];\n    var inp = document.querySelector('form[action*=\"\/cart\/add\"] [name=\"id\"]');\n    if (inp \u0026\u0026 inp.value) return inp.value;\n    return null;\n  }\n  function currentQty(){\n    var qty = document.querySelector('form[action*=\"\/cart\/add\"] [name=\"quantity\"]');\n    return qty ? Math.max(1, parseInt(qty.value)||1) : 1;\n  }\n  function pickTierIdx(qty, tiers){\n    var idx = -1;\n    for (var j=0; j\u003ctiers.length; j++) if (qty \u003e= tiers[j][0]) idx = j;\n    return idx;\n  }\n  function isMultiMode(tiers){\n    for (var i=0; i\u003ctiers.length; i++) if (Math.abs(tiers[i][1] - tiers[i][2]) \u003e 0.005) return true;\n    return false;\n  }\n  function unitPriceForState(tiers, qty, mode){\n    var idx = pickTierIdx(qty, tiers);\n    if (idx \u003c 0) return tiers[0][mode === 'guenstig' ? 2 : 1];\n    return tiers[idx][mode === 'guenstig' ? 2 : 1];\n  }\n  \/\/ Backward-compatible accessors fuer altes (Array) und neues ({t,a}) Format\n  function getTiers(entry){ return Array.isArray(entry) ? entry : (entry \u0026\u0026 entry.t) || []; }\n  function getAtSchnell(entry){ return Array.isArray(entry) ? null : (entry \u0026\u0026 entry.a); }\n\n  \/\/ ===== Staffel-Tabelle vor Cart-Form verschieben =====\n  function moveStaffelNearCart(){\n    var toggle = document.querySelector('.bs24-prod-staffel [data-bs24-mode-toggle]');\n    if (!toggle) return false;\n    if (toggle.dataset.bs24Moved === '1') return true;\n    var btn = document.querySelector('form[action*=\"\/cart\/add\"] button[type=\"submit\"], form[action*=\"\/cart\/add\"] [name=\"add\"]');\n    if (!btn) return false;\n    var anchor = btn.closest('.product-form__buttons, .product-form__cart, [class*=\"product-form__buttons\"]') || btn;\n    if (!anchor.parentNode) return false;\n    var wrap = document.createElement('div');\n    wrap.className = 'bs24-mode-toggle-floating';\n    wrap.style.cssText = 'margin: .75rem 0 1rem;';\n    var hint = document.createElement('div');\n    hint.style.cssText = 'font-size:.85rem;margin-bottom:.4rem;color:#153156;font-weight:600;';\n    hint.textContent = 'Lieferung wählen:';\n    wrap.appendChild(hint);\n    wrap.appendChild(toggle);\n    anchor.parentNode.insertBefore(wrap, anchor);\n    toggle.dataset.bs24Moved = '1';\n    return true;\n  }\n  function ensureStaffelPosition(){\n    if (moveStaffelNearCart()) return;\n    var attempts = 0;\n    var t = setInterval(function(){\n      if (moveStaffelNearCart() || ++attempts \u003e 20) clearInterval(t);\n    }, 250);\n  }\n\n  \/\/ ===== Brutto-Element im Theme (z.B. \"62,00 € inkl. 19% MwSt.\") aktualisieren =====\n  function updateBruttoDisplay(bruttoUnit){\n    var formatted = eur(bruttoUnit) + ' inkl. 19% MwSt.';\n    var form = document.querySelector('form[action*=\"\/cart\/add\"]');\n    var searchArea = document;\n    if (form) {\n      searchArea = form.closest('section, article, .product, .product-info, .product__info, .product-form, [class*=\"product\"]') || form.parentNode || document;\n    }\n    var pattern = \/^\\s*\\S*\\s*\\d+[.,]\\d+\\s*€?\\s*inkl\\.\\s*\\d+\\s*%?\\s*MwSt\\.\\s*$\/i;\n    var nodes = searchArea.querySelectorAll('p, span, div, td, small, em, strong, b');\n    for (var i = 0; i \u003c nodes.length; i++) {\n      var el = nodes[i];\n      if (el.children.length \u003e 0) continue;\n      var t = (el.textContent || '').trim();\n      if (!pattern.test(t)) continue;\n      el.textContent = formatted;\n      el.dataset.bs24Brutto = '1';\n    }\n  }\n\n  \/\/ ===== Top-Netto-Preis (Theme-Element neben Titel) aktualisieren =====\n  \/\/ Sucht Elemente mit reinem \"€XX,XX\" \/ \"XX,XX €\" Text und ueberschreibt sie mit\n  \/\/ dem aktuellen Tier-Preis. Schliesst Brutto-Elemente (mit \"inkl. MwSt.\") und\n  \/\/ unsere eigenen Bs24-Boxen aus.\n  function updateNettoDisplay(unitNetto){\n    var formatted = eur(unitNetto);\n    var form = document.querySelector('form[action*=\"\/cart\/add\"]');\n    var searchArea = document;\n    if (form) {\n      searchArea = form.closest('section, article, .product, .product-info, .product__info, .product-form, [class*=\"product\"]') || form.parentNode || document;\n    }\n    var pureNettoPattern = \/^\\s*€?\\s*\\d{1,5}[.,]\\d{2}\\s*€?\\s*$\/i;\n    var nodes = searchArea.querySelectorAll('p, span, div, h1, h2, h3, h4, b, strong, em');\n    for (var i = 0; i \u003c nodes.length; i++) {\n      var el = nodes[i];\n      if (el.children.length \u003e 0) continue;\n      if (el.closest \u0026\u0026 el.closest('.bs24-prod-staffel')) continue;\n      if (el.closest \u0026\u0026 el.closest('.bs24-current-price')) continue;\n      var t = (el.textContent || '').trim();\n      if (!pureNettoPattern.test(t)) continue;\n      \/\/ Brutto erkennen: Parent-Text enthaelt \"inkl.\" oder \"MwSt.\" (dann Brutto, nicht Netto-Anchor)\n      var p = el.parentElement;\n      var inBrutto = false;\n      while (p \u0026\u0026 p !== searchArea) {\n        var pt = (p.textContent || '');\n        if (pt.indexOf('inkl.') !== -1) { inBrutto = true; break; }\n        p = p.parentElement;\n      }\n      if (inBrutto) continue;\n      if (!el.dataset.bs24OrigNetto) el.dataset.bs24OrigNetto = t;\n      el.textContent = formatted;\n      el.dataset.bs24Netto = '1';\n    }\n  }\n\n  \/\/ ===== Theme-Lieferzeit (z.B. \"Lieferzeit: 2-4 Werktage\") dynamisch ueberschreiben =====\n  \/\/ Schnell-Modus: variant-spezifische at_schnell.  Guenstig-Modus: \"ca. 35 Werktage\".\n  \/\/ Walked alle Text-Nodes (auch in Hilfs-Spans) und ersetzt das Muster gezielt.\n  function updateLieferzeitDisplay(atSchnell){\n    var value;\n    if (currentMode === 'guenstig') value = 'ca. 35 Werktage';\n    else if (atSchnell)             value = atSchnell + ' Werktage';\n    else return;\n\n    var fullPattern  = \/Lieferzeit\\s*:\\s*[\\d\\-\\u2013\\s]+\\s*Werktage?\/gi; \/\/ \"Lieferzeit: 2-4 Werktage\"\n    var valueOnlyPat = \/([\\d\\u2013]+(?:\\s*[\\-\\u2013]\\s*[\\d\\u2013]+)?)\\s*Werktage?\/i; \/\/ nur \"2-4 Werktage\"\n    var newFull   = 'Lieferzeit: ' + value;\n    var newValue  = value;\n\n    if (!document.body || !document.createTreeWalker) return;\n    var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, null, false);\n    var nodes = [];\n    var n;\n    while ((n = walker.nextNode())) nodes.push(n);\n\n    for (var i = 0; i \u003c nodes.length; i++) {\n      var node = nodes[i];\n      var parent = node.parentNode;\n      if (!parent || parent.closest \u0026\u0026 parent.closest('.bs24-prod-staffel')) continue;\n      if (parent.closest \u0026\u0026 parent.closest('.bs24-current-price')) continue;\n      var t = node.nodeValue || '';\n      if (!t.trim()) continue;\n      \/\/ Variante 1: ganzes \"Lieferzeit: 2-4 Werktage\" im selben Text\n      if (fullPattern.test(t)) {\n        fullPattern.lastIndex = 0;\n        node.nodeValue = t.replace(fullPattern, newFull);\n        continue;\n      }\n      \/\/ Variante 2: nur \"2-4 Werktage\" im Text (Label in Geschwister-Element)\n      \/\/ Nur aktiv wenn ein Geschwister\/Nachbar \"Lieferzeit\" enthaelt\n      if (valueOnlyPat.test(t)) {\n        var pTxt = (parent.textContent || '');\n        if (\/Lieferzeit\/i.test(pTxt) || (parent.parentNode \u0026\u0026 \/Lieferzeit\/i.test(parent.parentNode.textContent || ''))) {\n          node.nodeValue = t.replace(valueOnlyPat, newValue);\n        }\n      }\n    }\n  }\n\n  \/\/ ===== Cart-Button-Text mit Gesamtpreis aktualisieren =====\n  function updateCartButton(totalNetto){\n    var btn = document.querySelector('form[action*=\"\/cart\/add\"] button[type=\"submit\"], form[action*=\"\/cart\/add\"] [name=\"add\"]');\n    if (!btn) return;\n    if (!btn.dataset.bs24Base) {\n      var orig = (btn.textContent || '').trim();\n      \/\/ Strip vorhandenen Preisteil weg\n      var stripped = orig.replace(\/\\s*[-–•|]?\\s*€?\\s*\\d{1,5}[.,]\\d{2}\\s*€?\\s*$\/, '').trim();\n      btn.dataset.bs24Base = stripped || orig;\n    }\n    btn.textContent = btn.dataset.bs24Base + ' – ' + eur(totalNetto);\n  }\n\n  \/\/ ===== Hidden Input fuer cart-property \"Lieferung\" =====\n  function updateLieferungInput(){\n    var form = document.querySelector('form[action*=\"\/cart\/add\"]');\n    if (!form) return;\n    var input = form.querySelector('input[name=\"properties[Lieferung]\"]');\n    if (!input) {\n      input = document.createElement('input');\n      input.type = 'hidden';\n      input.name = 'properties[Lieferung]';\n      form.appendChild(input);\n    }\n    input.value = currentMode === 'guenstig' ? 'Günstig (ca. 35 Werktage)' : 'Schnell (2–10 Werktage)';\n  }\n\n  function setText(sel, val){\n    var el = document.querySelector(sel);\n    if (el) el.textContent = String(val);\n  }\n\n  \/\/ ===== Haupt-Render =====\n  function render(){\n    var vid = currentVariantId();\n    var entry = window.BS24_PROD_STAFFEL \u0026\u0026 window.BS24_PROD_STAFFEL[vid];\n    var tiers = getTiers(entry);\n    var atSchnell = getAtSchnell(entry);\n    var container = document.querySelector('.bs24-prod-staffel');\n    if (!container || !tiers || !tiers.length) return;\n    var qty = currentQty();\n    var multi = isMultiMode(tiers);\n    var activeIdx = pickTierIdx(qty, tiers);\n\n    \/\/ Toggle-Sichtbarkeit + Günstig-Spalte\n    var toggle = container.querySelector('[data-bs24-mode-toggle]');\n    if (toggle) toggle.style.display = multi ? '' : 'none';\n    var guenstigCol = container.querySelector('[data-bs24-col-guenstig]');\n    if (guenstigCol) guenstigCol.style.display = multi ? '' : 'none';\n\n    \/\/ Tabelle rendern\n    var rowsHtml = tiers.map(function(t, idx){\n      var active = idx === activeIdx ? ' class=\"bs24-active\"' : '';\n      var savings = '';\n      if (idx \u003e 0) {\n        var savePct = Math.round((1 - t[1]\/tiers[0][1]) * 100);\n        if (savePct \u003e 0) savings = ' \u003cspan class=\"savings\"\u003e-' + savePct + '%\u003c\/span\u003e';\n      }\n      var guenstigCell = multi ? ('\u003ctd\u003e'+eur(t[2])+'\u003c\/td\u003e') : '';\n      return '\u003ctr'+active+'\u003e'\n        + '\u003ctd\u003eab '+t[0]+' Stk'+savings+'\u003c\/td\u003e'\n        + '\u003ctd\u003e'+eur(t[1])+'\u003c\/td\u003e'\n        + guenstigCell\n        + '\u003c\/tr\u003e';\n    }).join('');\n    container.querySelector('tbody').innerHTML = rowsHtml;\n\n    \/\/ Dein-Preis-Block\n    var unitNetto = unitPriceForState(tiers, qty, currentMode);\n    var totalNetto = unitNetto * qty;\n    var bruttoUnit = unitNetto * (1 + MWST);\n    var bruttoTotal = totalNetto * (1 + MWST);\n    setText('[data-bs24-unit-price]', eur(unitNetto));\n    setText('[data-bs24-unit-2]', eur(unitNetto));\n    setText('[data-bs24-qty]', qty);\n    setText('[data-bs24-total]', eur(totalNetto));\n    setText('[data-bs24-brutto]', eur(bruttoTotal));\n\n    \/\/ Theme-Elemente aktualisieren\n    updateCartButton(totalNetto);\n    updateBruttoDisplay(bruttoUnit);\n    updateNettoDisplay(unitNetto);\n    updateLieferzeitDisplay(atSchnell);\n\n    \/\/ Cart-Property Lieferung setzen\n    updateLieferungInput();\n  }\n\n  \/\/ ===== Initial =====\n  ensureStaffelPosition();\n  render();\n\n  \/\/ MutationObserver: bei Theme-Rerender Staffel wieder an die richtige Stelle ziehen\n  if (window.MutationObserver) {\n    var mo = new MutationObserver(function(){\n      moveStaffelNearCart();\n    });\n    mo.observe(document.body, { childList: true, subtree: true });\n  }\n\n  \/\/ Mode-Toggle-Buttons\n  document.querySelectorAll('[data-bs24-mode-toggle] button').forEach(function(b){\n    b.addEventListener('click', function(){\n      currentMode = b.dataset.mode;\n      document.querySelectorAll('[data-bs24-mode-toggle] button').forEach(function(bb){\n        bb.classList.toggle('active', bb.dataset.mode === currentMode);\n      });\n      render();\n    });\n  });\n\n  \/\/ Re-render bei Variant-\/Mengen-Wechsel\n  document.addEventListener('change', function(e){\n    var t = e.target; if (!t) return;\n    if (t.name === 'id' || t.name === 'quantity') { setTimeout(render, 30); return; }\n    if (t.closest \u0026\u0026 t.closest('form[action*=\"\/cart\/add\"]')) setTimeout(render, 60);\n  });\n  document.addEventListener('input', function(e){\n    var t = e.target;\n    if (t \u0026\u0026 t.name === 'quantity') setTimeout(render, 30);\n  });\n  window.addEventListener('popstate', render);\n\n  \/\/ Polling-Fallback + Lieferzeit-Watchdog (Theme rendert evtl. lazy)\n  var lastVid = currentVariantId();\n  var lastQty = currentQty();\n  setInterval(function(){\n    var v = currentVariantId();\n    var q = currentQty();\n    if (v !== lastVid || q !== lastQty) { lastVid = v; lastQty = q; render(); }\n    \/\/ Lieferzeit auch ohne Variant-Wechsel oft genug ausprobieren,\n    \/\/ falls das Theme das Element spaeter rendert \/ aktualisiert.\n    var entry = window.BS24_PROD_STAFFEL \u0026\u0026 window.BS24_PROD_STAFFEL[v];\n    var atSchnell = getAtSchnell(entry);\n    if (atSchnell) updateLieferzeitDisplay(atSchnell);\n  }, 600);\n\n  \/\/ Mehrfache Initial-Versuche fuer Theme-lazy-Render\n  [200, 700, 1500, 3000, 5000].forEach(function(delay){\n    setTimeout(function(){\n      var entry = window.BS24_PROD_STAFFEL \u0026\u0026 window.BS24_PROD_STAFFEL[currentVariantId()];\n      var atSchnell = getAtSchnell(entry);\n      if (atSchnell) updateLieferzeitDisplay(atSchnell);\n    }, delay);\n  });\n})();\n\u003c\/script\u003e\n\u003cp style=\"font-size:.9rem;color:#666\"\u003eBrauchst Du ein anderes Maß, eine Sondergröße oder eine andere Tragkraft? \u003ca href=\"\/pages\/contact\" style=\"color:#0B61CD\"\u003eBeratung anfragen\u003c\/a\u003e — wir fertigen auf Anfrage.\u003c\/p\u003e","brand":"MantaMESH","offers":[{"title":"1050 mm \/ 885 mm \/ 250 kg","offer_id":56912628711802,"sku":"MM-DGB-std-1050x885-50m100-0250","price":52.1,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 500 kg","offer_id":56912628744570,"sku":"MM-DGB-std-1050x885-50m100-0500","price":54.0,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 750 kg","offer_id":56912628777338,"sku":"MM-DGB-std-1050x885-50m100-0750","price":57.1,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 1000 kg","offer_id":56912628810106,"sku":"MM-DGB-std-1050x885-50m100-1000","price":60.7,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 1250 kg","offer_id":56912628842874,"sku":"MM-DGB-std-1050x885-50m100-1250","price":65.5,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 1500 kg","offer_id":56912628875642,"sku":"MM-DGB-std-1050x885-50m100-1500","price":72.9,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 250 kg","offer_id":56912628908410,"sku":"MM-DGB-std-1050x1335-50m100-0250","price":62.5,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 500 kg","offer_id":56912628941178,"sku":"MM-DGB-std-1050x1335-50m100-0500","price":65.2,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 750 kg","offer_id":56912628973946,"sku":"MM-DGB-std-1050x1335-50m100-0750","price":69.8,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 1000 kg","offer_id":56912629006714,"sku":"MM-DGB-std-1050x1335-50m100-1000","price":74.8,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 1250 kg","offer_id":56912629039482,"sku":"MM-DGB-std-1050x1335-50m100-1250","price":81.7,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 1500 kg","offer_id":56912629072250,"sku":"MM-DGB-std-1050x1335-50m100-1500","price":93.1,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 250 kg","offer_id":56912629105018,"sku":"MM-DGB-std-1100x885-50m100-0250","price":54.7,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 500 kg","offer_id":56912629137786,"sku":"MM-DGB-std-1100x885-50m100-0500","price":57.6,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 750 kg","offer_id":56912629170554,"sku":"MM-DGB-std-1100x885-50m100-0750","price":60.8,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 1000 kg","offer_id":56912629203322,"sku":"MM-DGB-std-1100x885-50m100-1000","price":63.8,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 1250 kg","offer_id":56912629236090,"sku":"MM-DGB-std-1100x885-50m100-1250","price":66.7,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 1500 kg","offer_id":56912629268858,"sku":"MM-DGB-std-1100x885-50m100-1500","price":69.6,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 250 kg","offer_id":56912629301626,"sku":"MM-DGB-std-1100x1335-50m100-0250","price":73.9,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 500 kg","offer_id":56912629334394,"sku":"MM-DGB-std-1100x1335-50m100-0500","price":76.9,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 750 kg","offer_id":56912629367162,"sku":"MM-DGB-std-1100x1335-50m100-0750","price":81.6,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 1000 kg","offer_id":56912629399930,"sku":"MM-DGB-std-1100x1335-50m100-1000","price":84.5,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 1250 kg","offer_id":56912629432698,"sku":"MM-DGB-std-1100x1335-50m100-1250","price":87.5,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 1500 kg","offer_id":56912629465466,"sku":"MM-DGB-std-1100x1335-50m100-1500","price":90.4,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 250 kg","offer_id":56912629498234,"sku":"MM-DGB-std-1200x885-50m100-0250","price":58.7,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 500 kg","offer_id":56912629531002,"sku":"MM-DGB-std-1200x885-50m100-0500","price":62.0,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 750 kg","offer_id":56912629563770,"sku":"MM-DGB-std-1200x885-50m100-0750","price":67.9,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 1000 kg","offer_id":56912629596538,"sku":"MM-DGB-std-1200x885-50m100-1000","price":71.1,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 1250 kg","offer_id":56912629629306,"sku":"MM-DGB-std-1200x885-50m100-1250","price":74.3,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 1500 kg","offer_id":56912629662074,"sku":"MM-DGB-std-1200x885-50m100-1500","price":77.6,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 250 kg","offer_id":56912629694842,"sku":"MM-DGB-std-1200x1335-50m100-0250","price":79.6,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 500 kg","offer_id":56912629727610,"sku":"MM-DGB-std-1200x1335-50m100-0500","price":82.9,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 750 kg","offer_id":56912629760378,"sku":"MM-DGB-std-1200x1335-50m100-0750","price":91.6,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 1000 kg","offer_id":56912629793146,"sku":"MM-DGB-std-1200x1335-50m100-1000","price":94.9,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 1250 kg","offer_id":56912629825914,"sku":"MM-DGB-std-1200x1335-50m100-1250","price":98.1,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 1500 kg","offer_id":56912629858682,"sku":"MM-DGB-std-1200x1335-50m100-1500","price":101.3,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0921\/8306\/9050\/files\/padded_f0417d79-52c3-4616-a70d-cc499d6690d8.png?v=1779470380","url":"https:\/\/betriebsschutz24.com\/products\/drahtgitterboden-standard-50x100","provider":"Betriebsschutz24","version":"1.0","type":"link"}