{"product_id":"drahtgitterboden-doubledeep-25x100","title":"Drahtgitterboden Double-Deep 25×100 mm — 50 mm Traverse — MantaMESH","description":"\n\u003cp\u003e\u003cstrong\u003eDrahtgitterboden Doppeltief\u003c\/strong\u003e für Palettenregale, Maschenweite 25 × 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. Doppeltief-Variante (Back-to-Back): symmetrische 4-Balken-Bauweise für Doppelpalettenplätze (Gesamttiefe = 2 × Regaltiefe).\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: 25 × 100 mm\u003c\/li\u003e\n\u003cli\u003eTrägerprofil: BOX 50 mm, 4-Balken Back-to-Back symmetrisch\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, {\"56912632447354\": {\"t\": [[1, 130.0, 117.2], [12, 69.5, 56.7], [96, 65.4, 52.6], [288, 64.9, 52.2], [504, 62.3, 50.1], [1008, 59.8, 48.0]], \"a\": 10}, \"56912632480122\": {\"t\": [[1, 139.1, 124.5], [12, 78.6, 64.0], [96, 74.5, 59.9], [288, 74.0, 59.4], [504, 70.4, 56.5], [1008, 68.1, 54.7]], \"a\": 10}, \"56912632512890\": {\"t\": [[1, 139.1, 124.5], [12, 78.6, 64.0], [96, 74.5, 59.9], [288, 74.0, 59.4], [504, 70.4, 56.5], [1008, 68.1, 54.7]], \"a\": 10}, \"56912632545658\": {\"t\": [[1, 148.2, 131.8], [12, 87.7, 71.3], [96, 83.6, 67.2], [288, 81.5, 65.4], [504, 78.2, 62.8], [1008, 76.5, 61.4]], \"a\": 10}, \"56912632578426\": {\"t\": [[1, 166.5, 146.5], [12, 106.0, 86.0], [96, 101.9, 81.8], [288, 98.9, 79.4], [504, 93.9, 75.5], [1008, 91.9, 73.8]], \"a\": 10}, \"56912632611194\": {\"t\": [[1, 180.3, 163.0], [12, 94.8, 77.4], [96, 89.0, 71.6], [288, 86.6, 69.6], [504, 81.4, 65.4], [1008, 79.5, 63.9]], \"a\": 10}, \"56912632643962\": {\"t\": [[1, 189.5, 170.3], [12, 103.9, 84.7], [96, 98.1, 78.9], [288, 94.6, 76.0], [504, 89.8, 72.1], [1008, 87.7, 70.5]], \"a\": 10}, \"56912632676730\": {\"t\": [[1, 189.5, 170.3], [12, 103.9, 84.7], [96, 98.1, 78.9], [288, 94.6, 76.0], [504, 89.8, 72.1], [1008, 87.7, 70.5]], \"a\": 10}, \"56912632709498\": {\"t\": [[1, 198.6, 177.6], [12, 113.1, 92.0], [96, 107.2, 86.2], [288, 102.4, 82.2], [504, 98.2, 78.8], [1008, 96.0, 77.0]], \"a\": 10}, \"56912632742266\": {\"t\": [[1, 216.9, 192.2], [12, 131.4, 106.7], [96, 125.5, 100.8], [288, 119.0, 95.6], [504, 115.2, 92.5], [1008, 110.1, 88.4]], \"a\": 10}, \"56912632775034\": {\"t\": [[1, 135.1, 121.9], [12, 72.2, 58.9], [96, 67.8, 54.6], [288, 67.4, 54.1], [504, 64.7, 52.0], [1008, 62.0, 49.8]], \"a\": 10}, \"56912632807802\": {\"t\": [[1, 144.7, 129.6], [12, 81.7, 66.6], [96, 77.4, 62.3], [288, 75.4, 60.6], [504, 72.4, 58.2], [1008, 70.8, 56.9]], \"a\": 10}, \"56912632840570\": {\"t\": [[1, 144.7, 129.6], [12, 81.7, 66.6], [96, 77.4, 62.3], [288, 75.4, 60.6], [504, 72.4, 58.2], [1008, 70.8, 56.9]], \"a\": 10}, \"56912632873338\": {\"t\": [[1, 154.3, 137.2], [12, 91.3, 74.2], [96, 87.0, 70.0], [288, 84.8, 68.1], [504, 79.7, 64.0], [1008, 78.0, 62.6]], \"a\": 10}, \"56912632906106\": {\"t\": [[1, 173.5, 152.6], [12, 110.5, 89.6], [96, 106.2, 85.3], [288, 102.0, 81.9], [504, 97.9, 78.6], [1008, 95.7, 76.9]], \"a\": 10}, \"56912632938874\": {\"t\": [[1, 187.5, 169.5], [12, 98.3, 80.3], [96, 92.2, 74.2], [288, 88.8, 71.4], [504, 84.4, 67.8], [1008, 82.4, 66.2]], \"a\": 10}, \"56912632971642\": {\"t\": [[1, 197.1, 177.2], [12, 107.9, 88.0], [96, 101.8, 81.9], [288, 98.2, 78.8], [504, 93.2, 74.8], [1008, 91.1, 73.2]], \"a\": 10}, \"56912633004410\": {\"t\": [[1, 197.1, 177.2], [12, 107.9, 88.0], [96, 101.8, 81.9], [288, 98.2, 78.8], [504, 93.2, 74.8], [1008, 91.1, 73.2]], \"a\": 10}, \"56912633037178\": {\"t\": [[1, 206.7, 184.8], [12, 117.5, 95.7], [96, 111.4, 89.6], [288, 106.4, 85.4], [504, 102.0, 81.9], [1008, 97.6, 78.3]], \"a\": 10}, \"56912633069946\": {\"t\": [[1, 225.8, 200.2], [12, 136.7, 111.0], [96, 130.6, 104.9], [288, 123.8, 99.4], [504, 119.8, 96.2], [1008, 114.6, 92.0]], \"a\": 10}, \"56912633102714\": {\"t\": [[1, 146.4, 131.9], [12, 78.4, 64.0], [96, 73.8, 59.4], [288, 73.3, 58.9], [504, 69.7, 56.0], [1008, 67.4, 54.2]], \"a\": 10}, \"56912633135482\": {\"t\": [[1, 156.8, 140.3], [12, 88.9, 72.4], [96, 84.3, 67.8], [288, 82.1, 66.0], [504, 78.8, 63.3], [1008, 77.1, 61.9]], \"a\": 10}, \"56912633168250\": {\"t\": [[1, 167.4, 148.8], [12, 99.4, 80.8], [96, 94.8, 76.2], [288, 91.5, 73.4], [504, 86.8, 69.7], [1008, 84.9, 68.2]], \"a\": 10}, \"56912633201018\": {\"t\": [[1, 177.8, 157.1], [12, 109.9, 89.2], [96, 105.3, 84.6], [288, 101.2, 81.3], [504, 97.1, 78.0], [1008, 95.0, 76.3]], \"a\": 10}, \"56912633233786\": {\"t\": [[1, 188.4, 165.5], [12, 120.4, 97.6], [96, 115.8, 93.0], [288, 111.2, 89.3], [504, 106.8, 85.8], [1008, 102.1, 82.0]], \"a\": 10}, \"56912633266554\": {\"t\": [[1, 203.2, 183.7], [12, 106.8, 87.2], [96, 100.2, 80.6], [288, 96.5, 77.6], [504, 91.6, 73.6], [1008, 89.6, 72.0]], \"a\": 10}, \"56912633299322\": {\"t\": [[1, 213.8, 192.1], [12, 117.3, 95.6], [96, 110.7, 89.0], [288, 105.6, 84.8], [504, 101.3, 81.4], [1008, 96.9, 77.8]], \"a\": 10}, \"56912633332090\": {\"t\": [[1, 224.3, 200.5], [12, 127.8, 104.0], [96, 121.2, 97.5], [288, 114.9, 92.3], [504, 111.2, 89.3], [1008, 106.2, 85.3]], \"a\": 10}, \"56912633364858\": {\"t\": [[1, 234.8, 208.9], [12, 138.3, 112.4], [96, 131.7, 105.8], [288, 124.9, 100.3], [504, 120.8, 97.0], [1008, 115.6, 92.8]], \"a\": 10}, \"56912633397626\": {\"t\": [[1, 245.2, 217.3], [12, 148.8, 120.8], [96, 142.2, 114.2], [288, 133.5, 107.2], [504, 130.7, 105.0], [1008, 125.0, 100.4]], \"a\": 10}});\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":56912632447354,"sku":"MM-DGB-dd-1050x885-25m100-0250","price":130.0,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 500 kg","offer_id":56912632480122,"sku":"MM-DGB-dd-1050x885-25m100-0500","price":139.1,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 750 kg","offer_id":56912632512890,"sku":"MM-DGB-dd-1050x885-25m100-0750","price":139.1,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 1000 kg","offer_id":56912632545658,"sku":"MM-DGB-dd-1050x885-25m100-1000","price":148.2,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 885 mm \/ 1250 kg","offer_id":56912632578426,"sku":"MM-DGB-dd-1050x885-25m100-1250","price":166.5,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 250 kg","offer_id":56912632611194,"sku":"MM-DGB-dd-1050x1335-25m100-0250","price":180.3,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 500 kg","offer_id":56912632643962,"sku":"MM-DGB-dd-1050x1335-25m100-0500","price":189.5,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 750 kg","offer_id":56912632676730,"sku":"MM-DGB-dd-1050x1335-25m100-0750","price":189.5,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 1000 kg","offer_id":56912632709498,"sku":"MM-DGB-dd-1050x1335-25m100-1000","price":198.6,"currency_code":"EUR","in_stock":true},{"title":"1050 mm \/ 1335 mm \/ 1250 kg","offer_id":56912632742266,"sku":"MM-DGB-dd-1050x1335-25m100-1250","price":216.9,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 250 kg","offer_id":56912632775034,"sku":"MM-DGB-dd-1100x885-25m100-0250","price":135.1,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 500 kg","offer_id":56912632807802,"sku":"MM-DGB-dd-1100x885-25m100-0500","price":144.7,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 750 kg","offer_id":56912632840570,"sku":"MM-DGB-dd-1100x885-25m100-0750","price":144.7,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 1000 kg","offer_id":56912632873338,"sku":"MM-DGB-dd-1100x885-25m100-1000","price":154.3,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 885 mm \/ 1250 kg","offer_id":56912632906106,"sku":"MM-DGB-dd-1100x885-25m100-1250","price":173.5,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 250 kg","offer_id":56912632938874,"sku":"MM-DGB-dd-1100x1335-25m100-0250","price":187.5,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 500 kg","offer_id":56912632971642,"sku":"MM-DGB-dd-1100x1335-25m100-0500","price":197.1,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 750 kg","offer_id":56912633004410,"sku":"MM-DGB-dd-1100x1335-25m100-0750","price":197.1,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 1000 kg","offer_id":56912633037178,"sku":"MM-DGB-dd-1100x1335-25m100-1000","price":206.7,"currency_code":"EUR","in_stock":true},{"title":"1100 mm \/ 1335 mm \/ 1250 kg","offer_id":56912633069946,"sku":"MM-DGB-dd-1100x1335-25m100-1250","price":225.8,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 250 kg","offer_id":56912633102714,"sku":"MM-DGB-dd-1200x885-25m100-0250","price":146.4,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 500 kg","offer_id":56912633135482,"sku":"MM-DGB-dd-1200x885-25m100-0500","price":156.8,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 750 kg","offer_id":56912633168250,"sku":"MM-DGB-dd-1200x885-25m100-0750","price":167.4,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 1000 kg","offer_id":56912633201018,"sku":"MM-DGB-dd-1200x885-25m100-1000","price":177.8,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 885 mm \/ 1250 kg","offer_id":56912633233786,"sku":"MM-DGB-dd-1200x885-25m100-1250","price":188.4,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 250 kg","offer_id":56912633266554,"sku":"MM-DGB-dd-1200x1335-25m100-0250","price":203.2,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 500 kg","offer_id":56912633299322,"sku":"MM-DGB-dd-1200x1335-25m100-0500","price":213.8,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 750 kg","offer_id":56912633332090,"sku":"MM-DGB-dd-1200x1335-25m100-0750","price":224.3,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 1000 kg","offer_id":56912633364858,"sku":"MM-DGB-dd-1200x1335-25m100-1000","price":234.8,"currency_code":"EUR","in_stock":true},{"title":"1200 mm \/ 1335 mm \/ 1250 kg","offer_id":56912633397626,"sku":"MM-DGB-dd-1200x1335-25m100-1250","price":245.2,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0921\/8306\/9050\/files\/padded_5a7e917b-dee8-4fd3-af62-6a7c2a7800db.png?v=1779470033","url":"https:\/\/betriebsschutz24.com\/products\/drahtgitterboden-doubledeep-25x100","provider":"Betriebsschutz24","version":"1.0","type":"link"}