﻿{"id":31510,"date":"2025-04-22T07:06:16","date_gmt":"2025-04-22T07:06:16","guid":{"rendered":"https:\/\/gobelka.com\/de\/?page_id=31510"},"modified":"2025-10-15T14:04:27","modified_gmt":"2025-10-15T14:04:27","slug":"belka-mix-naturtapete-diy-farbgestaltung","status":"publish","type":"page","link":"https:\/\/gobelka.com\/de\/belka-mix-naturtapete-diy-farbgestaltung\/","title":{"rendered":"Belka Mix"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"31510\" class=\"elementor elementor-31510\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0f10f0d e-con-full wd-section-stretch-content e-flex e-con e-parent\" data-id=\"0f10f0d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-59e070b elementor-widget elementor-widget-html\" data-id=\"59e070b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\n    <section class=\"belka-hero-section\">\n        <div class=\"belka-container\">\n            <div class=\"belka-hero-grid\">\n                <div class=\"belka-hero-content\">\n                    <!-- Added colorful gradient badge -->\n                    <div class=\"belka-badge belka-gradient-badge\">\n                        <i class=\"fas fa-leaf\"><\/i>\n                        <span>100% Nat\u00fcrlich<\/span>\n                    <\/div>\n                    \n                    <h1 class=\"belka-hero-title\">K\u00fcnstlerischer Touch f\u00fcr Ihre W\u00e4nde mit <span class=\"belka-highlight\">Belka Mix<\/span><\/h1>\n                    \n                    <p class=\"belka-hero-description\">\n                        Belka Mix erm\u00f6glicht es Ihnen, mit seiner nat\u00fcrlichen Baumwollstruktur 2, 3, 4 und 5 verschiedene Farben\n                        zu kombinieren und einzigartige Wandbeschichtungen zu erstellen. Verleihen Sie Ihrem Zuhause\n                        einen speziellen, k\u00fcnstlerischen und langlebigen Touch.\n                    <\/p>\n                    \n                    <!-- Enhanced buttons with more vibrant colors -->\n                    <div class=\"belka-button-group\">\n                        <a href=\"#create-mix\" class=\"belka-button belka-primary belka-gradient-button\">\n                            <i class=\"fas fa-bolt\"><\/i>\n                            <span>Mach deinen eigenen Mix<\/span>\n                        <\/a>\n                        <a href=\"#preparation\" class=\"belka-button belka-outline belka-colorful-outline\">\n                            <i class=\"fas fa-info-circle\"><\/i>\n                            <span>Anwendungsanleitung<\/span>\n                        <\/a>\n                    <\/div>\n                    \n                    <!-- Added colorful feature icons -->\n                    <div class=\"belka-features\">\n                        <div class=\"belka-feature\">\n                            <div class=\"belka-feature-icon belka-green-icon\">\n                                <i class=\"fas fa-seedling\"><\/i>\n                            <\/div>\n                            <span>100% nat\u00fcrliche Baumwolle<\/span>\n                        <\/div>\n                        <div class=\"belka-feature\">\n                            <div class=\"belka-feature-icon belka-blue-icon\">\n                                <i class=\"fas fa-magic\"><\/i>\n                            <\/div>\n                            <span>Einfache Anwendung<\/span>\n                        <\/div>\n                        <div class=\"belka-feature\">\n                            <div class=\"belka-feature-icon belka-purple-icon\">\n                                <i class=\"fas fa-shield-alt\"><\/i>\n                            <\/div>\n                            <span>\u00dcber 10 Jahre Haltbarkeit<\/span>\n                        <\/div>\n                    <\/div>\n\n                    <!-- Added customer testimonials section -->\n                    <div class=\"belka-testimonials\">\n                        <div class=\"belka-testimonial\">\n                            <div class=\"belka-testimonial-stars\">\n                                <i class=\"fas fa-star\"><\/i>\n                                <i class=\"fas fa-star\"><\/i>\n                                <i class=\"fas fa-star\"><\/i>\n                                <i class=\"fas fa-star\"><\/i>\n                                <i class=\"fas fa-star\"><\/i>\n                            <\/div>\n                            <p>\"Fantastisches Produkt! Meine W\u00e4nde sehen jetzt wie Kunstwerke aus.\"<\/p>\n                            <span class=\"belka-testimonial-author\">- Maria K.<\/span>\n                        <\/div>\n                    <\/div>\n                <\/div>\n                \n                <div class=\"belka-hero-visual\">\n                    <div class=\"belka-image-container\">\n                        <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-belka-tapete.jpg\"\n                            alt=\"Belka Mix Wandbeschichtungsbeispiel\" class=\"belka-hero-image\">\n                        <div class=\"belka-image-overlay\"><\/div>\n                    <\/div>\n                    \n                    <!-- Enhanced rating card with more colorful design -->\n                    <div class=\"belka-rating-card belka-colorful-rating\">\n                        <div class=\"belka-stars\">\n                            <i class=\"fas fa-star\"><\/i>\n                            <i class=\"fas fa-star\"><\/i>\n                            <i class=\"fas fa-star\"><\/i>\n                            <i class=\"fas fa-star\"><\/i>\n                            <i class=\"fas fa-star\"><\/i>\n                        <\/div>\n                        <div class=\"belka-rating-text\">4.9\/5<\/div>\n                        <div class=\"belka-rating-count\">\u00dcber 230 Bewertungen<\/div>\n                        <div class=\"belka-rating-badge\">Bestseller<\/div>\n                    <\/div>\n                    \n                    <!-- Added more colorful floating badges -->\n                    <div class=\"belka-floating-badge belka-floating-badge-1 belka-orange-badge\">\n                        <i class=\"fas fa-palette\"><\/i>\n                        <span>5+ Farben<\/span>\n                    <\/div>\n                    \n                    <div class=\"belka-floating-badge belka-floating-badge-2 belka-teal-badge\">\n                        <i class=\"fas fa-clock\"><\/i>\n                        <span>Schnell trocknend<\/span>\n                    <\/div>\n\n                    <div class=\"belka-floating-badge belka-floating-badge-3 belka-pink-badge\">\n                        <i class=\"fas fa-heart\"><\/i>\n                        <span>Kundenliebling<\/span>\n                    <\/div>\n\n                    <!-- Added color palette showcase -->\n                    <div class=\"belka-color-palette\">\n                        <div class=\"belka-color-title\">Verf\u00fcgbare Farben:<\/div>\n                        <div class=\"belka-colors\">\n                            <div class=\"belka-color\" style=\"background: #e74c3c;\"><\/div>\n                            <div class=\"belka-color\" style=\"background: #3498db;\"><\/div>\n                            <div class=\"belka-color\" style=\"background: #2ecc71;\"><\/div>\n                            <div class=\"belka-color\" style=\"background: #f39c12;\"><\/div>\n                            <div class=\"belka-color\" style=\"background: #9b59b6;\"><\/div>\n                            <div class=\"belka-color-more\">+10<\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Added animated background elements -->\n        <div class=\"belka-bg-elements\">\n            <div class=\"belka-bg-circle belka-bg-circle-1\"><\/div>\n            <div class=\"belka-bg-circle belka-bg-circle-2\"><\/div>\n            <div class=\"belka-bg-circle belka-bg-circle-3\"><\/div>\n        <\/div>\n    <\/section>\n    \n    <script>document.addEventListener(\"DOMContentLoaded\", () => {\n  \/\/ Smooth scroll for anchor links\n  const anchorLinks = document.querySelectorAll('a[href^=\"#\"]')\n\n  anchorLinks.forEach((link) => {\n    link.addEventListener(\"click\", function (e) {\n      e.preventDefault()\n      const targetId = this.getAttribute(\"href\")\n      const targetElement = document.querySelector(targetId)\n\n      if (targetElement) {\n        targetElement.scrollIntoView({\n          behavior: \"smooth\",\n          block: \"start\",\n        })\n      }\n    })\n  })\n\n  \/\/ Intersection Observer for animations\n  const observerOptions = {\n    threshold: 0.1,\n    rootMargin: \"0px 0px -50px 0px\",\n  }\n\n  const observer = new IntersectionObserver((entries) => {\n    entries.forEach((entry) => {\n      if (entry.isIntersecting) {\n        entry.target.style.animationPlayState = \"running\"\n      }\n    })\n  }, observerOptions)\n\n  \/\/ Observe animated elements\n  const animatedElements = document.querySelectorAll('[class*=\"belka-fade\"], [class*=\"belka-float\"]')\n  animatedElements.forEach((el) => {\n    el.style.animationPlayState = \"paused\"\n    observer.observe(el)\n  })\n\n  let ticking = false\n\n  function updateParallax() {\n    const scrolled = window.pageYOffset\n    const parallaxElements = document.querySelectorAll(\".belka-floating-badge\")\n    const bgElements = document.querySelectorAll(\".belka-bg-circle\")\n\n    parallaxElements.forEach((element, index) => {\n      const speed = 0.5 + index * 0.2\n      const yPos = -(scrolled * speed)\n      element.style.transform = `translateY(${yPos}px)`\n    })\n\n    \/\/ Background circles parallax\n    bgElements.forEach((element, index) => {\n      const speed = 0.1 + index * 0.05\n      const yPos = scrolled * speed\n      element.style.transform = `translateY(${yPos}px) rotate(${scrolled * 0.1}deg)`\n    })\n\n    ticking = false\n  }\n\n  function requestTick() {\n    if (!ticking) {\n      requestAnimationFrame(updateParallax)\n      ticking = true\n    }\n  }\n\n  window.addEventListener(\"scroll\", requestTick)\n\n  const buttons = document.querySelectorAll(\".belka-button\")\n\n  buttons.forEach((button) => {\n    button.addEventListener(\"mouseenter\", function () {\n      this.style.transform = \"translateY(-3px) scale(1.02)\"\n      this.style.boxShadow = \"0 15px 25px -5px rgba(0, 0, 0, 0.2)\"\n    })\n\n    button.addEventListener(\"mouseleave\", function () {\n      this.style.transform = \"translateY(0) scale(1)\"\n      this.style.boxShadow = \"\"\n    })\n\n    \/\/ Click animation\n    button.addEventListener(\"click\", function (e) {\n      const ripple = document.createElement(\"span\")\n      const rect = this.getBoundingClientRect()\n      const size = Math.max(rect.width, rect.height)\n      const x = e.clientX - rect.left - size \/ 2\n      const y = e.clientY - rect.top - size \/ 2\n\n      ripple.style.cssText = `\n        position: absolute;\n        width: ${size}px;\n        height: ${size}px;\n        left: ${x}px;\n        top: ${y}px;\n        background: rgba(255, 255, 255, 0.3);\n        border-radius: 50%;\n        transform: scale(0);\n        animation: belka-ripple 0.6s ease-out;\n        pointer-events: none;\n      `\n\n      this.appendChild(ripple)\n      setTimeout(() => ripple.remove(), 600)\n    })\n  })\n\n  const colorElements = document.querySelectorAll(\".belka-color\")\n\n  colorElements.forEach((color) => {\n    color.addEventListener(\"mouseenter\", function () {\n      this.style.transform = \"scale(1.3)\"\n      this.style.boxShadow = \"0 4px 12px rgba(0, 0, 0, 0.3)\"\n    })\n\n    color.addEventListener(\"mouseleave\", function () {\n      this.style.transform = \"scale(1)\"\n      this.style.boxShadow = \"0 2px 4px rgba(0, 0, 0, 0.1)\"\n    })\n  })\n\n  \/\/ Image lazy loading and error handling\n  const heroImage = document.querySelector(\".belka-hero-image\")\n\n  if (heroImage) {\n    heroImage.addEventListener(\"load\", function () {\n      this.style.opacity = \"1\"\n    })\n\n    heroImage.addEventListener(\"error\", function () {\n      this.src = \"\/belka-mix-wall-coating-example.png\"\n      this.alt = \"Belka Mix Wandbeschichtung Beispiel\"\n    })\n  }\n\n  const ratingCard = document.querySelector(\".belka-rating-card\")\n  const stars = document.querySelectorAll(\".belka-stars i\")\n\n  if (ratingCard) {\n    setTimeout(() => {\n      ratingCard.style.opacity = \"1\"\n      ratingCard.style.transform = \"translateY(0)\"\n\n      \/\/ Animate stars filling up\n      stars.forEach((star, index) => {\n        setTimeout(() => {\n          star.style.color = \"#ffd700\"\n          star.style.transform = \"scale(1.2)\"\n          setTimeout(() => {\n            star.style.transform = \"scale(1)\"\n          }, 200)\n        }, index * 100)\n      })\n    }, 1000)\n  }\n\n  const testimonialText = document.querySelector(\".belka-testimonial p\")\n\n  if (testimonialText) {\n    const originalText = testimonialText.textContent\n    testimonialText.textContent = \"\"\n\n    setTimeout(() => {\n      let i = 0\n      const typeWriter = () => {\n        if (i < originalText.length) {\n          testimonialText.textContent += originalText.charAt(i)\n          i++\n          setTimeout(typeWriter, 50)\n        }\n      }\n      typeWriter()\n    }, 2000)\n  }\n\n  const floatingBadges = document.querySelectorAll(\".belka-floating-badge\")\n\n  floatingBadges.forEach((badge) => {\n    badge.addEventListener(\"mouseenter\", function () {\n      this.style.transform = \"translateY(-5px) rotate(5deg) scale(1.05)\"\n    })\n\n    badge.addEventListener(\"mouseleave\", function () {\n      this.style.transform = \"translateY(0) rotate(0deg) scale(1)\"\n    })\n  })\n\n  const gradientElements = document.querySelectorAll(\".belka-gradient-badge, .belka-gradient-button\")\n\n  gradientElements.forEach((element) => {\n    element.addEventListener(\"mouseenter\", function () {\n      this.style.animationDuration = \"1s\"\n    })\n\n    element.addEventListener(\"mouseleave\", function () {\n      this.style.animationDuration = \"3s\"\n    })\n  })\n\n  const featureIcons = document.querySelectorAll(\".belka-feature-icon\")\n\n  const featureObserver = new IntersectionObserver(\n    (entries) => {\n      entries.forEach((entry, index) => {\n        if (entry.isIntersecting) {\n          setTimeout(() => {\n            entry.target.style.animation = \"belka-pulse 0.6s ease-out\"\n          }, index * 200)\n        }\n      })\n    },\n    { threshold: 0.5 },\n  )\n\n  featureIcons.forEach((icon) => {\n    featureObserver.observe(icon)\n  })\n\n  \/\/ Console debug for development\n  console.log(\"[v0] Belka Mix enhanced hero section initialized\")\n  console.log(\"[v0] Animated elements found:\", animatedElements.length)\n  console.log(\"[v0] Buttons initialized:\", buttons.length)\n  console.log(\"[v0] Color elements initialized:\", colorElements.length)\n  console.log(\"[v0] Floating badges initialized:\", floatingBadges.length)\n})\n\nconst style = document.createElement(\"style\")\nstyle.textContent = `\n  @keyframes belka-ripple {\n    to {\n      transform: scale(2);\n      opacity: 0;\n    }\n  }\n  \n  @keyframes belka-pulse {\n    0% { transform: scale(1); }\n    50% { transform: scale(1.2); }\n    100% { transform: scale(1); }\n  }\n`\ndocument.head.appendChild(style)\n<\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"wd-negative-gap elementor-section elementor-top-section elementor-element elementor-element-371661b wd-section-stretch-content elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"371661b\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7cba464\" data-id=\"7cba464\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-74f62d2 elementor-widget elementor-widget-html\" data-id=\"74f62d2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\r\n\r\n    <!-- Collections Section -->\r\n    <section id=\"collections\" class=\"collections-section\">\r\n        <div class=\"container\">\r\n            <div class=\"section-header\">\r\n                <h2>Unsere speziellen Designkollektionen<\/h2>\r\n                <p>\r\n                    Jede Kollektion besteht aus vier verschiedenen Belka Mix-Farben, die harmonisch miteinander\r\n                    kombiniert wurden. Mit diesen Kombinationen k\u00f6nnen Sie in verschiedenen Bereichen Ihres Hauses eine\r\n                    einzigartige Atmosph\u00e4re schaffen.\r\n                <\/p>\r\n            <\/div>\r\n\r\n            <div class=\"tabs\">\r\n                <div class=\"tab-list\">\r\n                    <button class=\"tab-button active\" data-tab=\"akdeniz\">Mittelmeer-Brise<\/button>\r\n                    <button class=\"tab-button\" data-tab=\"nordik\">Nordische Ruhe<\/button>\r\n                    <button class=\"tab-button\" data-tab=\"bohem\">Bohemian Dream<\/button>\r\n                    <button class=\"tab-button\" data-tab=\"modern\">Moderne Eleganz<\/button>\r\n                <\/div>\r\n\r\n                <div class=\"tab-content active\" id=\"akdeniz-content\">\r\n                    <div class=\"collection-card\">\r\n                        <div class=\"collection-images\">\r\n                            <div class=\"main-image\">\r\n                                <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-mittelmeer-Brise-4.jpg\"\r\n                                    alt=\"Mittelmeer-Brise\r\nDiese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume.\">\r\n                            <\/div>\r\n                            <div class=\"detail-images\">\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-mittelmeer-Brise-3.jpg\"\r\n                                        alt=\"MMittelmeer-Brise\r\nDiese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume. \">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-mittelmeer-Brise-2.jpg\"\r\n                                        alt=\"MMittelmeer-Brise\r\nDiese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-mittelmeer-Brise-1.jpg\"\r\n                                        alt=\"MMittelmeer-Brise\r\nDiese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-mittelmeer-Brise.jpg\"\r\n                                        alt=\"MMittelmeer-Brise\r\nDiese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume.\">\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        <div class=\"collection-info\">\r\n                            <h3>Mittelmeer-Brise<\/h3>\r\n                            <p>\r\n                                Diese Kollektion bringt die warme und frische Atmosph\u00e4re des Mittelmeers in Ihr Zuhause\r\n                                und besteht aus einer harmonischen Kombination von Blau- und Beiget\u00f6nen. Bringen Sie die\r\n                                beruhigende Energie von Meer, Sand und Himmel in Ihre Wohnr\u00e4ume.\r\n                            <\/p>\r\n                            <div class=\"collection-badges\">\r\n                                <span class=\"badge small\">Frisch<\/span>\r\n                                <span class=\"badge small\">Ruhig<\/span>\r\n                                <span class=\"badge small\">Nat\u00fcrlich<\/span>\r\n                            <\/div>\r\n                            <div class=\"collection-colors\">\r\n                                <h4>Kollektionsfarben<\/h4>\r\n                                <div class=\"color-grid\">\r\n                                    <div class=\"color-item\" data-product-id=\"10024\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #4f5d82;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B45<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9832\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #83a4c7;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B55<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9868\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #c9c2ba;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B11<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9738\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #e0dfdd;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B5<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <div class=\"collection-actions\">\r\n                                <!-- Add summary row for total price and m\u00b2 -->\r\n                                <div class=\"collection-summary\"\r\n                                    style=\"display:flex;justify-content:space-between;margin-bottom:0.5rem;font-weight:500;flex-direction: column;\">\r\n                                    <span>\r\n                                        Gesamtpreis: <span class=\"collection-total-price\">0,00&nbsp;\u20ac<\/span>\r\n                                    <\/span>\r\n                                    <span>\r\n                                        Gesamtfl\u00e4che: <span class=\"collection-total-m2\">0&nbsp;m\u00b2<\/span>\r\n                                    <\/span>\r\n                                <\/div>\r\n                                <button class=\"button primary\">\r\n                                    <i class=\"fas fa-shopping-cart\"><\/i>\r\n                                    In den Warenkorb\r\n                                <\/button>\r\n                            <\/div>\r\n                            <a href=\"https:\/\/gobelka.com\/de\/belka-alle-produkte\/\" class=\"link-button\">\r\n                                Farben einzeln kaufen\r\n                                <i class=\"fas fa-arrow-right\"><\/i>\r\n                            <\/a>\r\n\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"tab-content\" id=\"nordik-content\">\r\n                    <div class=\"collection-card\">\r\n                        <div class=\"collection-images\">\r\n                            <div class=\"main-image\">\r\n                                <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-nordische-ruhe-5-1.jpg\"\r\n                                    alt=\"Nordische Ruhe\r\nDiese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem Sie eine friedliche Umgebung w\u00fcnschen.\">\r\n                            <\/div>\r\n                            <div class=\"detail-images\">\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-nordische-ruhe-3-1.jpg\"\r\n                                        alt=\"Nordische Ruhe\r\nDiese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem Sie eine friedliche Umgebung w\u00fcnschen.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-nordische-ruhe-2-1.jpg\"\r\n                                        alt=\"Nordische Ruhe\r\nDiese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem Sie eine friedliche Umgebung w\u00fcnschen.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-nordische-ruhe-1-1.jpg\"\r\n                                        alt=\"Nordische Ruhe\r\nDiese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem Sie eine friedliche Umgebung w\u00fcnschen.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-nordische-ruhe-4.jpg\"\r\n                                        alt=\"Nordische Ruhe\r\nDiese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem Sie eine friedliche Umgebung w\u00fcnschen.\">\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        <div class=\"collection-info\">\r\n                            <h3>Nordische Ruhe<\/h3>\r\n                            <p>\r\n                                Diese Kollektion ist von der minimalistischen \u00c4sthetik Skandinaviens inspiriert. Mit\r\n                                einer Palette aus k\u00fchlen Grau-, Wei\u00df- und Blaut\u00f6nen schafft sie eine ruhige und\r\n                                entspannende Atmosph\u00e4re. Perfekt f\u00fcr Schlafzimmer, Arbeitszimmer oder jeden Raum, in dem\r\n                                Sie eine friedliche Umgebung w\u00fcnschen.\r\n                            <\/p>\r\n                            <div class=\"collection-badges\">\r\n                                <span class=\"badge small\">Minimalistisch<\/span>\r\n                                <span class=\"badge small\">Beruhigend<\/span>\r\n                                <span class=\"badge small\">Zeitlos<\/span>\r\n                            <\/div>\r\n                            <div class=\"collection-colors\">\r\n                                <h4>Kollektionsfarben<\/h4>\r\n                                <div class=\"color-grid\">\r\n                                    <div class=\"color-item\" data-product-id=\"10100\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #8ea9c4;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B42<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9916\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #aeaeae;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B50<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"10072\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #d7e2da;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B44<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9738\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #dfdedc;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B5<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <div class=\"collection-actions\">\r\n                                <!-- Add summary row for total price and m\u00b2 -->\r\n                                <div class=\"collection-summary\"\r\n                                    style=\"display:flex;justify-content:space-between;margin-bottom:0.5rem;font-weight:500;flex-direction: column;\">\r\n                                    <span>\r\n                                        Gesamtpreis: <span class=\"collection-total-price\">0,00&nbsp;\u20ac<\/span>\r\n                                    <\/span>\r\n                                    <span>\r\n                                        Gesamtfl\u00e4che: <span class=\"collection-total-m2\">0&nbsp;m\u00b2<\/span>\r\n                                    <\/span>\r\n                                <\/div>\r\n                                <button class=\"button primary\">\r\n                                    <i class=\"fas fa-shopping-cart\"><\/i>\r\n                                    In den Warenkorb\r\n                                <\/button>\r\n\r\n                            <\/div>\r\n                            <a href=\"https:\/\/gobelka.com\/de\/belka-alle-produkte\/\" class=\"link-button\">\r\n                                Farben einzeln kaufen\r\n                                <i class=\"fas fa-arrow-right\"><\/i>\r\n                            <\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"tab-content\" id=\"bohem-content\">\r\n                    <div class=\"collection-card\">\r\n                        <div class=\"collection-images\">\r\n                            <div class=\"main-image\">\r\n                                <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-bohemian-dream-1.jpg\"\r\n                                    alt=\"Bohemian Dream\r\nDiese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause. Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative R\u00e4ume.\">\r\n                            <\/div>\r\n                            <div class=\"detail-images\">\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-bohemian-dream.jpg\"\r\n                                        alt=\"Bohemian Dream\r\nDiese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause. Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative R\u00e4ume.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-bohemian-dream-2.jpg\"\r\n                                        alt=\"Bohemian Dream\r\nDiese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause. Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative R\u00e4ume.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-bohemian-dream-4.jpg\"\r\n                                        alt=\"Bohemian Dream\r\nDiese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause. Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative R\u00e4ume.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-tapete-mix-bohemian-dream-3.jpg\"\r\n                                        alt=\"Bohemian Dream\r\nDiese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause. Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative R\u00e4ume.\">\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        <div class=\"collection-info\">\r\n                            <h3>Bohemian Dream<\/h3>\r\n                            <p>\r\n                                Diese lebendige Kollektion bringt die W\u00e4rme und Energie des Boho-Stils in Ihr Zuhause.\r\n                                Mit einer Mischung aus warmen Terrakotta-, Rost- und Violettt\u00f6nen schafft sie eine\r\n                                gem\u00fctliche, k\u00fcnstlerische Atmosph\u00e4re. Ideal f\u00fcr Wohnzimmer, Esszimmer oder kreative\r\n                                R\u00e4ume.\r\n                            <\/p>\r\n                            <div class=\"collection-badges\">\r\n                                <span class=\"badge small\">Lebendig<\/span>\r\n                                <span class=\"badge small\">K\u00fcnstlerisch<\/span>\r\n                                <span class=\"badge small\">Warm<\/span>\r\n                            <\/div>\r\n                            <div class=\"collection-colors\">\r\n                                <h4>Kollektionsfarben<\/h4>\r\n                                <div class=\"color-grid\">\r\n                                    <div class=\"color-item\" data-product-id=\"9726\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #a89269;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B2<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9742\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #728c8b;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B60<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9734\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #dfd5c9;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B4<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"10028\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #af5938;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B18<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <div class=\"collection-actions\">\r\n                                <!-- Add summary row for total price and m\u00b2 -->\r\n                                <div class=\"collection-summary\"\r\n                                    style=\"display:flex;justify-content:space-between;margin-bottom:0.5rem;font-weight:500;flex-direction: column;\">\r\n                                    <span>\r\n                                        Gesamtpreis: <span class=\"collection-total-price\">0,00&nbsp;\u20ac<\/span>\r\n                                    <\/span>\r\n                                    <span>\r\n                                        Gesamtfl\u00e4che: <span class=\"collection-total-m2\">0&nbsp;m\u00b2<\/span>\r\n                                    <\/span>\r\n                                <\/div>\r\n                                <button class=\"button primary\">\r\n                                    <i class=\"fas fa-shopping-cart\"><\/i>\r\n                                    In den Warenkorb\r\n                                <\/button>\r\n                            <\/div>\r\n                            <a href=\"https:\/\/gobelka.com\/de\/belka-alle-produkte\/\" class=\"link-button\">\r\n                                Farben einzeln kaufen\r\n                                <i class=\"fas fa-arrow-right\"><\/i>\r\n                            <\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"tab-content\" id=\"modern-content\">\r\n                    <div class=\"collection-card\">\r\n                        <div class=\"collection-images\">\r\n                            <div class=\"main-image\">\r\n                                <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-tapete-moderne-eleganz-3.jpg\"\r\n                                    alt=\"Moderne Eleganz\r\nDiese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\">\r\n                            <\/div>\r\n                            <div class=\"detail-images\">\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-tapete-moderne-eleganz-4.jpg\"\r\n                                        alt=\"Moderne Eleganz\r\nDiese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-tapete-moderne-eleganz.jpg\"\r\n                                        alt=\"Moderne Eleganz\r\nDiese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-tapete-moderne-eleganz-2.jpg\"\r\n                                        alt=\"Moderne Eleganz\r\nDiese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\">\r\n                                <\/div>\r\n                                <div class=\"detail-image\">\r\n                                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/belka-mix-tapete-moderne-eleganz-1.jpg\"\r\n                                        alt=\"Moderne Eleganz\r\nDiese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\">\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        <div class=\"collection-info\">\r\n                            <h3>Moderne Eleganz<\/h3>\r\n                            <p>\r\n                                Diese luxuri\u00f6se Kollektion verk\u00f6rpert zeitgen\u00f6ssische Eleganz mit einer Palette aus\r\n                                Schwarz, Wei\u00df, Grau und Gold. Sie schafft eine raffinierte und stilvolle Atmosph\u00e4re, die\r\n                                perfekt f\u00fcr moderne Wohnr\u00e4ume, B\u00fcros oder Empfangsbereiche geeignet ist.\r\n                            <\/p>\r\n                            <div class=\"collection-badges\">\r\n                                <span class=\"badge small\">Luxuri\u00f6s<\/span>\r\n                                <span class=\"badge small\">Zeitgen\u00f6ssisch<\/span>\r\n                                <span class=\"badge small\">Raffiniert<\/span>\r\n                            <\/div>\r\n                            <div class=\"collection-colors\">\r\n                                <h4>Kollektionsfarben<\/h4>\r\n                                <div class=\"color-grid\">\r\n                                    <div class=\"color-item\" data-product-id=\"9996\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #4a5364;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B46<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9916\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #b2b2b2;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B50<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9738\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #e1e0de;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B5<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                        <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                        <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n                                    <\/div>\r\n                                    <div class=\"color-item\" data-product-id=\"9722\">\r\n                                        <div class=\"color-item-header\">\r\n                                            <div class=\"color-swatch\" style=\"background-color: #d6c79c;\"><\/div>\r\n                                            <div class=\"color-info\">\r\n                                                <p class=\"color-name\">B1<\/p>\r\n                                                <p class=\"color-price\">32.00 \u20ac<\/p>\r\n                                            <\/div>\r\n                                            <div class=\"color-package-options\">\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '1kg', '32.00')\">1kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '3kg', '89.00')\">3kg<\/button>\r\n                                                <button class=\"package-option\"\r\n                                                    onclick=\"selectPackage(this, '5kg', '140.00')\">5kg<\/button>\r\n                                            <\/div>\r\n                                            <div class=\"quantity-controlsx\">\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, -1)\"\r\n                                                    disabled>\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                    <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                    <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                                <span class=\"quantity\">1<\/span>\r\n                                                <button class=\"quantity-button\" onclick=\"updateQuantity(this, 1)\">\r\n                                                    <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n                                                        stroke=\"currentColor\" stroke-width=\"2\">\r\n                                                    <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                                                    <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n                                                    <\/svg>\r\n                                                <\/button>\r\n                                            <\/div>\r\n                                        <\/div>\r\n\r\n\r\n                                    <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <div class=\"collection-actions\">\r\n                                <!-- Add summary row for total price and m\u00b2 -->\r\n                                <div class=\"collection-summary\"\r\n                                    style=\"display:flex;justify-content:space-between;margin-bottom:0.5rem;font-weight:500;flex-direction: column;\">\r\n                                    <span>\r\n                                        Gesamtpreis: <span class=\"collection-total-price\">0,00&nbsp;\u20ac<\/span>\r\n                                    <\/span>\r\n                                    <span>\r\n                                        Gesamtfl\u00e4che: <span class=\"collection-total-m2\">0&nbsp;m\u00b2<\/span>\r\n                                    <\/span>\r\n                                <\/div>\r\n                                <button class=\"button primary\">\r\n                                    <i class=\"fas fa-shopping-cart\"><\/i>\r\n                                    In den Warenkorb\r\n                                <\/button>\r\n                            <\/div>\r\n                            <a href=\"https:\/\/gobelka.com\/de\/belka-alle-produkte\/\" class=\"link-button\">\r\n                                Farben einzeln kaufen\r\n                                <i class=\"fas fa-arrow-right\"><\/i>\r\n                            <\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n\r\n    <!-- Create Your Own Mix Section -->\r\n    <section id=\"create-mix\" class=\"create-mix-section\">\r\n        <div class=\"container\">\r\n            <div class=\"section-header\">\r\n                <h2>Erstellen Sie Ihre eigene Belka Mix-Kombination<\/h2>\r\n                <p>\r\n                    Sie k\u00f6nnen aus 60 verschiedenen Belka-Farben w\u00e4hlen und Ihre eigene einzigartige Kombination\r\n                    erstellen.\r\n                    Mischen Sie die Farben und schaffen Sie eine spezielle Atmosph\u00e4re f\u00fcr Ihr Zuhause.\r\n                <\/p>\r\n            <\/div>\r\n\r\n            <div>\r\n                \t\t\t<link rel=\"stylesheet\" id=\"elementor-post-35530-css\" href=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/elementor\/css\/post-35530.css?ver=1774938720\" type=\"text\/css\" media=\"all\">\n\t\t\t\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"35530\" class=\"elementor elementor-35530\" data-elementor-post-type=\"cms_block\">\n\t\t\t\t\t\t<section class=\"wd-negative-gap elementor-section elementor-top-section elementor-element elementor-element-ebeb15d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ebeb15d\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f303649\" data-id=\"f303649\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-fbd3779 elementor-widget elementor-widget-html\" data-id=\"fbd3779\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\r\n    \/\/ Color Mask App JavaScript\r\n(function() {\r\n  'use strict';\r\n\r\n  \/\/ State\r\n  let state = {\r\n    colorCount: 2,\r\n    selectedProducts: [null, null],\r\n    hiddenProducts: [],\r\n    includeMineralProduct: false,\r\n    selectedMineralProduct: null,\r\n    isProcessing: false,\r\n    mixLevel: \"low\",\r\n    resultImage: null,\r\n    zoomLevel: 1,\r\n    isFullscreen: false,\r\n    currentStep: 1,\r\n    currentSearchBox: null,\r\n    searchQuery: ''\r\n  };\r\n\r\n  \/\/ Example data - Initialize arrays before fetch\r\n  const exampleProducts = [];\r\n  const exampleMineralProducts = [\r\n    {\r\n      id: 15014,\r\n      name: \"Belka Lumika Wei\u00df\",\r\n      image: \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/beyaz.jpeg\",\r\n      price: 32,\r\n      variation_id: 15016,\r\n      m2: 0\r\n    },\r\n    {\r\n      id: 14998,\r\n      name: \"Belka Lumika Gold\",\r\n      image: \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/mineral.jpeg\",\r\n      price: 32,\r\n      variation_id: 15001,\r\n      m2: 0\r\n    }\r\n  ];\r\n\r\n  \/\/ Masking variables\r\n  const maskVariables = {\r\n    \"2_low\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2.jpg\",\r\n    ],\r\n    \"2_high\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2.jpg\",\r\n    ],\r\n    \"3_low\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-1.jpg\", \r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3.jpg\",\r\n    ],\r\n    \"3_high\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-1.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3.jpg\",\r\n    ],\r\n    \"4_low\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-2.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3-1.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/4.jpg\"\r\n    ],\r\n    \"4_high\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-2.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3-1.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/4.jpg\"\r\n    ],\r\n    \"5_low\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/1.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-3.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3-2.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/5.jpg\",\r\n    ],\r\n    \"5_high\": [\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/1.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/2-3.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/3-2.jpg\",\r\n      \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/5.jpg\",\r\n    ],\r\n    mineral: {\r\n      \"gold\": \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/10\/lumika-mineralsteine-mask.jpg\",\r\n      \"weib\": \"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/10\/lumika-mineralsteine-mask.jpg\"\r\n    }\r\n  };\r\n\r\n  \/\/ Now do the fetch\r\n  fetch('https:\/\/gobelka.com\/de\/wp-admin\/admin-ajax.php?action=get_custom_woocommerce_products')\r\n    .then(res => res.json())\r\n    .then(data => {\r\n      exampleProducts.length = 0; \/\/ Clear existing products\r\n      data.forEach(product => {\r\n        const variations = product.variations.filter(v =>\r\n          ['1kg', '3kg', '5kg'].includes(v.attributes.pa_packmass)\r\n        );\r\n\r\n        if (variations.length > 0) {\r\n          const oneKgVariation = variations.find(v => v.attributes.pa_packmass === \"1kg\");\r\n\r\n          exampleProducts.push({\r\n            id: product.id,\r\n            name: product.name,\r\n            price: parseFloat(oneKgVariation ? oneKgVariation.price : variations[0].price),\r\n            color: product.color,\r\n            m2: oneKgVariation ? 3 : (variations[0].attributes.pa_packmass === '3kg' ? 9 : 15),\r\n            bestseller: product.bestseller,\r\n            category: product.category,\r\n            image: product.image,\r\n            hasStock: oneKgVariation ? oneKgVariation.is_in_stock : variations[0].is_in_stock,\r\n            variations: variations.map(v => ({\r\n              id: v.id,\r\n              price: parseFloat(v.price),\r\n              packageSize: v.attributes.pa_packmass,\r\n              m2: v.attributes.pa_packmass === '1kg' ? 3 : (v.attributes.pa_packmass === '3kg' ? 9 : 15),\r\n              is_in_stock: v.is_in_stock,\r\n              stock_quantity: v.stock_quantity\r\n            }))\r\n          });\r\n        }\r\n      });\r\n    });\r\n\r\n  \/\/ Utility functions\r\n  function isMobile() {\r\n    return window.innerWidth < 768;\r\n  }\r\n\r\n  function isTablet() {\r\n    return window.innerWidth >= 768 && window.innerWidth < 1024;\r\n  }\r\n\r\n  function isDesktop() {\r\n    return window.innerWidth >= 1024;\r\n  }\r\n\r\n  \/\/ Tutorial System\r\n  const tutorialSteps = [\r\n    {\r\n      element: '.color-count-section',\r\n      title: 'Farbauswahl',\r\n      description: 'W\u00e4hlen Sie die Anzahl der Farben aus, die Sie in Ihrem Design verwenden m\u00f6chten.',\r\n      position: 'bottom'\r\n    },\r\n    {\r\n      element: '.product-boxes',\r\n      title: 'Produkte hinzuf\u00fcgen',\r\n      description: 'F\u00fcgen Sie Ihre gew\u00fcnschten Farben hinzu, indem Sie auf \"Produkt w\u00e4hlen\" klicken.',\r\n      position: 'bottom'\r\n    },\r\n    {\r\n      element: '.mineral-option',\r\n      title: 'Mineralstein-Option',\r\n      description: 'Optional k\u00f6nnen Sie auch ein Mineralstein-Produkt zu Ihrem Design hinzuf\u00fcgen.',\r\n      position: 'top'\r\n    },\r\n    {\r\n      element: '.result-section',\r\n      title: 'Vorschau',\r\n      description: 'Hier sehen Sie eine Vorschau Ihres Designs in Echtzeit.',\r\n      position: 'left'\r\n    },\r\n       {\r\n      element: '.summary-section',\r\n      title: 'Zusammenfassung',\r\n      description: 'W\u00e4hlen Sie hier die gew\u00fcnschte Menge in kg aus und f\u00fcgen Sie Ihr Design dem Warenkorb hinzu.',\r\n      position: 'left'\r\n    }\r\n  ];\r\n\r\n  let currentTutorialStep = 0;\r\n\r\n  \/\/ Make all tutorial functions globally accessible\r\n  window.startTutorial = function() {\r\n    \/\/ Don't show tutorial on mobile\r\n    if (isMobile()) return;\r\n\r\n    \/\/ Sadece burada tutorialCompleted kontrol\u00fc, set edilmesi yok!\r\n    if (localStorage.getItem('tutorialCompleted')) return;\r\n\r\n    \/\/ Ekle: tutorialCompleted burada da set ediliyor\r\n    localStorage.setItem('tutorialCompleted', 'true');\r\n\r\n    currentTutorialStep = 0;\r\n    const overlay = document.getElementById('tutorial-overlay');\r\n    overlay.classList.remove('hidden');\r\n    showTutorialStep();\r\n  };\r\n\r\n  window.closeTutorial = function() {\r\n    const overlay = document.getElementById('tutorial-overlay');\r\n    overlay.classList.add('hidden');\r\n\r\n    \/\/ Remove event listeners\r\n    if (overlay.dataset.scrollHandler) {\r\n      window.removeEventListener('scroll', overlay.dataset.scrollHandler);\r\n      overlay.dataset.scrollHandler = '';\r\n    }\r\n    if (overlay.dataset.resizeHandler) {\r\n      window.removeEventListener('resize', overlay.dataset.resizeHandler);\r\n      overlay.dataset.resizeHandler = '';\r\n    }\r\n\r\n    \/\/ Sadece burada tutorialCompleted set ediliyor\r\n    localStorage.setItem('tutorialCompleted', 'true');\r\n    \/\/ Scroll pozisyonu de\u011fi\u015ftirilmez!\r\n  };\r\n\r\n  window.nextTutorialStep = function() {\r\n    if (currentTutorialStep === tutorialSteps.length - 1) {\r\n      window.closeTutorial();\r\n      return;\r\n    }\r\n    currentTutorialStep++;\r\n    showTutorialStep();\r\n  };\r\n\r\n  window.prevTutorialStep = function() {\r\n    if (currentTutorialStep > 0) {\r\n      currentTutorialStep--;\r\n      showTutorialStep();\r\n    }\r\n  };\r\n\r\n  \/\/ Keep showTutorialStep and positionTutorialElements as private functions\r\n  function showTutorialStep() {\r\n    const step = tutorialSteps[currentTutorialStep];\r\n    const targetElement = document.querySelector(step.element);\r\n    if (!targetElement) return;\r\n\r\n    const overlay = document.getElementById('tutorial-overlay');\r\n    const highlight = overlay.querySelector('.tutorial-highlight');\r\n    const tooltip = overlay.querySelector('.tutorial-tooltip');\r\n\r\n    \/\/ Update tooltip content\r\n    overlay.querySelector('.tutorial-title').textContent = step.title;\r\n    overlay.querySelector('.tutorial-description').textContent = step.description;\r\n\r\n    \/\/ Scroll flag: sadece bir kez scroll yap\u0131lmas\u0131n\u0131 sa\u011flamak i\u00e7in\r\n    if (!overlay._scrolledStep) overlay._scrolledStep = {};\r\n\r\n    function updatePositions() {\r\n      const rect = targetElement.getBoundingClientRect();\r\n      const viewportHeight = window.innerHeight;\r\n      const viewportWidth = window.innerWidth;\r\n\r\n      \/\/ Check if element is in viewport\r\n      const isInViewport = (\r\n        rect.top >= 0 &&\r\n        rect.bottom <= viewportHeight &&\r\n        rect.left >= 0 &&\r\n        rect.right <= viewportWidth\r\n      );\r\n\r\n      \/\/ Sadece ilk kez scroll yap\u0131lacak \u015fekilde ayarla\r\n      if (!isInViewport && !overlay.classList.contains('hidden') && !overlay._scrolledStep[currentTutorialStep]) {\r\n        const y = rect.top + window.pageYOffset - 40;\r\n        window.scrollTo({ top: y, behavior: 'smooth' });\r\n        overlay._scrolledStep[currentTutorialStep] = true;\r\n      }\r\n\r\n      \/\/ Position highlight\r\n      highlight.style.position = 'fixed';\r\n      highlight.style.top = `${rect.top}px`;\r\n      highlight.style.left = `${rect.left}px`;\r\n      highlight.style.width = `${rect.width}px`;\r\n      highlight.style.height = `${rect.height}px`;\r\n\r\n      \/\/ Calculate tooltip position\r\n      const tooltipRect = tooltip.getBoundingClientRect();\r\n      let tooltipTop, tooltipLeft;\r\n\r\n      switch (step.position) {\r\n        case 'top':\r\n          tooltipTop = rect.top - tooltipRect.height - 10;\r\n          tooltipLeft = rect.left + (rect.width - tooltipRect.width) \/ 2;\r\n          break;\r\n        case 'bottom':\r\n          tooltipTop = rect.bottom + 10;\r\n          tooltipLeft = rect.left + (rect.width - tooltipRect.width) \/ 2;\r\n          break;\r\n        case 'left':\r\n          tooltipTop = rect.top + (rect.height - tooltipRect.height) \/ 2;\r\n          tooltipLeft = rect.left - tooltipRect.width - 10;\r\n          break;\r\n        case 'right':\r\n          tooltipTop = rect.top + (rect.height - tooltipRect.height) \/ 2;\r\n          tooltipLeft = rect.right + 10;\r\n          break;\r\n      }\r\n\r\n      \/\/ Keep tooltip within viewport bounds\r\n      tooltipTop = Math.max(10, Math.min(viewportHeight - tooltipRect.height - 10, tooltipTop));\r\n      tooltipLeft = Math.max(10, Math.min(viewportWidth - tooltipRect.width - 10, tooltipLeft));\r\n\r\n      \/\/ Apply tooltip position\r\n      tooltip.style.position = 'fixed';\r\n      tooltip.style.top = `${tooltipTop}px`;\r\n      tooltip.style.left = `${tooltipLeft}px`;\r\n    }\r\n\r\n    \/\/ Initial position update\r\n    updatePositions();\r\n\r\n    \/\/ Update positions on scroll and resize\r\n    const scrollHandler = () => {\r\n      requestAnimationFrame(updatePositions);\r\n    };\r\n\r\n    const resizeHandler = () => {\r\n      requestAnimationFrame(updatePositions);\r\n    };\r\n\r\n    \/\/ Remove previous event listeners if they exist\r\n    window.removeEventListener('scroll', scrollHandler);\r\n    window.removeEventListener('resize', resizeHandler);\r\n\r\n    \/\/ Add new event listeners\r\n    window.addEventListener('scroll', scrollHandler, { passive: true });\r\n    window.addEventListener('resize', resizeHandler, { passive: true });\r\n\r\n    \/\/ Store event listeners to remove them later\r\n    overlay.dataset.scrollHandler = scrollHandler;\r\n    overlay.dataset.resizeHandler = resizeHandler;\r\n  }\r\n\r\n  \/\/ Add scroll event listener to update positions\r\n  window.addEventListener('scroll', () => {\r\n    if (!document.getElementById('tutorial-overlay').classList.contains('hidden')) {\r\n      showTutorialStep();\r\n    }\r\n  }, { passive: true });\r\n\r\n  \/\/ Initialize app\r\n  function init() {\r\n    updateLayout();\r\n    renderProductBoxes();\r\n    updateStepDisplay();\r\n    \r\n    \/\/ Add window resize listener\r\n    window.addEventListener('resize', updateLayout);\r\n    \r\n    \/\/ Only setup tutorial on desktop\r\n    if (!isMobile()) {\r\n      setupTutorial();\r\n    }\r\n  }\r\n\r\n  function setupTutorial() {\r\n    if (localStorage.getItem('tutorialCompleted')) return;\r\n\r\n    const observer = new IntersectionObserver((entries) => {\r\n      entries.forEach(entry => {\r\n        if (entry.isIntersecting) {\r\n          startTutorial();\r\n          observer.disconnect(); \/\/ Only trigger once\r\n        }\r\n      });\r\n    }, {\r\n      threshold: 0.1 \/\/ Start when 10% of main-content is visible\r\n    });\r\n\r\n    \/\/ Start observing main-content\r\n    const mainContent = document.querySelector('.summary-section');\r\n    if (mainContent) {\r\n      observer.observe(mainContent);\r\n    }\r\n  }\r\n\r\n  \/\/ Update layout based on screen size\r\n  function updateLayout() {\r\n    const sections = document.querySelectorAll('.section');\r\n    \r\n    if (isMobile()) {\r\n      \/\/ Mobile: show only current step\r\n      sections.forEach((section, index) => {\r\n        section.classList.toggle('active', index + 1 === state.currentStep);\r\n      });\r\n    } else {\r\n      \/\/ Desktop\/Tablet: show all sections\r\n      sections.forEach(section => {\r\n        section.classList.add('active');\r\n      });\r\n    }\r\n  }\r\n\r\n  \/\/ Update step display\r\n  function updateStepDisplay() {\r\n    \/\/ Update progress steps\r\n    const steps = document.querySelectorAll('.step');\r\n    const progressBars = document.querySelectorAll('.step-progress');\r\n    \r\n    steps.forEach((step, index) => {\r\n      if (index + 1 <= state.currentStep) {\r\n        step.classList.add('active');\r\n        \/\/ Add selected class for current step\r\n        if (index + 1 === state.currentStep) {\r\n          step.classList.add('selected');\r\n        } else {\r\n          step.classList.remove('selected');\r\n        }\r\n      } else {\r\n        step.classList.remove('active', 'selected');\r\n      }\r\n    });\r\n    \r\n    progressBars.forEach((bar, index) => {\r\n      bar.style.width = index + 2 <= state.currentStep ? '100%' : '0%';\r\n    });\r\n\r\n    \/\/ Show\/hide mobile next button\r\n    const nextBtn = document.querySelector('.mobile-next-btn');\r\n    const selectedProducts = state.selectedProducts.filter(p => p !== null);\r\n    const selectedCount = selectedProducts.length;\r\n    \r\n    if (nextBtn) {\r\n      if (isMobile() && selectedCount >= 2 && state.currentStep === 1) {\r\n        nextBtn.style.display = 'flex';\r\n        nextBtn.innerHTML = 'Weiter zum Ergebnis';\r\n        nextBtn.onclick = () => {\r\n          state.currentStep = 2;\r\n          updateLayout();\r\n          updateStepDisplay();\r\n          \/\/ Scroll to mobile header with offset\r\n          const mobileHeader = document.querySelector('.mobile-header');\r\n          if (mobileHeader) {\r\n            const headerTop = mobileHeader.getBoundingClientRect().top + window.pageYOffset - 450;\r\n            window.scrollTo({ top: headerTop, behavior: 'smooth' });\r\n          }\r\n        };\r\n      } else {\r\n        nextBtn.style.display = 'none';\r\n      }\r\n    }\r\n\r\n    updateLayout();\r\n  }\r\n\r\n  \/\/ Handle color count change\r\n  window.handleColorCountChange = function(count) {\r\n    state.colorCount = count;\r\n    \r\n    \/\/ Update button states\r\n    document.querySelectorAll('.count-btn').forEach(btn => {\r\n      btn.classList.toggle('active', parseInt(btn.dataset.count) === count);\r\n    });\r\n    \r\n    \/\/ Resize selected products array\r\n    const newSelectedProducts = Array(count).fill(null);\r\n    for (let i = 0; i < Math.min(count, state.selectedProducts.length); i++) {\r\n      newSelectedProducts[i] = state.selectedProducts[i];\r\n    }\r\n    state.selectedProducts = newSelectedProducts;\r\n    \r\n    \/\/ Only create initial box if none exist\r\n    const container = document.getElementById('product-boxes');\r\n    if (container && container.children.length === 0) {\r\n      renderProductBoxes();\r\n    }\r\n    \r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Render product boxes\r\n  function renderProductBoxes() {\r\n    const container = document.getElementById('product-boxes');\r\n    if (!container) return;\r\n    \r\n    container.innerHTML = '';\r\n    \r\n    const selectedCount = state.selectedProducts.filter(p => p !== null).length;\r\n    \r\n    \/\/ Always show all boxes up to color count, plus one empty (if under 5)\r\n    const boxesToShow = Math.min(Math.max(selectedCount + 1, state.colorCount), 5);\r\n    \r\n    for (let i = 0; i < boxesToShow; i++) {\r\n      const product = state.selectedProducts[i];\r\n      const box = document.createElement('div');\r\n      box.className = 'product-box';\r\n      box.dataset.index = i;\r\n      \r\n      box.innerHTML = `\r\n        <div class=\"product-box-header\">\r\n          <span class=\"product-box-title\">Farbe ${i + 1}<\/span>\r\n          ${product ? `\r\n            <div class=\"product-actions\">\r\n              <button class=\"btn-outline btn-icon ${state.hiddenProducts.includes(i) ? 'hidden' : ''}\" onclick=\"toggleProductVisibility(${i})\" style=\"border:unset;\">\r\n                <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                  ${state.hiddenProducts.includes(i) ? \r\n                    '<path d=\"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24\"><\/path><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\"><\/line>' :\r\n                    '<path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"><\/path><circle cx=\"12\" cy=\"12\" r=\"3\"><\/circle>'\r\n                  }\r\n                <\/svg>\r\n              <\/button>\r\n              <button class=\"btn-outline btn-icon\" onclick=\"removeProduct(${i})\" style=\"border:unset;\">\r\n                <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                  <polyline points=\"3 6 5 6 21 6\"><\/polyline>\r\n                  <path d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\"><\/path>\r\n                <\/svg>\r\n              <\/button>\r\n            <\/div>\r\n          ` : ''}\r\n        <\/div>\r\n        \r\n        ${product ? `\r\n          <div class=\"product-content\">\r\n            <div class=\"product-image\">\r\n              <img decoding=\"async\" src=\"${product.image}\" alt=\"${product.name.replace(\", Moderne Wandgestaltung\", \"\")}\">\r\n              <button class=\"edit-btn\" onclick=\"openSearchModal(${i})\">\r\n                <svg width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                  <path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path>\r\n                  <path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path>\r\n                <\/svg>\r\n              <\/button>\r\n            <\/div>\r\n            <div class=\"product-info\">\r\n              <div class=\"product-name\">${product.name.replace(\", Moderne Wandgestaltung\", \"\")}<\/div>\r\n              <div class=\"product-price\">\r\n                ${product.variations.some(v => v.is_in_stock) \r\n                  ? `${product.price.toFixed(2)} \u20ac - ${product.m2} m\u00b2`\r\n                  : '<span style=\"color: red;\">Nicht auf Lager<\/span>'\r\n                }\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        ` : `\r\n          <div class=\"product-placeholder\">\r\n            <button class=\"add-product-btn\" onclick=\"openSearchModal(${i})\">\r\n              <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n              <\/svg>\r\n              Produkt w\u00e4hlen\r\n            <\/button>\r\n          <\/div>\r\n        `}\r\n      `;\r\n      \r\n      container.appendChild(box);\r\n    }\r\n  }\r\n\r\n  \/\/ Toggle mineral product\r\n  window.toggleMineralProduct = function() {\r\n    const checkbox = document.getElementById('include-mineral');\r\n    const mineralBox = document.getElementById('mineral-product-box');\r\n    \r\n    state.includeMineralProduct = checkbox.checked;\r\n    mineralBox.style.display = checkbox.checked ? 'block' : 'none';\r\n    \r\n    if (checkbox.checked) {\r\n      renderMineralProductBox();\r\n    } else {\r\n      state.selectedMineralProduct = null;\r\n      state.hiddenProducts = state.hiddenProducts.filter(id => id !== 'mineral');\r\n    }\r\n    \r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Render mineral product box\r\n  function renderMineralProductBox() {\r\n    const container = document.getElementById('mineral-product-box');\r\n    if (!container) return;\r\n    \r\n    const product = state.selectedMineralProduct;\r\n    \r\n    container.innerHTML = `\r\n      <div class=\"product-box-header\">\r\n        <span class=\"product-box-title\">Mineralstein<\/span>\r\n        ${product ? `\r\n          <div class=\"product-actions\">\r\n            <button class=\"btn-outline btn-icon ${state.hiddenProducts.includes('mineral') ? 'hidden' : ''}\" onclick=\"toggleProductVisibility('mineral')\">\r\n              <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                ${state.hiddenProducts.includes('mineral') ? \r\n                  '<path d=\"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24\"><\/path><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\"><\/line>' :\r\n                  '<path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"><\/path><circle cx=\"12\" cy=\"12\" r=\"3\"><\/circle>'\r\n                }\r\n              <\/svg>\r\n            <\/button>\r\n            <button class=\"btn-outline btn-icon\" onclick=\"removeMineralProduct()\">\r\n              <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <polyline points=\"3 6 5 6 21 6\"><\/polyline>\r\n                <path d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2 2h4a2 2 0 0 1 2 2v2\"><\/path>\r\n              <\/svg>\r\n            <\/button>\r\n          <\/div>\r\n        ` : ''}\r\n      <\/div>\r\n      \r\n      ${product ? `\r\n        <div class=\"product-content\">\r\n          <img decoding=\"async\" src=\"${product.image}\" alt=\"${product.name}\" style=\"width: 4rem; height: 4rem; object-fit: cover; border-radius: 6px;\">\r\n          <div class=\"product-info\">\r\n            <div class=\"product-name\">${product.name}<\/div>\r\n            <div class=\"product-price\">${product.price} \u20ac<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      ` : `\r\n        <div class=\"product-placeholder\">\r\n          <button class=\"add-product-btn\" onclick=\"openSearchModal('mineral')\">\r\n            <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n              <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n            <\/svg>\r\n            Mineralstein w\u00e4hlen\r\n          <\/button>\r\n        <\/div>\r\n      `}\r\n    `;\r\n  }\r\n\r\n  \/\/ Open search modal\r\n  window.openSearchModal = function(boxIndex) {\r\n    state.currentSearchBox = boxIndex;\r\n    state.searchQuery = '';\r\n    \r\n    const modal = document.getElementById('search-modal');\r\n    const modalTitle = document.getElementById('modal-title');\r\n    const searchInput = document.getElementById('search-input');\r\n    \r\n    if (boxIndex === 'mineral') {\r\n      modalTitle.textContent = 'Mineralstein Produkt';\r\n    } else {\r\n      modalTitle.textContent = `Farbe ${boxIndex + 1} w\u00e4hlen`;\r\n    }\r\n    \r\n    modal.classList.add('active');\r\n    searchInput.value = '';\r\n    searchInput.focus();\r\n    \r\n    renderProductList();\r\n  };\r\n\r\n  \/\/ Close search modal\r\n  window.closeSearchModal = function() {\r\n    const modal = document.getElementById('search-modal');\r\n    modal.classList.remove('active');\r\n    state.currentSearchBox = null;\r\n  };\r\n\r\n  \/\/ Filter products\r\n  window.filterProducts = function() {\r\n    const searchInput = document.getElementById('search-input');\r\n    state.searchQuery = searchInput.value;\r\n    renderProductList();\r\n  };\r\n\r\n  \/\/ Render product list in modal\r\n  function renderProductList() {\r\n    const container = document.getElementById('product-list');\r\n    if (!container) return;\r\n    \r\n    let products;\r\n    if (state.currentSearchBox === 'mineral') {\r\n      products = exampleMineralProducts.filter(product => \r\n        product.name.toLowerCase().includes(state.searchQuery.toLowerCase())\r\n      );\r\n    } else {\r\n      products = exampleProducts.filter(product => \r\n        product.name.toLowerCase().includes(state.searchQuery.toLowerCase())\r\n      );\r\n    }\r\n    \r\n    if (products.length === 0) {\r\n      container.innerHTML = `\r\n        <div class=\"no-products\">\r\n          ${state.searchQuery ? 'Keine Produkte gefunden' : 'Geben Sie einen Produktnamen ein'}\r\n        <\/div>\r\n      `;\r\n      return;\r\n    }\r\n    \r\n    container.innerHTML = products.map(product => `\r\n      <div class=\"product-item\" onclick=\"selectProduct(${product.id})\">\r\n        <img decoding=\"async\" src=\"${product.image}\" alt=\"${product.name}\">\r\n        <div class=\"product-item-info\">\r\n          <div class=\"product-item-name\">${product.name}<\/div>\r\n          <div class=\"product-item-details\">\r\n            <span>${product.price} \u20ac<\/span>\r\n            ${product.m2 !== undefined ? `<span>${product.m2} m\u00b2<\/span>` : ''}\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    `).join('');\r\n  }\r\n\r\n  \/\/ Select product\r\n  window.selectProduct = function(productId) {\r\n    if (state.currentSearchBox === 'mineral') {\r\n      const product = exampleMineralProducts.find(p => p.id === productId);\r\n      if (product) {\r\n        state.selectedMineralProduct = product;\r\n        renderMineralProductBox();\r\n        checkForMaskApplication(); \/\/ Add this line to trigger masking\r\n      }\r\n    } else {\r\n      const product = exampleProducts.find(p => p.id === productId);\r\n      if (product) {\r\n        const productCopy = JSON.parse(JSON.stringify(product));\r\n        \r\n        const oneKgVariation = productCopy.variations.find(v => v.packageSize === '1kg' && v.is_in_stock);\r\n        \r\n        if (oneKgVariation) {\r\n          productCopy.selectedPackageSize = '1kg';\r\n          productCopy.price = parseFloat(oneKgVariation.price);\r\n          productCopy.m2 = 3;\r\n          productCopy.quantity = 1;\r\n        } else {\r\n          const firstAvailableVariation = productCopy.variations.find(v => v.is_in_stock);\r\n          if (firstAvailableVariation) {\r\n            productCopy.selectedPackageSize = firstAvailableVariation.packageSize;\r\n            productCopy.price = parseFloat(firstAvailableVariation.price);\r\n            productCopy.m2 = firstAvailableVariation.packageSize === '3kg' ? 9 : 15;\r\n            productCopy.quantity = 1;\r\n          }\r\n        }\r\n        \r\n        state.selectedProducts[state.currentSearchBox] = productCopy;\r\n        \r\n        \/\/ Count filled boxes\r\n        const filledBoxes = state.selectedProducts.filter(p => p !== null).length;\r\n        \r\n        \/\/ Always update color count to match filled boxes (including 5)\r\n        if (filledBoxes >= 2) {\r\n          state.colorCount = filledBoxes;\r\n          \/\/ Update color button states\r\n          document.querySelectorAll('.count-btn').forEach(btn => {\r\n            btn.classList.toggle('active', parseInt(btn.dataset.count) === filledBoxes);\r\n          });\r\n        }\r\n        \r\n        renderProductBoxes();\r\n        renderSelectedProducts();\r\n        updateTotals();\r\n        updateStepDisplay(); \/\/ Add this line to update button visibility\r\n        checkForMaskApplication();\r\n      }\r\n    }\r\n    \r\n    closeSearchModal();\r\n  };\r\n\r\n  \/\/ Check for mask application - update logic\r\n  function checkForMaskApplication() {\r\n    const selectedCount = state.selectedProducts.filter(product => product !== null).length;\r\n    const hasMineralProduct = state.includeMineralProduct && state.selectedMineralProduct;\r\n    \r\n    if (selectedCount >= 1 || hasMineralProduct) {\r\n      applyMasks();\r\n    } else {\r\n      hideResultImage();\r\n    }\r\n  }\r\n\r\n  \/\/ Toggle product visibility\r\n  window.toggleProductVisibility = function(boxIndex) {\r\n    if (state.hiddenProducts.includes(boxIndex)) {\r\n      state.hiddenProducts = state.hiddenProducts.filter(index => index !== boxIndex);\r\n    } else {\r\n      state.hiddenProducts.push(boxIndex);\r\n    }\r\n    \r\n    renderProductBoxes();\r\n    if (state.includeMineralProduct) {\r\n      renderMineralProductBox();\r\n    }\r\n    renderSelectedProducts();\r\n    updateTotals();\r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Remove product\r\n  window.removeProduct = function(boxIndex) {\r\n    state.selectedProducts[boxIndex] = null;\r\n    state.hiddenProducts = state.hiddenProducts.filter(index => index !== boxIndex);\r\n    renderProductBoxes();\r\n    renderSelectedProducts();\r\n    updateTotals();\r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Remove mineral product\r\n  window.removeMineralProduct = function() {\r\n    state.selectedMineralProduct = null;\r\n    state.hiddenProducts = state.hiddenProducts.filter(index => index !== 'mineral');\r\n    renderMineralProductBox();\r\n    renderSelectedProducts();\r\n    updateTotals();\r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Reset selection\r\n  window.resetSelection = function() {\r\n    state.selectedProducts = Array(2).fill(null);\r\n    state.hiddenProducts = [];\r\n    state.includeMineralProduct = false;\r\n    state.selectedMineralProduct = null;\r\n    state.resultImage = null;\r\n    state.colorCount = 2;\r\n    state.currentStep = 1;\r\n    \r\n    \/\/ Reset UI\r\n    document.querySelectorAll('.count-btn').forEach(btn => {\r\n      btn.classList.toggle('active', parseInt(btn.dataset.count) === 2);\r\n    });\r\n    \r\n    const checkbox = document.getElementById('include-mineral');\r\n    if (checkbox) checkbox.checked = false;\r\n    \r\n    const mineralBox = document.getElementById('mineral-product-box');\r\n    if (mineralBox) mineralBox.style.display = 'none';\r\n    \r\n    renderProductBoxes();\r\n    renderSelectedProducts();\r\n    updateTotals();\r\n    updateStepDisplay();\r\n    hideResultImage();\r\n  };\r\n\r\n  \/\/ Select random products\r\n  window.selectRandomProducts = async function() {\r\n    const newProducts = Array(state.colorCount).fill(null);\r\n    state.hiddenProducts = [];\r\n    \r\n    const availableProducts = exampleProducts.filter(product => \r\n      product.variations.some(v => v.is_in_stock)\r\n    );\r\n    \r\n    if (availableProducts.length === 0) {\r\n      alert('Keine verf\u00fcgbaren Produkte gefunden');\r\n      return;\r\n    }\r\n    \r\n    \/\/ Use state.colorCount instead of hard-coded 2\r\n    for (let i = 0; i < state.colorCount; i++) {\r\n      const randomIndex = Math.floor(Math.random() * availableProducts.length);\r\n      const randomProduct = availableProducts[randomIndex];\r\n      const productCopy = JSON.parse(JSON.stringify(randomProduct));\r\n      \r\n      const oneKgVariation = productCopy.variations.find(v => v.packageSize === '1kg' && v.is_in_stock);\r\n      \r\n      if (oneKgVariation) {\r\n        productCopy.selectedPackageSize = '1kg';\r\n        productCopy.price = parseFloat(oneKgVariation.price);\r\n        productCopy.m2 = 3;\r\n        productCopy.quantity = 1;\r\n      } else {\r\n        const firstAvailableVariation = productCopy.variations.find(v => v.is_in_stock);\r\n        if (firstAvailableVariation) {\r\n          productCopy.selectedPackageSize = firstAvailableVariation.packageSize;\r\n          productCopy.price = parseFloat(firstAvailableVariation.price);\r\n          productCopy.m2 = firstAvailableVariation.packageSize === '3kg' ? 9 : 15;\r\n          productCopy.quantity = 1;\r\n        }\r\n      }\r\n      \r\n      newProducts[i] = productCopy;\r\n      await new Promise(resolve => setTimeout(resolve, 100));\r\n    }\r\n    \r\n    state.selectedProducts = newProducts;\r\n    renderProductBoxes();\r\n    renderSelectedProducts();\r\n    updateTotals();\r\n    updateStepDisplay();\r\n    checkForMaskApplication();\r\n  };\r\n\r\n  \/\/ Navigation functions\r\n  window.nextStep = function() {\r\n    if (state.currentStep < 3) {\r\n      state.currentStep++;\r\n      updateStepDisplay();\r\n      \/\/ Scroll to mobile header with offset on mobile\r\n      if (isMobile()) {\r\n        const mobileHeader = document.querySelector('.mobile-header');\r\n        if (mobileHeader) {\r\n          const headerTop = mobileHeader.getBoundingClientRect().top + window.pageYOffset - 20;\r\n          window.scrollTo({ top: headerTop, behavior: 'smooth' });\r\n        }\r\n      }\r\n    }\r\n  };\r\n\r\n  window.prevStep = function() {\r\n    if (state.currentStep > 1) {\r\n      state.currentStep--;\r\n      updateStepDisplay();\r\n    }\r\n  };\r\n\r\n  \/\/ Check for mask application\r\n  function checkForMaskApplication() {\r\n    const selectedCount = state.selectedProducts.filter(product => product !== null).length;\r\n    const hasMineralProduct = state.includeMineralProduct && state.selectedMineralProduct;\r\n    \r\n    \/\/ Start masking if either:\r\n    \/\/ 1. We have 2 or more regular products\r\n    \/\/ 2. We have at least 1 regular product and a mineral product\r\n    \/\/ 3. We only have a mineral product\r\n    if (selectedCount >= 2 || (selectedCount >= 1 && hasMineralProduct) || hasMineralProduct) {\r\n      applyMasks();\r\n    } else {\r\n      hideResultImage();\r\n    }\r\n  }\r\n\r\n  \/\/ Load image utility function\r\n  function loadImage(src) {\r\n    return new Promise((resolve, reject) => {\r\n      const img = new Image();\r\n      img.crossOrigin = \"anonymous\"; \/\/ Enable CORS\r\n      img.onload = () => resolve(img);\r\n      img.onerror = () => reject(new Error(`Failed to load image: ${src}`));\r\n      img.src = src;\r\n    });\r\n  }\r\n\r\n  \/\/ Apply alpha mask to image\r\n  function applyAlphaMask(image, mask, width, height) {\r\n    const canvas = document.createElement('canvas');\r\n    canvas.width = width;\r\n    canvas.height = height;\r\n    const ctx = canvas.getContext('2d');\r\n\r\n    \/\/ Draw the image\r\n    ctx.drawImage(image, 0, 0, width, height);\r\n\r\n    \/\/ Draw the mask on a separate canvas\r\n    const maskCanvas = document.createElement('canvas');\r\n    maskCanvas.width = width;\r\n    maskCanvas.height = height;\r\n    const maskCtx = maskCanvas.getContext('2d');\r\n    maskCtx.drawImage(mask, 0, 0, width, height);\r\n\r\n    \/\/ Get image data\r\n    const imageData = ctx.getImageData(0, 0, width, height);\r\n    const maskData = maskCtx.getImageData(0, 0, width, height);\r\n\r\n    \/\/ Apply mask\r\n    for (let i = 0; i < imageData.data.length; i += 4) {\r\n      \/\/ Use red channel of mask as alpha\r\n      imageData.data[i + 3] = maskData.data[i];\r\n    }\r\n\r\n    \/\/ Put modified image data back\r\n    ctx.putImageData(imageData, 0, 0);\r\n    return canvas;\r\n  }\r\n\r\n  \/\/ Apply masks\r\n  async function applyMasks() {\r\n    const selectedProducts = state.selectedProducts.filter(product => product !== null);\r\n    const hasMineralProduct = state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral');\r\n\r\n    \/\/ Allow masking to proceed with just a mineral product\r\n    if (selectedProducts.length === 0 && !hasMineralProduct) {\r\n      return;\r\n    }\r\n\r\n    state.isProcessing = true;\r\n    showProcessingOverlay();\r\n\r\n    try {\r\n      const width = 1000;\r\n      const height = 1334;\r\n      const cropBottom = 0;\r\n      const finalHeight = height - cropBottom;\r\n\r\n      \/\/ Load product images\r\n      const productImages = [];\r\n      const visibleProducts = [];\r\n\r\n      for (let i = 0; i < state.selectedProducts.length; i++) {\r\n        if (state.selectedProducts[i] && !state.hiddenProducts.includes(i)) {\r\n          visibleProducts.push({\r\n            index: i,\r\n            product: state.selectedProducts[i]\r\n          });\r\n        }\r\n      }\r\n\r\n      for (const item of visibleProducts) {\r\n        try {\r\n          const img = await loadImage(item.product.image);\r\n          productImages.push({\r\n            index: item.index,\r\n            image: img\r\n          });\r\n        } catch (error) {\r\n          console.error(\"\u00dcr\u00fcn g\u00f6r\u00fcnt\u00fcs\u00fc y\u00fcklenemedi\", error);\r\n          const tempCanvas = document.createElement(\"canvas\");\r\n          tempCanvas.width = width;\r\n          tempCanvas.height = height;\r\n          const tempCtx = tempCanvas.getContext(\"2d\");\r\n          tempCtx.fillStyle = \"white\";\r\n          tempCtx.fillRect(0, 0, width, height);\r\n          productImages.push({\r\n            index: item.index,\r\n            image: await loadImage(tempCanvas.toDataURL())\r\n          });\r\n        }\r\n      }\r\n\r\n      \/\/ Load mineral image if selected\r\n      let mineralImage = null;\r\n      if (state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral')) {\r\n        try {\r\n          mineralImage = await loadImage(state.selectedMineralProduct.image);\r\n        } catch (error) {\r\n          console.error(\"Mineral g\u00f6r\u00fcnt\u00fcs\u00fc y\u00fcklenemedi\", error);\r\n          const tempCanvas = document.createElement(\"canvas\");\r\n          tempCanvas.width = width;\r\n          tempCanvas.height = height;\r\n          const tempCtx = tempCanvas.getContext(\"2d\");\r\n          tempCtx.fillStyle = \"white\";\r\n          tempCtx.fillRect(0, 0, width, height);\r\n          mineralImage = await loadImage(tempCanvas.toDataURL());\r\n        }\r\n      }\r\n\r\n      \/\/ Get masks\r\n      const maskKey = `${state.colorCount}_${state.mixLevel}`;\r\n      const maskList = maskVariables[maskKey];\r\n\r\n      if (!maskList) {\r\n        throw new Error(`Maske bulunamad\u0131: ${maskKey}`);\r\n      }\r\n\r\n      \/\/ Load masks\r\n      const loadedMasks = [];\r\n      for (const maskUrl of maskList) {\r\n        try {\r\n          const mask = await loadImage(maskUrl);\r\n          loadedMasks.push(mask);\r\n        } catch (error) {\r\n          console.error(`Maske y\u00fcklenemedi: ${maskUrl}`, error);\r\n          const tempCanvas = document.createElement(\"canvas\");\r\n          tempCanvas.width = width;\r\n          tempCanvas.height = finalHeight;\r\n          const tempCtx = tempCanvas.getContext(\"2d\");\r\n          tempCtx.fillStyle = \"white\";\r\n          tempCtx.fillRect(0, 0, width, finalHeight);\r\n          loadedMasks.push(await loadImage(tempCanvas.toDataURL()));\r\n        }\r\n      }\r\n\r\n      \/\/ Load mineral mask if needed\r\n      let mineralMaskImage = null;\r\n      if (state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral')) {\r\n        try {\r\n          const mineralType = state.selectedMineralProduct.name.toLowerCase().includes('gold') ? 'gold' : 'weib';\r\n          const maskUrl = maskVariables.mineral[mineralType];\r\n          mineralMaskImage = await loadImage(maskUrl);\r\n        } catch (error) {\r\n          console.error(\"Mineral maskesi y\u00fcklenemedi\", error);\r\n          const tempCanvas = document.createElement(\"canvas\");\r\n          tempCanvas.width = width;\r\n          tempCanvas.height = finalHeight;\r\n          const tempCtx = tempCanvas.getContext(\"2d\");\r\n          tempCtx.fillStyle = \"white\";\r\n          tempCtx.fillRect(0, 0, width, finalHeight);\r\n          mineralMaskImage = await loadImage(tempCanvas.toDataURL());\r\n        }\r\n      }\r\n\r\n      \/\/ Create result canvas\r\n      const resultCanvas = document.createElement(\"canvas\");\r\n      resultCanvas.width = width;\r\n      resultCanvas.height = finalHeight;\r\n      const resultCtx = resultCanvas.getContext(\"2d\");\r\n      if (!resultCtx) throw new Error(\"Canvas context olu\u015fturulamad\u0131\");\r\n\r\n      \/\/ Sort products by index\r\n      productImages.sort((a, b) => a.index - b.index);\r\n\r\n      \/\/ Draw background\r\n      if (productImages.length > 0) {\r\n        resultCtx.drawImage(productImages[0].image, 0, 0, width, finalHeight);\r\n      }\r\n\r\n      \/\/ Apply masks to other products\r\n      for (let i = 1; i < productImages.length; i++) {\r\n        let maskIndex = i - 1;\r\n        if (maskIndex < loadedMasks.length) {\r\n          const masked = applyAlphaMask(productImages[i].image, loadedMasks[maskIndex], width, finalHeight);\r\n          resultCtx.drawImage(masked, 0, 0);\r\n        }\r\n      }\r\n\r\n      \/\/ Apply mineral mask if needed\r\n      if (mineralImage && mineralMaskImage) {\r\n        const masked = applyAlphaMask(mineralImage, mineralMaskImage, width, finalHeight);\r\n        resultCtx.drawImage(masked, 0, 0);\r\n      }\r\n\r\n      \/\/ Set result image\r\n      state.resultImage = resultCanvas.toDataURL(\"image\/png\");\r\n      showResultImage();\r\n\r\n    } catch (error) {\r\n      console.error(\"Maskeleme i\u015flemi s\u0131ras\u0131nda hata olu\u015ftu:\", error);\r\n    } finally {\r\n      state.isProcessing = false;\r\n      hideProcessingOverlay();\r\n    }\r\n  }\r\n\r\n  \/\/ Show\/hide result image\r\n  function showResultImage() {\r\n    const placeholder = document.getElementById('result-placeholder');\r\n    const resultImage = document.getElementById('result-image');\r\n    \r\n    if (placeholder) placeholder.style.display = 'none';\r\n    if (resultImage && state.resultImage) {\r\n      resultImage.src = state.resultImage;\r\n      resultImage.style.display = 'block';\r\n      resultImage.style.transform = `scale(${state.zoomLevel})`;\r\n    }\r\n  }\r\n\r\n  function hideResultImage() {\r\n    const placeholder = document.getElementById('result-placeholder');\r\n    const resultImage = document.getElementById('result-image');\r\n    \r\n    if (placeholder) placeholder.style.display = 'flex';\r\n    if (resultImage) resultImage.style.display = 'none';\r\n    \r\n    state.resultImage = null;\r\n  }\r\n\r\n  \/\/ Show\/hide processing overlay\r\n  function showProcessingOverlay() {\r\n    const overlay = document.getElementById('processing-overlay');\r\n    if (overlay) overlay.style.display = 'flex';\r\n  }\r\n\r\n  function hideProcessingOverlay() {\r\n    const overlay = document.getElementById('processing-overlay');\r\n    if (overlay) overlay.style.display = 'none';\r\n  }\r\n\r\n  \/\/ Zoom functions\r\n  window.zoomIn = function() {\r\n    state.zoomLevel = Math.min(state.zoomLevel + 0.2, 3);\r\n    updateImageZoom();\r\n  };\r\n\r\n  window.zoomOut = function() {\r\n    state.zoomLevel = Math.max(state.zoomLevel - 0.2, 0.5);\r\n    updateImageZoom();\r\n  };\r\n\r\n  window.resetZoom = function() {\r\n    state.zoomLevel = 1;\r\n    updateImageZoom();\r\n  };\r\n\r\n  function updateImageZoom() {\r\n    const resultImage = document.getElementById('result-image');\r\n    const fullscreenImage = document.getElementById('fullscreen-image');\r\n    \r\n    if (resultImage) {\r\n      resultImage.style.transform = `scale(${state.zoomLevel})`;\r\n    }\r\n    if (fullscreenImage) {\r\n      fullscreenImage.style.transform = `scale(${state.zoomLevel})`;\r\n    }\r\n  }\r\n\r\n  \/\/ Fullscreen functions\r\n  window.toggleFullscreen = function() {\r\n    const fullscreenModal = document.getElementById('fullscreen-modal');\r\n    const fullscreenImage = document.getElementById('fullscreen-image');\r\n    \r\n    if (!state.isFullscreen && state.resultImage) {\r\n      fullscreenImage.src = state.resultImage;\r\n      fullscreenImage.style.transform = `scale(${state.zoomLevel})`;\r\n      fullscreenModal.style.display = 'block';\r\n      state.isFullscreen = true;\r\n    } else {\r\n      fullscreenModal.style.display = 'none';\r\n      state.isFullscreen = false;\r\n    }\r\n  };\r\n\r\n  \/\/ Render selected products in summary\r\n  function renderSelectedProducts() {\r\n    const container = document.getElementById('selected-products');\r\n    if (!container) return;\r\n    \r\n    container.innerHTML = '';\r\n    \r\n    \/\/ Render regular products\r\n    state.selectedProducts.forEach((product, index) => {\r\n      if (!product || state.hiddenProducts.includes(index)) return;\r\n      \r\n      const productDiv = document.createElement('div');\r\n      productDiv.className = 'selected-product';\r\n      \r\n      productDiv.innerHTML = `\r\n        <div class=\"selected-product-header\">\r\n          <img decoding=\"async\" src=\"${product.image}\" alt=\"${product.name}\" style=\"width: 4rem; height: 4rem; object-fit: cover; border-radius: 6px;\">\r\n          <div class=\"selected-product-info\">\r\n            <div class=\"product-name\">${product.name}<\/div>\r\n            <div class=\"product-price\">${product.price.toFixed(2)} \u20ac - ${product.m2} m\u00b2<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        \r\n        <div class=\"package-buttons\">\r\n          ${product.variations.map(variation => `\r\n            <button class=\"package-btn ${variation.packageSize === product.selectedPackageSize ? 'active' : ''}\" \r\n                    ${!variation.is_in_stock ? 'disabled' : ''}\r\n                    onclick=\"selectPackageSize(${product.id}, ${variation.id}, '${variation.packageSize}', ${variation.price}, ${index})\">\r\n              ${variation.packageSize}${!variation.is_in_stock ? ' \u274c' : ''}\r\n            <\/button>\r\n          `).join('')}\r\n        <\/div>\r\n        \r\n        ${product.selectedPackageSize ? `\r\n          <div class=\"quantity-controls\">\r\n            <button class=\"quantity-btn\" onclick=\"updateQuantityx(${index}, -1)\" ${!product.quantity || product.quantity <= 1 ? 'disabled' : ''}>\r\n              <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n              <\/svg>\r\n            <\/button>\r\n            <span class=\"quantity-value\">${product.quantity || 1}<\/span>\r\n            <button class=\"quantity-btn\" onclick=\"updateQuantityx(${index}, 1)\" \r\n                    ${!product.selectedPackageSize || (product.quantity || 0) >= (product.variations.find(v => v.packageSize === product.selectedPackageSize)?.stock_quantity || 0) ? 'disabled' : ''}>\r\n              <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"><\/line>\r\n                <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"><\/line>\r\n              <\/svg>\r\n            <\/button>\r\n          <\/div>\r\n        ` : ''}\r\n      `;\r\n      \r\n      container.appendChild(productDiv);\r\n    });\r\n    \r\n    \/\/ Render mineral product\r\n    if (state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral')) {\r\n      const mineralDiv = document.createElement('div');\r\n      mineralDiv.className = 'selected-product';\r\n      \r\n      mineralDiv.innerHTML = `\r\n        <div class=\"selected-product-header\">\r\n          <img decoding=\"async\" src=\"${state.selectedMineralProduct.image}\" alt=\"${state.selectedMineralProduct.name}\" style=\"width: 4rem; height: 4rem; object-fit: cover; border-radius: 6px;\">\r\n          <div class=\"selected-product-info\">\r\n            <div class=\"product-name\">${state.selectedMineralProduct.name}<\/div>\r\n            <div class=\"product-price\">${state.selectedMineralProduct.price} \u20ac<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      `;\r\n      \r\n      container.appendChild(mineralDiv);\r\n    }\r\n  }\r\n\r\n  \/\/ Select package size\r\n  window.selectPackageSize = function(productId, variationId, packageSize, price, boxIndex) {\r\n    const product = state.selectedProducts[boxIndex];\r\n    if (!product) return;\r\n    \r\n    if (product.selectedPackageSize !== packageSize) {\r\n      product.quantity = 1;\r\n    }\r\n    \r\n    product.selectedPackageSize = packageSize;\r\n    product.price = parseFloat(price.toFixed(2));\r\n    product.m2 = packageSize === '1kg' ? 3 : packageSize === '3kg' ? 9 : 15;\r\n    \r\n    renderSelectedProducts();\r\n    updateTotals();\r\n  };\r\n\r\n  \/\/ Update quantity\r\n  window.updateQuantityx = function(boxIndex, change) {\r\n    const product = state.selectedProducts[boxIndex];\r\n    if (!product) return;\r\n    \r\n    const selectedVariation = product.variations.find(v => v.packageSize === product.selectedPackageSize);\r\n    if (!selectedVariation) return;\r\n    \r\n    if (!product.quantity) {\r\n      product.quantity = 1;\r\n    }\r\n    \r\n    const newQuantity = product.quantity + change;\r\n    if (newQuantity >= 1 && newQuantity <= selectedVariation.stock_quantity) {\r\n      product.quantity = newQuantity;\r\n      \r\n      const variation = product.variations.find(v => v.packageSize === product.selectedPackageSize);\r\n      if (variation) {\r\n        product.price = parseFloat((variation.price * product.quantity).toFixed(2));\r\n        product.m2 = variation.m2 * product.quantity;\r\n      }\r\n    }\r\n    \r\n    renderSelectedProducts();\r\n    updateTotals();\r\n  };\r\n\r\n  \/\/ Update totals\r\n  function updateTotals() {\r\n    let totalPrice = 0;\r\n    let totalArea = 0;\r\n    \r\n    state.selectedProducts.forEach((product, index) => {\r\n      if (product && !state.hiddenProducts.includes(index)) {\r\n        totalPrice += product.price;\r\n        totalArea += product.m2;\r\n      }\r\n    });\r\n    \r\n    if (state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral')) {\r\n      totalPrice += state.selectedMineralProduct.price;\r\n      totalArea += state.selectedMineralProduct.m2;\r\n    }\r\n    \r\n    const totalPriceElement = document.getElementById('total-price');\r\n    const totalAreaElement = document.getElementById('total-area');\r\n    \r\n    if (totalPriceElement) {\r\n      totalPriceElement.textContent = `${totalPrice.toFixed(2)} \u20ac`;\r\n    }\r\n    if (totalAreaElement) {\r\n      totalAreaElement.textContent = `${totalArea.toFixed(2)} m\u00b2`;\r\n    }\r\n  }\r\n\r\n  \/\/ Add to cart\r\n  window.addToCartx = async function() {\r\n    if (state.isProcessing) return;\r\n    \r\n    const outOfStockProducts = [];\r\n    state.selectedProducts.forEach((product, index) => {\r\n      if (product && !state.hiddenProducts.includes(index)) {\r\n        const selectedVariation = product.variations.find(v => v.packageSize === product.selectedPackageSize);\r\n        if (!selectedVariation?.is_in_stock) {\r\n          outOfStockProducts.push(product.name);\r\n        }\r\n      }\r\n    });\r\n    \r\n    if (outOfStockProducts.length > 0) {\r\n      alert(`Folgende Produkte sind nicht auf Lager:\\n${outOfStockProducts.join('\\n')}\\n\\nBitte w\u00e4hlen Sie verf\u00fcgbare Produkte aus.`);\r\n      return;\r\n    }\r\n\r\n    state.isProcessing = true;\r\n    const addToCartBtns = document.querySelectorAll('#cart-btn, #cart-btn-desktop');\r\n    addToCartBtns.forEach(btn => {\r\n      btn.disabled = true;\r\n      \/\/ Only change desktop button text\r\n      if (!isMobile()) {\r\n        btn.innerHTML = 'Wird in den Warenkorb gelegt...';\r\n      }\r\n    });\r\n\r\n    try {\r\n      \/\/ Add regular products\r\n      for (let i = 0; i < state.selectedProducts.length; i++) {\r\n        if (!state.selectedProducts[i] || state.hiddenProducts.includes(i)) continue;\r\n        \r\n        const product = state.selectedProducts[i];\r\n        const selectedVariation = product.variations.find(v => v.packageSize === product.selectedPackageSize);\r\n        \r\n        const formData = new FormData();\r\n        formData.append('action', 'woodmart_ajax_add_to_cart');\r\n        formData.append('product_id', product.id);\r\n        formData.append('variation_id', selectedVariation.id);\r\n        formData.append('quantity', product.quantity || 1);\r\n        formData.append('add-to-cart', product.id);\r\n        formData.append('attribute_pa_packmass', selectedVariation.packageSize);\r\n\r\n        const response = await fetch('https:\/\/gobelka.com\/de\/wp-admin\/admin-ajax.php', {\r\n          method: 'POST',\r\n          credentials: 'include',\r\n          body: formData\r\n        });\r\n\r\n        const data = await response.text();\r\n        if (!response.ok) throw new Error('Failed to add product to cart');\r\n      }\r\n\r\n      \/\/ Add mineral product if selected\r\n      if (state.includeMineralProduct && state.selectedMineralProduct && !state.hiddenProducts.includes('mineral')) {\r\n        const mineral = state.selectedMineralProduct;\r\n        const formData = new FormData();\r\n        formData.append('action', 'woodmart_ajax_add_to_cart');\r\n        formData.append('product_id', mineral.id);\r\n        formData.append('variation_id', mineral.variation_id);\r\n        formData.append('add-to-cart', mineral.id);\r\n        formData.append('quantity', '1');\r\n        formData.append('attribute_groesse-waehlen', '600g');\r\n\r\n        const response = await fetch('https:\/\/gobelka.com\/de\/wp-admin\/admin-ajax.php', {\r\n          method: 'POST',\r\n          credentials: 'include',\r\n          body: formData\r\n        });\r\n\r\n        if (!response.ok) throw new Error('Failed to add mineral product to cart');\r\n      }\r\n\r\n      if (typeof jQuery !== 'undefined') {\r\n        jQuery(document.body).trigger('added_to_cart').trigger('wc_fragment_refresh');\r\n      }\r\n\r\n      const successMessage = document.createElement('div');\r\n      successMessage.className = 'woocommerce-message';\r\n      successMessage.innerHTML = 'Produkte wurden erfolgreich in den Warenkorb gelegt! <a href=\"\/warenkorb\/\" class=\"button wc-forward\">Zum Warenkorb<\/a>';\r\n      document.querySelector('.color-mask-app').insertAdjacentElement('beforebegin', successMessage);\r\n      setTimeout(() => successMessage.remove(), 3000);\r\n\r\n    } catch (error) {\r\n      console.error('Error adding to cart:', error);\r\n      const errorMessage = document.createElement('div');\r\n      errorMessage.className = 'woocommerce-error';\r\n      errorMessage.textContent = 'Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.';\r\n      document.querySelector('.color-mask-app').insertAdjacentElement('beforebegin', errorMessage);\r\n      setTimeout(() => errorMessage.remove(), 3000);\r\n    } finally {\r\n      state.isProcessing = false;\r\n      addToCartBtns.forEach(btn => {\r\n        btn.disabled = false;\r\n        \/\/ Only restore desktop button text\r\n        if (!isMobile()) {\r\n          btn.innerHTML = `\r\n            <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <circle cx=\"9\" cy=\"21\" r=\"1\"><\/circle>\r\n              <circle cx=\"20\" cy=\"21\" r=\"1\"><\/circle>\r\n              <path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\"><\/path>\r\n            <\/svg>\r\n            In den Warenkorb\r\n          `;\r\n        }\r\n      });\r\n    }\r\n  };\r\n\r\n  \/\/ Close modal when clicking outside\r\n  document.addEventListener('click', function(event) {\r\n    const modal = document.getElementById('search-modal');\r\n    if (event.target === modal) {\r\n      closeSearchModal();\r\n    }\r\n  });\r\n\r\n  \/\/ Initialize when DOM is loaded\r\n  if (document.readyState === 'loading') {\r\n    document.addEventListener('DOMContentLoaded', init);\r\n  } else {\r\n    init();\r\n  }\r\n\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3612d7f elementor-widget elementor-widget-html\" data-id=\"3612d7f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- Mobile Header -->\r\n\r\n<div class=\"mobile-header\">\r\n  <div class=\"header-content\">\r\n    <div class=\"header-top\">\r\n      <h1>Belka Mix<\/h1>\r\n      <div class=\"header-buttons\">\r\n        <button class=\"btn-outline btn-sm\" onclick=\"resetSelection()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <polyline points=\"1 4 1 10 7 10\"><\/polyline>\r\n            <path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\"><\/path>\r\n          <\/svg>\r\n          Zur\u00fccksetzen\r\n        <\/button>\r\n        <button class=\"btn-outline btn-sm\" style=\"background-color:#ff5722; color:white; border:none;\" onclick=\"selectRandomProducts()\">\r\n\r\n                    <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n            stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-shuffle\">\r\n            <path d=\"M2 18h1.4c1.3 0 2.5-.6 3.3-1.7l6.1-8.6c.7-1.1 2-1.7 3.3-1.7H22\"><\/path>\r\n            <path d=\"m18 2 4 4-4 4\"><\/path>\r\n            <path d=\"M2 6h1.9c1.5 0 2.9.9 3.6 2.2\"><\/path>\r\n            <path d=\"M22 18h-5.9c-1.3 0-2.6-.7-3.3-1.8l-.5-.8\"><\/path>\r\n            <path d=\"m18 14 4 4-4 4\"><\/path>\r\n          <\/svg>\r\n          Zuf\u00e4llige Auswahl\r\n        <\/button>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- Progress Steps -->\r\n    <div class=\"progress-steps\">\r\n      <div class=\"step-container\">\r\n        <div class=\"step active\" data-step=\"1\">1<\/div>\r\n        <div class=\"step-line\">\r\n          <div class=\"step-progress\"><\/div>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"step-container\">\r\n        <div class=\"step\" data-step=\"2\">2<\/div>\r\n        <div class=\"step-line\">\r\n          <div class=\"step-progress\"><\/div>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"step-container\">\r\n        <div class=\"step\" data-step=\"3\">3<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n\r\n<!-- Main Content -->\r\n<div class=\"main-content\">\r\n  <!-- Color Selection Section -->\r\n  <div class=\"section color-selection\" id=\"step-1\">\r\n    <h2 class=\"section-title desktop-only\">Farbauswahl<\/h2>\r\n    <div class=\"card\">\r\n\r\n      <div class=\"header-buttonsx\">\r\n\r\n        <button class=\"btn-outline btn-sm\" onclick=\"resetSelection()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <polyline points=\"1 4 1 10 7 10\"><\/polyline>\r\n            <path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\"><\/path>\r\n          <\/svg>\r\n          Zur\u00fccksetzen\r\n        <\/button>\r\n        <button class=\"btn-outline btn-sm\" style=\"background-color:#ff5722; color:white; border:none;\" onclick=\"selectRandomProducts()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\r\n            stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-shuffle\">\r\n            <path d=\"M2 18h1.4c1.3 0 2.5-.6 3.3-1.7l6.1-8.6c.7-1.1 2-1.7 3.3-1.7H22\"><\/path>\r\n            <path d=\"m18 2 4 4-4 4\"><\/path>\r\n            <path d=\"M2 6h1.9c1.5 0 2.9.9 3.6 2.2\"><\/path>\r\n            <path d=\"M22 18h-5.9c-1.3 0-2.6-.7-3.3-1.8l-.5-.8\"><\/path>\r\n            <path d=\"m18 14 4 4-4 4\"><\/path>\r\n          <\/svg>\r\n          Zuf\u00e4llige Auswahl\r\n        <\/button>\r\n      <\/div>\r\n      <!-- Color Count Selection -->\r\n      <div class=\"color-count-section\">\r\n        <label class=\"label\">Wie viele verschiedene Farben m\u00f6chten Sie?<\/label>\r\n        <div class=\"color-count-buttons\">\r\n          <button class=\"count-btn active\" data-count=\"2\" onclick=\"handleColorCountChange(2)\">2<\/button>\r\n          <button class=\"count-btn\" data-count=\"3\" onclick=\"handleColorCountChange(3)\">3<\/button>\r\n          <button class=\"count-btn\" data-count=\"4\" onclick=\"handleColorCountChange(4)\">4<\/button>\r\n          <button class=\"count-btn\" data-count=\"5\" onclick=\"handleColorCountChange(5)\">5<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Product Boxes -->\r\n      <div class=\"product-boxes\" id=\"product-boxes\">\r\n        <!-- Product boxes will be generated by JavaScript -->\r\n      <\/div>\r\n\r\n      <!-- Mineral Product Option -->\r\n      <div class=\"mineral-option\">\r\n        <label class=\"checkbox-label\">\r\n          <input type=\"checkbox\" id=\"include-mineral\" onchange=\"toggleMineralProduct()\">\r\n          <span class=\"checkmark\"><\/span>\r\n          M\u00f6chten Sie ein Mineralstein-Produkt?\r\n        <\/label>\r\n      <\/div>\r\n\r\n      <!-- Mineral Product Box -->\r\n      <div class=\"mineral-product-box\" id=\"mineral-product-box\" style=\"display: none;\">\r\n        <!-- Mineral product content will be generated by JavaScript -->\r\n      <\/div>\r\n\r\n      <!-- Mobile Next Button -->\r\n      <button class=\"btn-primary mobile-next-btn\" onclick=\"nextStep()\" style=\"display: none;\">\r\n        Weiter zum Ergebnis\r\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n          <polyline points=\"9 18 15 12 9 6\"><\/polyline>\r\n        <\/svg>\r\n      <\/button>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Result Section -->\r\n  <div class=\"section result-section\" id=\"step-2\">\r\n    <h2 class=\"section-title desktop-only\">Ergebnis<\/h2>\r\n    <div class=\"card\">\r\n\r\n\r\n      <!-- Image Controls -->\r\n      <div class=\"image-controls\">\r\n        <button class=\"btn-outline btn-icon\" onclick=\"zoomIn()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <circle cx=\"11\" cy=\"11\" r=\"8\"><\/circle>\r\n            <path d=\"m21 21-4.35-4.35\"><\/path>\r\n            <line x1=\"11\" y1=\"8\" x2=\"11\" y2=\"14\"><\/line>\r\n            <line x1=\"8\" y1=\"11\" x2=\"14\" y2=\"11\"><\/line>\r\n          <\/svg>\r\n        <\/button>\r\n        <button class=\"btn-outline btn-icon\" onclick=\"zoomOut()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <circle cx=\"11\" cy=\"11\" r=\"8\"><\/circle>\r\n            <path d=\"m21 21-4.35-4.35\"><\/path>\r\n            <line x1=\"8\" y1=\"11\" x2=\"14\" y2=\"11\"><\/line>\r\n          <\/svg>\r\n        <\/button>\r\n        <button class=\"btn-outline btn-icon\" onclick=\"resetZoom()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <polyline points=\"1 4 1 10 7 10\"><\/polyline>\r\n            <path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\"><\/path>\r\n          <\/svg>\r\n        <\/button>\r\n        <button class=\"btn-outline btn-icon\" onclick=\"toggleFullscreen()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <path d=\"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3\">\r\n            <\/path>\r\n          <\/svg>\r\n        <\/button>\r\n      <\/div>\r\n\r\n      <!-- Result Image Container -->\r\n      <div class=\"result-image-container\" id=\"result-image-container\">\r\n        <div class=\"result-placeholder\" id=\"result-placeholder\">\r\n          <svg width=\"64\" height=\"64\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"><\/rect>\r\n            <circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"><\/circle>\r\n            <polyline points=\"21 15 16 10 5 21\"><\/polyline>\r\n          <\/svg>\r\n          <p>Maskiertes Bild wird hier angezeigt<\/p>\r\n          <p class=\"small\">W\u00e4hlen Sie zuerst die Anzahl der Farben<\/p>\r\n        <\/div>\r\n        <img id=\"result-image\" style=\"display: none;\" \/>\r\n\r\n        <!-- Processing Overlay -->\r\n        <div class=\"processing-overlay\" id=\"processing-overlay\" style=\"display: none;\">\r\n          <div class=\"spinner\"><\/div>\r\n          <p>Maskierung wird erstellt...<\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Disclaimer -->\r\n      <div class=\"disclaimer\">\r\n        Das angezeigte Bild dient nur zu Informationszwecken. Angewandte Techniken, Mischverh\u00e4ltnisse, Farbintensit\u00e4t\r\n        usw. k\u00f6nnen das Design beeinflussen.\r\n      <\/div>\r\n\r\n      <!-- Mobile Navigation -->\r\n      <div class=\"mobile-navigation\">\r\n        <button class=\"btn-outline\" onclick=\"prevStep()\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <polyline points=\"15 18 9 12 15 6\"><\/polyline>\r\n          <\/svg>\r\n          Zur\u00fcck\r\n        <\/button>\r\n        <button class=\"btn-primary\" onclick=\"nextStep()\">\r\n          Weiter\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <polyline points=\"9 18 15 12 9 6\"><\/polyline>\r\n          <\/svg>\r\n        <\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Summary Section -->\r\n  <div class=\"section summary-section\" id=\"step-3\">\r\n    <div class=\"card\">\r\n      <h2 class=\"section-title\">Zusammenfassung<\/h2>\r\n\r\n      <!-- Selected Products -->\r\n      <div class=\"selected-products\" id=\"selected-products\">\r\n        <!-- Selected products will be generated by JavaScript -->\r\n      <\/div>\r\n\r\n      <!-- Totals -->\r\n      <div class=\"totals\">\r\n        <div class=\"total-item total-price\">\r\n          <p class=\"total-label\">Gesamtbetrag<\/p>\r\n          <p class=\"total-value\" id=\"total-price\">0,00 \u20ac<\/p>\r\n        <\/div>\r\n        <div class=\"total-item total-area\">\r\n          <p class=\"total-label\">Gesamtfl\u00e4che<\/p>\r\n          <p class=\"total-value\" id=\"total-area\">0,00 m\u00b2<\/p>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- Cart Button -->\r\n      <div class=\"cart-section\">\r\n        <div class=\"mobile-navigation\">\r\n          <button class=\"btn-outline\" onclick=\"prevStep()\">\r\n            <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <polyline points=\"15 18 9 12 15 6\"><\/polyline>\r\n            <\/svg>\r\n            Zur\u00fcck\r\n          <\/button>\r\n          <button class=\"btn-primary cart-btn\" onclick=\"addToCartx()\" id=\"cart-btn\">\r\n            <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <circle cx=\"9\" cy=\"21\" r=\"1\"><\/circle>\r\n              <circle cx=\"20\" cy=\"21\" r=\"1\"><\/circle>\r\n              <path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\"><\/path>\r\n            <\/svg>\r\n            In den Warenkorb\r\n          <\/button>\r\n        <\/div>\r\n        <button class=\"btn-primary cart-btn desktop-only\" onclick=\"addToCartx()\" id=\"cart-btn-desktop\">\r\n          <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n            <circle cx=\"9\" cy=\"21\" r=\"1\"><\/circle>\r\n            <circle cx=\"20\" cy=\"21\" r=\"1\"><\/circle>\r\n            <path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\"><\/path>\r\n          <\/svg>\r\n          In den Warenkorb\r\n        <\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- Search Modal -->\r\n<div class=\"modal\" id=\"search-modal\">\r\n  <div class=\"modal-content\">\r\n    <div class=\"modal-header\">\r\n      <h3 id=\"modal-title\">Produkt w\u00e4hlen<\/h3>\r\n      <button class=\"modal-close\" onclick=\"closeSearchModal()\">\r\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n          <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"><\/line>\r\n          <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"><\/line>\r\n        <\/svg>\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <div class=\"modal-body\">\r\n      <div class=\"search-input-container\">\r\n        <svg class=\"search-icon\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"\r\n          stroke-width=\"2\">\r\n          <circle cx=\"11\" cy=\"11\" r=\"8\"><\/circle>\r\n          <path d=\"m21 21-4.35-4.35\"><\/path>\r\n        <\/svg>\r\n        <input type=\"text\" id=\"search-input\" placeholder=\"Produktname eingeben...\" oninput=\"filterProducts()\">\r\n      <\/div>\r\n\r\n      <div class=\"product-list\" id=\"product-list\">\r\n        <!-- Products will be populated by JavaScript -->\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- Fullscreen Modal -->\r\n<div class=\"fullscreen-modal\" id=\"fullscreen-modal\" style=\"display: none;\">\r\n  <button class=\"fullscreen-close\" onclick=\"toggleFullscreen()\">\r\n    <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n      <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"><\/line>\r\n      <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"><\/line>\r\n    <\/svg>\r\n  <\/button>\r\n  <img id=\"fullscreen-image\" \/>\r\n<\/div>\r\n\r\n<!-- Tutorial Overlay -->\r\n<div id=\"tutorial-overlay\" class=\"hidden\">\r\n  <div class=\"tutorial-backdrop\"><\/div>\r\n  <div class=\"tutorial-highlight\"><\/div>\r\n  <div class=\"tutorial-tooltip\">\r\n    <div class=\"tutorial-header\">\r\n      <h3 class=\"tutorial-title\"><\/h3>\r\n      <button class=\"tutorial-close\" onclick=\"closeTutorial()\">\r\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n          <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"><\/line>\r\n          <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"><\/line>\r\n        <\/svg>\r\n      <\/button>\r\n    <\/div>\r\n    <p class=\"tutorial-description\"><\/p>\r\n    <div class=\"tutorial-navigation\">\r\n      <button class=\"tutorial-btn tutorial-skip\" onclick=\"closeTutorial()\">\u00dcberspringen<\/button>\r\n      <div class=\"tutorial-progress\">\r\n        <button class=\"tutorial-btn\" onclick=\"prevTutorialStep()\" id=\"tutorial-prev\">Zur\u00fcck<\/button>\r\n        <button class=\"tutorial-btn tutorial-next\" onclick=\"nextTutorialStep()\" id=\"tutorial-next\">Weiter<\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <!-- Quick Calculator Section -->\r\n    <section class=\"quick-calculator-section\">\r\n        <div class=\"container\">\r\n            <div class=\"calculator-card\">\r\n                <div class=\"calculator-content\">\r\n                    <div class=\"calculator-form\">\r\n                        <div class=\"calculator-layout\">\r\n                            <div class=\"input-group\">\r\n                                <label for=\"wall-width\">Breite (m)<\/label>\r\n                                <input type=\"number\" id=\"wall-width\" min=\"0\" step=\"0.1\" placeholder=\"0.0\">\r\n                            <\/div>\r\n                            <span class=\"multiply-symbol\">\u00d7<\/span>\r\n                            <div class=\"input-group\">\r\n                                <label for=\"wall-height\">H\u00f6he (m)<\/label>\r\n                                <input type=\"number\" id=\"wall-height\" min=\"0\" step=\"0.1\" placeholder=\"0.0\">\r\n                            <\/div>\r\n                            <span class=\"equals-symbol\">=<\/span>\r\n                            <div class=\"calculator-result\">\r\n                                <span>Gesamtfl\u00e4che:<\/span>\r\n                                <strong id=\"total-areax\">0.0 m\u00b2<\/strong>\r\n                            <\/div>\r\n                            <a href=\"\/de\/wandflache-berechnen-belka-rechner\/\" class=\"button outline calc-button\">\r\n                                <i class=\"fas fa-calculator\"><\/i>\r\n                                Zum detaillierten Rechner\r\n                            <\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <!-- How to Apply Section -->\r\n    <!-- Belka Mix Preparation Section -->\r\n<!-- Elementor HTML Widget'\u0131na eklenecek kod -->\r\n<section id=\"preparation\" class=\"belka-preparation-section\">\r\n  <div class=\"belka-container\">\r\n    <!-- Header -->\r\n    <div class=\"belka-header\">\r\n\r\n      <h2 class=\"belka-main-title\">Wie wird Belka Mix vorbereitet?<\/h2>\r\n      <p class=\"belka-subtitle\">\r\n        Die Vorbereitung und Anwendung von Belka Mix f\u00fcr einzigartige Wanddesigns ist einfach und unkompliziert.\r\n        Folgen Sie unserer detaillierten Anleitung f\u00fcr optimale Ergebnisse.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <!-- Step Navigation -->\r\n    <div class=\"belka-step-navigation\">\r\n      <button class=\"belka-step-btn active\" data-step=\"0\">\r\n        <div class=\"belka-step-content\">\r\n          <div class=\"belka-step-icon\">\r\n            <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <path d=\"M18 11V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v0\"\/>\r\n              <path d=\"M14 10V4a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v2\"\/>\r\n              <path d=\"M10 10.5V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v8\"\/>\r\n              <path d=\"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.83L7 15\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          <div class=\"belka-step-info\">\r\n            <h3>Standard Belka-Vorbereitung<\/h3>\r\n            <p>Die Grundlage f\u00fcr perfekte Ergebnisse<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n      <\/button>\r\n\r\n      <button class=\"belka-step-btn\" data-step=\"1\">\r\n        <div class=\"belka-step-content\">\r\n          <div class=\"belka-step-icon\">\r\n            <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <circle cx=\"13.5\" cy=\"6.5\" r=\".5\"\/>\r\n              <circle cx=\"17.5\" cy=\"10.5\" r=\".5\"\/>\r\n              <circle cx=\"8.5\" cy=\"7.5\" r=\".5\"\/>\r\n              <circle cx=\"6.5\" cy=\"12.5\" r=\".5\"\/>\r\n              <path d=\"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          <div class=\"belka-step-info\">\r\n            <h3>Belka Mix-Kreation<\/h3>\r\n            <p>F\u00fcr einzigartige Farbkombinationen<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n      <\/button>\r\n\r\n      <button class=\"belka-step-btn\" data-step=\"2\">\r\n        <div class=\"belka-step-content\">\r\n          <div class=\"belka-step-icon\">\r\n            <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          <div class=\"belka-step-info\">\r\n            <h3>Trocknung & Nachbehandlung<\/h3>\r\n            <p>Perfekte Vollendung Ihres Kunstwerks<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <!-- Active Step Content -->\r\n    <div class=\"belka-main-content\">\r\n      <div class=\"belka-content-grid\">\r\n        <!-- Left Side - Steps -->\r\n        <div class=\"belka-steps-column\">\r\n          <div class=\"belka-step-header\">\r\n            <div class=\"belka-step-number\">1<\/div>\r\n            <div class=\"belka-step-title-area\">\r\n              <h3 class=\"belka-step-title\">Standard Belka-Vorbereitung<\/h3>\r\n              <p class=\"belka-step-subtitle\">Die Grundlage f\u00fcr perfekte Ergebnisse<\/p>\r\n\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <div class=\"belka-substeps\" id=\"substeps-container\">\r\n            <!-- Substeps will be populated by JavaScript -->\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Right Side - Video & Tips -->\r\n        <div class=\"belka-media-column\">\r\n          <!-- Video -->\r\n          <div class=\"belka-video-container\">\r\n            <div class=\"belka-video-wrapper\" id=\"video-wrapper\">\r\n              <img decoding=\"async\" src=\"https:\/\/i.ytimg.com\/vi\/WRwwbaCF87M\/hqdefault.jpg\" alt=\"Tutorial Video\" class=\"belka-video-thumbnail\" id=\"video-thumbnail\" style=\"height:-webkit-fill-available;\">\r\n              <div class=\"belka-video-overlay\" id=\"video-overlay\">\r\n                <div class=\"belka-play-button\">\r\n                  <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                    <polygon points=\"5,3 19,12 5,21\"\/>\r\n                  <\/svg>\r\n                <\/div>\r\n              <\/div>\r\n              <div class=\"belka-video-title\" id=\"video-title\"><\/div>\r\n              <iframe id=\"video-iframe\" style=\"display: none;\" width=\"100%\" height=\"100%\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <!-- Design Tips -->\r\n          <div class=\"belka-tips-card\">\r\n            <h4 class=\"belka-tips-title\">\r\n              <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <path d=\"M9 12l2 2 4-4\"\/>\r\n                <path d=\"M21 12c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n                <path d=\"M3 12c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n                <path d=\"M12 21c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n                <path d=\"M12 3c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n                <path d=\"M18.364 18.364c.39.39 1.024.39 1.414 0s.39-1.024 0-1.414-.024-.39-1.414 0-.39 1.024 0 1.414z\"\/>\r\n                <path d=\"M4.222 4.222c.39.39 1.024.39 1.414 0s.39-1.024 0-1.414-1.024-.39-1.414 0-.39 1.024 0 1.414z\"\/>\r\n                <path d=\"M18.364 5.636c.39-.39.39-1.024 0-1.414s-1.024-.39-1.414 0-.39 1.024 0 1.414 1.024.39 1.414 0z\"\/>\r\n                <path d=\"M4.222 19.778c.39-.39.39-1.024 0-1.414s-1.024-.39-1.414 0-.39 1.024 0 1.414 1.024.39 1.414 0z\"\/>\r\n              <\/svg>\r\n              Design-Tipps\r\n            <\/h4>\r\n            <div class=\"belka-tips-list\">\r\n              <div class=\"belka-tip-item\">\r\n                <button class=\"belka-tip-button\" data-tip=\"0\">\r\n                  <div class=\"belka-tip-image\">\r\n                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/marmoroptik-beispiel-belka-tapete-belka-mix.jpg\" alt=\"Marmoreffekt\">\r\n                  <\/div>\r\n                  <div class=\"belka-tip-content\">\r\n                    <h5>Marmoreffekt<\/h5>\r\n                    <p>Weniger mischen f\u00fcr deutlichere Farbverl\u00e4ufe<\/p>\r\n                  <\/div>\r\n                  <svg class=\"belka-tip-arrow\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                    <polyline points=\"6,9 12,15 18,9\"\/>\r\n                  <\/svg>\r\n                <\/button>\r\n                <div class=\"belka-tip-expanded\" style=\"display: none;\">\r\n                  <p>Durch leichtes Mischen der Farben k\u00f6nnen Sie eine nat\u00fcrliche Marmoroptik erzielen. Je weniger Sie die verschiedenen Farben miteinander vermischen, desto deutlicher bleiben die einzelnen Farbt\u00f6ne sichtbar.<\/p>\r\n                <\/div>\r\n              <\/div>\r\n\r\n              <div class=\"belka-tip-item\">\r\n                <button class=\"belka-tip-button\" data-tip=\"1\">\r\n                  <div class=\"belka-tip-image\">\r\n                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/akzentwand-schaffen-sie-eine-auffallige-akzentwand-indem-sie-eine-wand-des-raumes-mit-einem-dunkleren-ton-betonen-dies-verleiht-ihrem-raum-tiefe-und-charakter.jpg\" alt=\"Akzentwand\">\r\n                  <\/div>\r\n                  <div class=\"belka-tip-content\">\r\n                    <h5>Akzentwand<\/h5>\r\n                    <p>Dunklere T\u00f6ne f\u00fcr mehr Tiefe<\/p>\r\n                  <\/div>\r\n                  <svg class=\"belka-tip-arrow\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                    <polyline points=\"6,9 12,15 18,9\"\/>\r\n                  <\/svg>\r\n                <\/button>\r\n                <div class=\"belka-tip-expanded\" style=\"display: none;\">\r\n                  <p>Schaffen Sie eine auff\u00e4llige Akzentwand, indem Sie eine Wand des Raumes mit einem dunkleren Ton betonen. Dies verleiht Ihrem Raum Tiefe und Charakter.<\/p>\r\n                <\/div>\r\n              <\/div>\r\n\r\n              <div class=\"belka-tip-item\">\r\n                <button class=\"belka-tip-button\" data-tip=\"2\">\r\n                  <div class=\"belka-tip-image\">\r\n                    <img decoding=\"async\" src=\"https:\/\/gobelka.com\/de\/wp-content\/uploads\/2025\/05\/muster-und-schablonen-fur-komplexere-designs-konnen-sie-direkt-auf-die-wand-zeichnen-oder-eine-schablone-vorbereiten-die-ihnen-hilft-die-farben-gleichmassig-aufzutragen.jpg\" alt=\"Schablonen\">\r\n                  <\/div>\r\n                  <div class=\"belka-tip-content\">\r\n                    <h5>Schablonen-Design<\/h5>\r\n                    <p>Komplexe Muster erstellen<\/p>\r\n                  <\/div>\r\n                  <svg class=\"belka-tip-arrow\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                    <polyline points=\"6,9 12,15 18,9\"\/>\r\n                  <\/svg>\r\n                <\/button>\r\n                <div class=\"belka-tip-expanded\" style=\"display: none;\">\r\n                  <p>F\u00fcr komplexere Designs k\u00f6nnen Sie Schablonen verwenden, die Ihnen helfen, die Farben gleichm\u00e4\u00dfig aufzutragen. Verwenden Sie stabile Materialien f\u00fcr beste Ergebnisse.<\/p>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n\r\n          <!-- Progress Indicator -->\r\n          <div class=\"belka-progress-card\">\r\n            <div class=\"belka-progress-content\">\r\n              <svg class=\"belka-progress-icon\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n                <circle cx=\"12\" cy=\"12\" r=\"10\"\/>\r\n                <polyline points=\"12,6 12,12 16,14\"\/>\r\n              <\/svg>\r\n              <div class=\"belka-progress-info\">\r\n                <h4>Trocknungsfortschritt<\/h4>\r\n                <div class=\"belka-progress-bar\">\r\n                  <div class=\"belka-progress-fill\"><\/div>\r\n                <\/div>\r\n                <div class=\"belka-progress-labels\">\r\n                  <span>24h<\/span>\r\n                  <span>48h<\/span>\r\n                  <span>72h<\/span>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n\r\n  <\/div>\r\n<\/section>\r\n\r\n\r\n    <!-- FAQ Section -->\r\n    <section id=\"faq\" class=\"faq-section\">\r\n        <div class=\"container\">\r\n            <div class=\"section-header\">\r\n                <h2>H\u00e4ufig gestellte Fragen<\/h2>\r\n                <p>\r\n                    Hier finden Sie Antworten auf h\u00e4ufig gestellte Fragen zur Belka Mix-Wandbeschichtung.\r\n                <\/p>\r\n            <\/div>\r\n\r\n            <div class=\"faq-container\">\r\n                <div class=\"accordion\">\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            In welchen Farbkombinationen ist Belka Mix erh\u00e4ltlich?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                               Belka Mix ist in zwei, drei, vier, f\u00fcnf oder sogar unendlich vielen Farbkombinationen erh\u00e4ltlich \u2013 ganz nach Ihrem Geschmack. Auf unserer Plattform k\u00f6nnen Sie derzeit zwischen zwei und f\u00fcnf Farben w\u00e4hlen, um Ihre Wandgestaltung individuell zu gestalten.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                           Wie funktioniert Belka Mix?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Belka Mix besteht aus nat\u00fcrlichen Baumwollfasern und wird trocken geliefert. Sie mischen die ausgew\u00e4hlten Farben einfach mit Wasser an \u2013 ganz ohne Kleister oder Kleber. Anschlie\u00dfend tragen Sie die Mischung mit einer Spachtel (Mala) auf die Wand auf. So entstehen kreative und einzigartige Wanddesigns.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Wie viele Farben kann ich mit Belka Mix kombinieren?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Sie k\u00f6nnen bis zu f\u00fcnf verschiedene Belka-Farben frei miteinander mischen. Dadurch sind Ihrer Kreativit\u00e4t keine Grenzen gesetzt, und Sie k\u00f6nnen einzigartige Farbkombinationen und Muster gestalten.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Wie viel Fl\u00e4che kann ich mit einem Belka Mix Set abdecken?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Ein Belka Mix Set enth\u00e4lt 2, 3, 4 oder 5 Packungen in Gr\u00f6\u00dfen von 1 kg, 3 kg oder 5 kg \u2013 ideal f\u00fcr die Gestaltung ganzer R\u00e4ume. Je nach Wandbeschaffenheit und gew\u00fcnschter Schichtdicke reicht die Mischung f\u00fcr Fl\u00e4chen von ca. 6 m\u00b2 bis zu Ihrer Wunschfl\u00e4che. F\u00fcr optimale Ergebnisse empfehlen wir eine Schichtdicke von 1,5 bis 2 mm.\r\n\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                           Wie lange dauert die Trocknung von Belka Mix?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Die Trocknungszeit h\u00e4ngt von Faktoren wie Raumtemperatur, Luftfeuchtigkeit und Schichtdicke ab. Im Durchschnitt trocknet Belka Mix innerhalb von 24 bis 48 Stunden. Eine gute Bel\u00fcftung beschleunigt den Prozess.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Auf welchen Untergr\u00fcnden kann Belka Mix angewendet werden?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Belka Mix haftet gut auf verschiedenen trockenen und sauberen Untergr\u00fcnden wie Putz, Beton, Holz, Gipskarton, matten Fliesen und vorhandenen Altanstrichen. Die Oberfl\u00e4che muss tragf\u00e4hig und frei von Fett oder Staub sein.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Ist Belka Mix umweltfreundlich und gesundheitlich unbedenklich?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Ja, Belka Mix besteht aus 100 % nat\u00fcrlicher Baumwolle und ist frei von sch\u00e4dlichen Chemikalien wie VOCs oder Formaldehyd. Es ist somit ideal f\u00fcr Allergiker, Kinderzimmer und nachhaltiges Bauen.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Kann ich Belka Mix selbst verarbeiten oder ben\u00f6tige ich einen Profi?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Belka Mix ist speziell f\u00fcr den DIY-Bereich entwickelt worden. Sie ben\u00f6tigen nur eine Spachtel und Wasser f\u00fcr die Verarbeitung. Auch unge\u00fcbte Heimwerker k\u00f6nnen damit hervorragende Ergebnisse erzielen.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Kann Belka Mix repariert oder ausgebessert werden?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Ja, Belka Mix ist reparierbar und wiederverwendbar. Kleine Besch\u00e4digungen k\u00f6nnen durch Anfeuchten und erneutes Auftragen problemlos ausgebessert werden.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                          <div class=\"accordion-item\">\r\n                        <button class=\"accordion-button\">\r\n                            Wie pflege und reinige ich eine Wand mit Belka Mix?\r\n                            <i class=\"fas fa-chevron-down\"><\/i>\r\n                        <\/button>\r\n                        <div class=\"accordion-content\">\r\n                            <p>\r\n                                Die Oberfl\u00e4che kann mit einem feuchten Tuch vorsichtig abgewischt werden. Vermeiden Sie starke Reinigungsmittel oder Scheuermittel, um die nat\u00fcrliche Struktur zu erhalten.\r\n                            <\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n                    \r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <!-- CTA Section -->\r\n    <section id=\"cta\" class=\"cta-section\">\r\n        <div class=\"container\">\r\n            <div class=\"cta-grid\">\r\n                <div class=\"cta-content\">\r\n                    <h2>Entdecken Sie alle Belka Mix-Farben<\/h2>\r\n                    <p>\r\n                        Unbegrenzte Kombinationsm\u00f6glichkeiten mit \u00fcber 60 Farboptionen. Finden Sie die idealen Belka\r\n                        Mix-Farben f\u00fcr jeden Bereich Ihres Hauses.\r\n                    <\/p>\r\n                    <a class=\"button secondary\" href=\"https:\/\/gobelka.com\/de\/belka-alle-produkte\/\" target=\"_blank\">\r\n                        <i class=\"fas fa-paint-brush\"><\/i>\r\n                        Alle Farben anzeigen\r\n                    <\/a>\r\n                <\/div>\r\n\r\n                <div class=\"testimonial-card\">\r\n                    <div class=\"stars1\">\r\n                        <i class=\"fas fa-star\"><\/i>\r\n                        <i class=\"fas fa-star\"><\/i>\r\n                        <i class=\"fas fa-star\"><\/i>\r\n                        <i class=\"fas fa-star\"><\/i>\r\n                        <i class=\"fas fa-star\"><\/i>\r\n                    <\/div>\r\n                    <div class=\"rating\">4.9\/5 - Trustpilot<\/div>\r\n\r\n                    <blockquote>\r\n                        \"Ein sehr guter Service und schnelle\u2026\r\n                        Ein sehr guter Service und schnelle Lieferung\r\n\r\n                        W\u00fcrde immer wieder da Bestellen\"\r\n                    <\/blockquote>\r\n\r\n                    <div class=\"testimonial-author\">\r\n                        <div class=\"author-avatar\">\r\n                            <span>DT<\/span>\r\n                        <\/div>\r\n                        <div class=\"author-info\">\r\n                            <p class=\"author-name\">Detlef Th***<\/p>\r\n                            <p class=\"author-status\">Verifizierter Kunde<\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <a href=\"https:\/\/de.trustpilot.com\/review\/gobelka.com\" target=\"_blank\" rel=\"noopener\">\r\n                        <button class=\"button outline-light\">\r\n                            <i class=\"fas fa-external-link-alt\"><\/i>\r\n                            Bewerten Sie uns auf Trustpilot\r\n                        <\/button>\r\n                    <\/a>\r\n\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n<div class=\"modal\" id=\"alternative-modal\">\r\n  <div class=\"modal-content\" style=\"max-width: 35rem;\">\r\n    <div class=\"modal-header\">\r\n      <h3 id=\"alternative-modal-title\">Alternative w\u00e4hlen<\/h3>\r\n      <button class=\"modal-close\" id=\"close-alternative-modal\" type=\"button\">\r\n        <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n          <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"><\/line>\r\n          <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"><\/line>\r\n        <\/svg>\r\n      <\/button>\r\n    <\/div>\r\n    <div class=\"modal-body\">\r\n      <div class=\"search-input-container\" style=\"display:flex;align-items:center;gap:0.5rem;margin-bottom:1rem;\">\r\n\r\n        <input type=\"text\" id=\"alternative-modal-search\" placeholder=\"Produktname eingeben...\" style=\"flex:1;padding:0.5rem;border-radius:6px;border:1px solid #eee;\">\r\n      <\/div>\r\n      <div id=\"alternative-modal-list\" style=\"max-height:220px;overflow-y:auto;\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-20f63cf elementor-widget elementor-widget-html\" data-id=\"20f63cf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script>\r\n    document.addEventListener('DOMContentLoaded', function () {\r\n        const stepData = [\r\n            {\r\n                id: 1,\r\n                title: \"Standard Belka-Vorbereitung\",\r\n                subtitle: \"Die Grundlage f\u00fcr perfekte Ergebnisse\",\r\n                duration: \"15 Min\",\r\n                difficulty: \"Einfach\",\r\n                video: {\r\n                    thumbnail: \"https:\/\/i.ytimg.com\/vi\/WRwwbaCF87M\/hqdefault.jpg\",\r\n                    embedUrl: \"https:\/\/www.youtube.com\/embed\/WRwwbaCF87M\",\r\n                    title: \"Belka Tapeten richtig anwenden\",\r\n                },\r\n\r\n                steps: [\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.19 3 12.25c0 2.22 1.8 4.05 4 4.05z\"\/><path d=\"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2.26 4.89 4.56 6.68a7.58 7.58 0 0 1 2.79 5.7c0 2.99-2.01 5.6-5 5.6s-5-2.61-5-5.6a7.58 7.58 0 0 1 .21-1.8z\"\/><\/svg>`,\r\n                        title: \"Beh\u00e4lter vorbereiten\",\r\n                        description: \"Geben Sie Belka in einen sauberen, tiefen Beh\u00e4lter\",\r\n                        tip: \"Verwenden Sie einen Beh\u00e4lter mit glattem Boden\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12,6 12,12 16,14\"\/><\/svg>`,\r\n                        title: \"Wasser hinzuf\u00fcgen\",\r\n                        description: \"F\u00fcgen Sie sauberes Wasser bei Raumtemperatur hinzu (5-7 Liter pro 1 kg Belka)\",\r\n                        tip: \"Wasser sollte 20-25\u00b0C haben\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M18 11V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v0\"\/><path d=\"M14 10V4a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v2\"\/><path d=\"M10 10.5V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v8\"\/><path d=\"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.83L7 15\"\/><\/svg>`,\r\n                        title: \"Kneten\",\r\n                        description: \"Kneten Sie es von Hand oder mit einem Mixer, bis es zu einem Teig wird\",\r\n                        tip: \"3-5 Minuten gleichm\u00e4\u00dfig kneten\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12,6 12,12 16,14\"\/><\/svg>`,\r\n                        title: \"Ruhezeit\",\r\n                        description: \"Lassen Sie es 1-2 Stunden ruhen\",\r\n                        tip: \"Abdecken verhindert Austrocknung\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect width=\"20\" height=\"5\" x=\"2\" y=\"3\" rx=\"1\"\/><path d=\"M4 8v11a2 2 0 0 0 2 2h2\"\/><path d=\"M20 8v11a2 2 0 0 1-2 2h-2\"\/><\/svg>`,\r\n                        title: \"Finale Vorbereitung\",\r\n                        description: \"Kneten Sie den Belka-Teig weitere 5 Minuten und tragen Sie ihn auf\",\r\n                        tip: \"Gleichm\u00e4\u00dfige Konsistenz ist wichtig\",\r\n                    },\r\n                ],\r\n            },\r\n            {\r\n                id: 2,\r\n                title: \"Belka Mix-Kreation\",\r\n                subtitle: \"F\u00fcr einzigartige Farbkombinationen\",\r\n                duration: \"25 Min\",\r\n                difficulty: \"Mittel\",\r\n                                video: {\r\n                    thumbnail: \"https:\/\/i.ytimg.com\/vi\/v1YznjNgEp4\/hqdefault.jpg\",\r\n                    embedUrl: \"https:\/\/www.youtube.com\/embed\/v1YznjNgEp4\",\r\n                    title: \"Standard Belka Vorbereitung Tutorial\",\r\n                },\r\n                steps: [\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"13.5\" cy=\"6.5\" r=\".5\"\/><circle cx=\"17.5\" cy=\"10.5\" r=\".5\"\/><circle cx=\"8.5\" cy=\"7.5\" r=\".5\"\/><circle cx=\"6.5\" cy=\"12.5\" r=\".5\"\/><path d=\"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z\"\/><\/svg>`,\r\n                        title: \"Farben vorbereiten\",\r\n                        description: \"Bereiten Sie jede Farbe separat nach der Standardmethode vor\",\r\n                        tip: \"Jede Farbe einzeln anmischen\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12,6 12,12 16,14\"\/><\/svg>`,\r\n                        title: \"Ruhezeit einhalten\",\r\n                        description: \"Lassen Sie jede Farbe 35-50 Minuten ruhen\",\r\n                        tip: \"L\u00e4ngere Ruhezeit f\u00fcr bessere Mischbarkeit\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"6\" cy=\"6\" r=\"3\"\/><circle cx=\"6\" cy=\"18\" r=\"3\"\/><line x1=\"20\" x2=\"8.12\" y1=\"4\" y2=\"15.88\"\/><line x1=\"14.47\" x2=\"20\" y1=\"14.48\" y2=\"20\"\/><line x1=\"8.12\" x2=\"14.47\" y1=\"8.12\" y2=\"14.47\"\/><\/svg>`,\r\n                        title: \"Portionen teilen\",\r\n                        description: \"Nehmen Sie je nach gew\u00fcnschtem Design St\u00fccke von jeder Farbe\",\r\n                        tip: \"Verschiedene Gr\u00f6\u00dfen f\u00fcr nat\u00fcrlichen Look\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M18 11V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v0\"\/><path d=\"M14 10V4a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v2\"\/><path d=\"M10 10.5V6a2 2 0 0 0-2-2v0a2 2 0 0 0-2 2v8\"\/><path d=\"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.83L7 15\"\/><\/svg>`,\r\n                        title: \"Leicht mischen\",\r\n                        description: \"Kneten Sie die Farben nach Ihrem Geschmack leicht zusammen\",\r\n                        tip: \"Nicht zu viel mischen - Marmoreffekt bleibt erhalten\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect width=\"20\" height=\"5\" x=\"2\" y=\"3\" rx=\"1\"\/><path d=\"M4 8v11a2 2 0 0 0 2 2h2\"\/><path d=\"M20 8v11a2 2 0 0 1-2 2h-2\"\/><\/svg>`,\r\n                        title: \"Auftragen\",\r\n                        description: \"Tragen Sie mit transparentem Belka-Spachtel in 2mm Dicke auf\",\r\n                        tip: \"5\u00b0 Winkel f\u00fcr optimale Verteilung\",\r\n                    },\r\n                ],\r\n            },\r\n            {\r\n                id: 3,\r\n                title: \"Trocknung & Nachbehandlung\",\r\n                subtitle: \"Perfekte Vollendung Ihres Kunstwerks\",\r\n                duration: \"24-72h\",\r\n                difficulty: \"Automatisch\",\r\n                 video: {\r\n                    thumbnail: \"https:\/\/i.ytimg.com\/vi\/v1YznjNgEp4\/hqdefault.jpg\",\r\n                    embedUrl: \"https:\/\/www.youtube.com\/embed\/v1YznjNgEp4\",\r\n                    title: \"Standard Belka Vorbereitung Tutorial\",\r\n                },\r\n                steps: [\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12,6 12,12 16,14\"\/><\/svg>`,\r\n                        title: \"Trocknungszeit\",\r\n                        description: \"Die Trocknungszeit betr\u00e4gt je nach Luftzirkulation 24-72 Stunden\",\r\n                        tip: \"Gute Bel\u00fcftung beschleunigt Trocknung\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\"\/><circle cx=\"9\" cy=\"7\" r=\"4\"\/><path d=\"M22 21v-2a4 4 0 0 0-3-3.87\"\/><path d=\"M16 3.13a4 4 0 0 1 0 7.75\"\/><\/svg>`,\r\n                        title: \"Sofort bewohnbar\",\r\n                        description: \"Nach der Anwendung k\u00f6nnen Sie sich ohne Bedenken im Raum aufhalten\",\r\n                        tip: \"Keine sch\u00e4dlichen D\u00e4mpfe oder Ger\u00fcche\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z\"\/><path d=\"M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12\"\/><\/svg>`,\r\n                        title: \"Nat\u00fcrlich & gesund\",\r\n                        description: \"Belka Mix ist dank nat\u00fcrlicher Struktur geruchlos und unbedenklich\",\r\n                        tip: \"100% nat\u00fcrliche Baumwollstruktur\",\r\n                    },\r\n                    {\r\n                        icon: `<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.19 3 12.25c0 2.22 1.8 4.05 4 4.05z\"\/><path d=\"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2.26 4.89 4.56 6.68a7.58 7.58 0 0 1 2.79 5.7c0 2.99-2.01 5.6-5 5.6s-5-2.61-5-5.6a7.58 7.58 0 0 1 .21-1.8z\"\/><\/svg>`,\r\n                        title: \"Pflegeleicht\",\r\n                        description: \"Nach vollst\u00e4ndiger Trocknung mit feuchtem Tuch abwischbar\",\r\n                        tip: \"Sanfte Reinigung erh\u00e4lt die Struktur\",\r\n                    },\r\n                ],\r\n            },\r\n        ]\r\n\r\n        let currentStep = 0\r\n        const playingVideos = {}\r\n\r\n        \/\/ Initialize\r\n        function init() {\r\n            updateStepContent()\r\n            bindEvents()\r\n        }\r\n\r\n        \/\/ Bind events\r\n        function bindEvents() {\r\n            \/\/ Step navigation\r\n            document.querySelectorAll(\".belka-step-btn\").forEach((btn, index) => {\r\n                btn.addEventListener(\"click\", () => {\r\n                    currentStep = index\r\n                    updateStepNavigation()\r\n                    updateStepContent()\r\n                    resetVideo()\r\n                })\r\n            })\r\n\r\n            \/\/ Video play\r\n            document.getElementById(\"video-overlay\").addEventListener(\"click\", playVideo)\r\n\r\n            \/\/ Tips toggle\r\n            document.querySelectorAll(\".belka-tip-button\").forEach((btn, index) => {\r\n                btn.addEventListener(\"click\", () => toggleTip(index))\r\n            })\r\n\r\n            \/\/ Add touch events for package options\r\n            document.addEventListener('touchstart', function(e) {\r\n                const packageOption = e.target.closest('.package-option');\r\n                if (packageOption && !packageOption.disabled) {\r\n                    const size = packageOption.textContent.trim();\r\n                    const price = packageOption.getAttribute('data-price');\r\n                    selectPackage(packageOption, size, price);\r\n                }\r\n            }, false);\r\n\r\n            \/\/ Add touch events for quantity buttons\r\n            document.querySelectorAll('.quantity-button').forEach(button => {\r\n                button.addEventListener('touchstart', function(e) {\r\n                    e.preventDefault();\r\n                    const change = this.classList.contains('decrease') ? -1 : 1;\r\n                    updateQuantity(this, change);\r\n                }, false);\r\n            });\r\n        }\r\n\r\n        \/\/ Update step navigation\r\n        function updateStepNavigation() {\r\n            document.querySelectorAll(\".belka-step-btn\").forEach((btn, index) => {\r\n                if (index === currentStep) {\r\n                    btn.classList.add(\"active\")\r\n                } else {\r\n                    btn.classList.remove(\"active\")\r\n                }\r\n            })\r\n        }\r\n\r\n        \/\/ Update step content\r\n        function updateStepContent() {\r\n            const step = stepData[currentStep]\r\n\r\n            \/\/ Update step header\r\n            document.querySelector(\".belka-step-number\").textContent = step.id\r\n            document.querySelector(\".belka-step-title\").textContent = step.title\r\n            document.querySelector(\".belka-step-subtitle\").textContent = step.subtitle\r\n\r\n\r\n            \/\/ Update substeps\r\n            const substepsContainer = document.getElementById(\"substeps-container\")\r\n            substepsContainer.innerHTML = step.steps\r\n                .map(\r\n                    (substep) => `\r\n      <div class=\"belka-substep\">\r\n        <div class=\"belka-substep-icon\">\r\n          ${substep.icon}\r\n        <\/div>\r\n        <div class=\"belka-substep-content\">\r\n          <h4 class=\"belka-substep-title\">${substep.title}<\/h4>\r\n          <p class=\"belka-substep-description\">${substep.description}<\/p>\r\n          <div class=\"belka-substep-tip\">\r\n            <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n              <path d=\"M9 12l2 2 4-4\"\/>\r\n              <path d=\"M21 12c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n              <path d=\"M3 12c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n              <path d=\"M12 21c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n              <path d=\"M12 3c.552 0 1-.448 1-1s-.448-1-1-1-1 .448-1 1 .448 1 1 1z\"\/>\r\n              <path d=\"M18.364 18.364c.39.39 1.024.39 1.414 0s.39-1.024 0-1.414-.024-.39-1.414 0-.39 1.024 0 1.414z\"\/>\r\n              <path d=\"M4.222 4.222c.39.39 1.024.39 1.414 0s.39-1.024 0-1.414-1.024-.39-1.414 0-.39 1.024 0 1.414z\"\/>\r\n              <path d=\"M18.364 5.636c.39-.39.39-1.024 0-1.414s-1.024-.39-1.414 0-.39 1.024 0 1.414 1.024.39 1.414 0z\"\/>\r\n              <path d=\"M4.222 19.778c.39-.39.39-1.024 0-1.414s-1.024-.39-1.414 0-.39 1.024 0 1.414 1.024.39 1.414 0z\"\/>\r\n            <\/svg>\r\n            <span>${substep.tip}<\/span>\r\n          <\/div>\r\n        <\/div>\r\n        <svg class=\"belka-substep-check\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\r\n          <polyline points=\"20,6 9,17 4,12\"\/>\r\n        <\/svg>\r\n      <\/div>\r\n    `,\r\n                )\r\n                .join(\"\")\r\n\r\n            \/\/ Update video\r\n            document.getElementById(\"video-thumbnail\").src = step.video.thumbnail\r\n            document.getElementById(\"video-title\").textContent = step.video.title\r\n        }\r\n\r\n        \/\/ Play video\r\n        function playVideo() {\r\n            const step = stepData[currentStep]\r\n            const thumbnail = document.getElementById(\"video-thumbnail\")\r\n            const overlay = document.getElementById(\"video-overlay\")\r\n            const iframe = document.getElementById(\"video-iframe\")\r\n\r\n            thumbnail.style.display = \"none\"\r\n            overlay.style.display = \"none\"\r\n            iframe.style.display = \"block\"\r\n            iframe.src = step.video.embedUrl + \"?autoplay=1\"\r\n\r\n            playingVideos[currentStep] = true\r\n        }\r\n\r\n        \/\/ Reset video\r\n        function resetVideo() {\r\n            const thumbnail = document.getElementById(\"video-thumbnail\")\r\n            const overlay = document.getElementById(\"video-overlay\")\r\n            const iframe = document.getElementById(\"video-iframe\")\r\n\r\n            thumbnail.style.display = \"block\"\r\n            overlay.style.display = \"flex\"\r\n            iframe.style.display = \"none\"\r\n            iframe.src = \"\"\r\n\r\n            playingVideos[currentStep] = false\r\n        }\r\n\r\n        \/\/ Toggle tip\r\n        function toggleTip(index) {\r\n            const tipItem = document.querySelectorAll(\".belka-tip-item\")[index]\r\n            const expanded = tipItem.querySelector(\".belka-tip-expanded\")\r\n            const arrow = tipItem.querySelector(\".belka-tip-arrow\")\r\n\r\n            if (tipItem.classList.contains(\"expanded\")) {\r\n                tipItem.classList.remove(\"expanded\")\r\n                expanded.style.display = \"none\"\r\n            } else {\r\n                \/\/ Close all other tips\r\n                document.querySelectorAll(\".belka-tip-item\").forEach((item) => {\r\n                    item.classList.remove(\"expanded\")\r\n                    item.querySelector(\".belka-tip-expanded\").style.display = \"none\"\r\n                })\r\n\r\n                \/\/ Open this tip\r\n                tipItem.classList.add(\"expanded\")\r\n                expanded.style.display = \"block\"\r\n            }\r\n        }\r\n\r\n        \/\/ Initialize the component\r\n        init();\r\n\r\n        \/\/ Tabs functionality\r\n        const tabButtons = document.querySelectorAll('.tab-button');\r\n        const tabContents = document.querySelectorAll('.tab-content');\r\n\r\n        tabButtons.forEach(button => {\r\n            button.addEventListener('click', () => {\r\n                const tabId = button.getAttribute('data-tab');\r\n\r\n                \/\/ Remove active class from all buttons and contents\r\n                tabButtons.forEach(btn => btn.classList.remove('active'));\r\n                tabContents.forEach(content => content.classList.remove('active'));\r\n\r\n                \/\/ Add active class to clicked button and corresponding content\r\n                button.classList.add('active');\r\n                document.getElementById(`${tabId}-content`).classList.add('active');\r\n            });\r\n        });\r\n\r\n        \/\/ Accordion functionality\r\n        const accordionButtons = document.querySelectorAll('.accordion-button');\r\n\r\n        accordionButtons.forEach(button => {\r\n            button.addEventListener('click', () => {\r\n                const content = button.nextElementSibling;\r\n                const isActive = button.classList.contains('active');\r\n\r\n                \/\/ Close all accordions\r\n                accordionButtons.forEach(btn => {\r\n                    btn.classList.remove('active');\r\n                    btn.nextElementSibling.style.maxHeight = null;\r\n                });\r\n\r\n                \/\/ If the clicked accordion wasn't active, open it\r\n                if (!isActive) {\r\n                    button.classList.add('active');\r\n                    content.style.maxHeight = content.scrollHeight + 'px';\r\n                }\r\n            });\r\n        });\r\n\r\n        \/\/ Open first accordion by default\r\n        if (accordionButtons.length > 0) {\r\n            accordionButtons[0].click();\r\n        }\r\n\r\n        \/\/ Smooth scrolling for anchor links\r\n        document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\r\n            anchor.addEventListener('click', function (e) {\r\n                e.preventDefault();\r\n\r\n                const targetId = this.getAttribute('href');\r\n                if (targetId === '#') return;\r\n\r\n                const targetElement = document.querySelector(targetId);\r\n                if (targetElement) {\r\n                    window.scrollTo({\r\n                        top: targetElement.offsetTop + 200,\r\n                        behavior: 'smooth'\r\n                    });\r\n                }\r\n            });\r\n        });\r\n\r\n        \/\/ Image hover effects\r\n        const images = document.querySelectorAll('.main-image img, .detail-image img');\r\n\r\n        images.forEach(img => {\r\n            img.addEventListener('mouseenter', () => {\r\n                img.style.transform = 'scale(1.05)';\r\n            });\r\n\r\n            img.addEventListener('mouseleave', () => {\r\n                img.style.transform = 'scale(1)';\r\n            });\r\n        });\r\n\r\n        const collections = document.querySelectorAll('.collection-card');\r\n\r\n        collections.forEach(collection => {\r\n            const mainImage = collection.querySelector('.main-image img');\r\n            const detailImages = collection.querySelectorAll('.detail-image img');\r\n\r\n            \/\/ Add click handlers to detail images\r\n            detailImages.forEach(detailImg => {\r\n                detailImg.addEventListener('click', function () {\r\n                    \/\/ Update main image with detail image source and alt\r\n                    mainImage.src = this.src;\r\n                    mainImage.alt = this.alt;\r\n                });\r\n\r\n                \/\/ Add hover cursor style\r\n                detailImg.style.cursor = 'pointer';\r\n            });\r\n        });\r\n\r\n        \/\/ Fetch products from WordPress\r\n        fetch('https:\/\/gobelka.com\/de\/wp-admin\/admin-ajax.php?action=get_custom_woocommerce_products')\r\n            .then(res => res.json())\r\n            .then(data => {\r\n                data = data.map(product => ({\r\n                    ...product,\r\n                    name: product.name.split('-')[0].trim().replace('Belka ', '') \/\/ Format name for all products\r\n                }));\r\n\r\n                data.forEach(product => {\r\n                    const variations = product.variations.filter(v =>\r\n                        ['1kg', '3kg', '5kg'].includes(v.attributes.pa_packmass)\r\n                    );\r\n\r\n                    if (variations.length > 0) {\r\n                        const colorItems = document.querySelectorAll(`.color-item[data-product-id=\"${product.id}\"]`);\r\n                        colorItems.forEach(colorItem => {\r\n                            const packageOptionsContainer = colorItem.querySelector('.color-package-options');\r\n                            const quanitcontrol = colorItem.querySelector('.quantity-controlsx');\r\n                            const availableVariations = variations.filter(v => v.is_in_stock);\r\n\r\n                            if (availableVariations.length === 0) {\r\n                                \/\/ Show product selection modal for out of stock items\r\n                                const similarProducts = data.filter(p =>\r\n                                    p.id !== product.id &&\r\n                                    p.variations.some(v => v.is_in_stock)\r\n                                );\r\n\r\n                                \/\/ Store similarProducts on the button for modal use\r\n                                packageOptionsContainer.innerHTML = `\r\n                                    <div class=\"out-of-stock-message\" data-old-product-id=\"${product.id}\">\r\nZurzeit nicht verf\u00fcgbar. Jetzt Alternativen ansehen                                    \r\n                                    <\/div>`;\r\n                                packageOptionsContainer.style.display = 'grid';\r\n                                packageOptionsContainer.style.gridTemplateColumns = 'unset';\r\n                                quanitcontrol.style.display = 'none';\r\n\r\n                                \/\/ Attach click handler to open modal\r\n                                setTimeout(() => {\r\n                                    const btn = packageOptionsContainer.querySelector('.out-of-stock-message');\r\n                                    if (btn) {\r\n                                        btn.addEventListener('click', function () {\r\n                                            window.showAlternativeModal(similarProducts, product.id, colorItem);\r\n                                        });\r\n                                    }\r\n                                }, 0);\r\n                            } else {\r\n                                \/\/ Show all possible package sizes, marking unavailable ones\r\n                                const allSizes = ['1kg', '3kg', '5kg'];\r\n                                packageOptionsContainer.innerHTML = allSizes.map(size => {\r\n                                    const variation = variations.find(v => v.attributes.pa_packmass === size);\r\n                                    if (!variation) {\r\n                                        return `<button class=\"package-option not-available\" disabled>\r\n                                            <s>${size}<\/s><br>\r\n                                            <small>Nicht verf\u00fcgbar<\/small>\r\n                                        <\/button>`;\r\n                                    }\r\n                                    const isInStock = variation.is_in_stock;\r\n                                    return `\r\n                                        <button class=\"package-option ${!isInStock ? 'out-of-stock' : ''}\" \r\n                                            data-variation-id=\"${variation.id}\"\r\n                                            data-price=\"${variation.price}\"\r\n                                            data-stock=\"${variation.stock_quantity}\"\r\n                                            ${!isInStock ? 'disabled' : ''}\r\n                                            onclick=\"selectPackage(this, '${size}', ${variation.price})\">\r\n                                            ${!isInStock ? '<s>' : ''}${size}${!isInStock ? '<\/s>' : ''}\r\n                        \r\n                                        <\/button>\r\n                                    `;\r\n                                }).join('');\r\n\r\n                                \/\/ Update the replaceProduct function to handle unavailable sizes\r\n                                window.replaceProduct = function (select, oldProductId) {\r\n                                    if (!select.value) return;\r\n\r\n\r\n                                    const option = select.selectedOptions[0];\r\n                                    const newProductData = {\r\n                                        id: select.value,\r\n                                        name: option.dataset.name.split('-')[0].trim().replace('Belka ', ''),\r\n                                        color: option.dataset.color,\r\n                                        variations: JSON.parse(option.dataset.variations)\r\n                                    };\r\n\r\n                                    const colorItem = select.closest('.color-item');\r\n                                    const swatch = colorItem.querySelector('.color-swatch');\r\n                                    const nameElement = colorItem.querySelector('.color-name');\r\n\r\n                                    \/\/ Update the color item with new product data\r\n                                    colorItem.setAttribute('data-product-id', newProductData.id);\r\n                                    if (newProductData.color) {\r\n                                        extractCenterColor(newProductData.color)\r\n                                            .then(color => {\r\n                                                swatch.style.backgroundColor = color;\r\n                                            })\r\n                                            .catch(() => {\r\n                                                \/\/ Fallback to default color if extraction fails\r\n                                                swatch.style.backgroundColor = '#000000';\r\n                                            });\r\n                                    }\r\n\r\n\r\n                                    nameElement.textContent = newProductData.name;\r\n\r\n                                    \/\/ Replace package options with new variations\r\n                                    const packageOptionsContainer = colorItem.querySelector('.color-package-options');\r\n                                    const quantityControls = colorItem.querySelector('.quantity-controlsx');\r\n                                    const availableVariations = newProductData.variations.filter(v => v.is_in_stock);\r\n\r\n                                    \/\/ Show all possible sizes for new product\r\n                                    packageOptionsContainer.innerHTML = allSizes.map(size => {\r\n                                        const variation = newProductData.variations.find(v =>\r\n                                            v.attributes.pa_packmass === size\r\n                                        );\r\n                                        if (!variation) {\r\n                                            return `<button class=\"package-option not-available\" disabled>\r\n                                                <s>${size}<\/s><br>\r\n                                                <small>Nicht verf\u00fcgbar<\/small>\r\n                                            <\/button>`;\r\n                                        }\r\n                                        const isInStock = variation.is_in_stock;\r\n                                        return `\r\n                                            <button class=\"package-option ${!isInStock ? 'out-of-stock' : ''}\" \r\n                                                data-variation-id=\"${variation.id}\"\r\n                                                data-price=\"${variation.price}\"\r\n                                                data-stock=\"${variation.stock_quantity}\"\r\n                                                ${!isInStock ? 'disabled' : ''}\r\n                                                onclick=\"selectPackage(this, '${size}', ${variation.price})\">\r\n                                                ${!isInStock ? '<s>' : ''}${size}${!isInStock ? '<\/s>' : ''}\r\n                                   \r\n                                            <\/button>\r\n                                        `;\r\n                                    }).join('');\r\n\r\n                                    packageOptionsContainer.style.display = 'flex';\r\n\r\n\r\n                                    \/\/ Select first available variation\r\n                                    const firstOption = packageOptionsContainer.querySelector('.package-option');\r\n                                    if (firstOption) {\r\n                                        firstOption.click();\r\n                                    }\r\n                                };\r\n\r\n                                \/\/ Select first available size\r\n                                const defaultButton = packageOptionsContainer.querySelector('.package-option:not(.out-of-stock):not(.not-available)');\r\n                                if (defaultButton) {\r\n                                    selectPackage(\r\n                                        defaultButton,\r\n                                        availableVariations[0].attributes.pa_packmass,\r\n                                        availableVariations[0].price\r\n                                    );\r\n                                }\r\n                            }\r\n                        });\r\n                    }\r\n                });\r\n            });\r\n\r\n\r\n        \/\/ Add this before replaceProduct function\r\n        window.extractCenterColor = function (imageUrl) {\r\n            return new Promise((resolve, reject) => {\r\n                const img = new Image();\r\n                img.crossOrigin = \"Anonymous\";\r\n                img.onload = function () {\r\n                    const canvas = document.createElement('canvas');\r\n                    const ctx = canvas.getContext('2d');\r\n                    canvas.width = img.width;\r\n                    canvas.height = img.height;\r\n                    ctx.drawImage(img, 0, 0);\r\n\r\n                    \/\/ Get center pixel color\r\n                    const centerX = Math.floor(img.width \/ 2);\r\n                    const centerY = Math.floor(img.height \/ 2);\r\n                    const pixel = ctx.getImageData(centerX, centerY, 1, 1).data;\r\n                    const color = `rgb(${pixel[0]}, ${pixel[1]}, ${pixel[2]})`;\r\n                    resolve(color);\r\n                };\r\n                img.onerror = reject;\r\n                img.src = imageUrl;\r\n            });\r\n        };\r\n\r\n        \/\/ Update updateQuantity function\r\n        window.updateQuantity = function (element, change) {\r\n            const quantitySpan = element.parentElement.querySelector('.quantity');\r\n            let currentQuantity = parseInt(quantitySpan.textContent);\r\n            const colorItem = element.closest('.color-item');\r\n            const activePackage = colorItem.querySelector('.package-option.active');\r\n\r\n            if (!activePackage) return;\r\n\r\n            const maxStock = parseInt(activePackage.getAttribute('data-stock'));\r\n            const newQuantity = currentQuantity + change;\r\n\r\n            \/\/ Check stock and minimum quantity constraints\r\n            if (newQuantity < 1 || newQuantity > maxStock) return;\r\n\r\n            quantitySpan.textContent = newQuantity;\r\n\r\n            \/\/ Update price\r\n            const priceElement = colorItem.querySelector('.color-price');\r\n            const basePrice = parseFloat(activePackage.getAttribute('data-price'));\r\n            const newPrice = (basePrice * newQuantity).toFixed(2);\r\n            priceElement.textContent = `${newPrice} \u20ac`;\r\n\r\n            \/\/ Update button states\r\n            const decreaseBtn = element.parentElement.querySelector('.quantity-button:first-child');\r\n            const increaseBtn = element.parentElement.querySelector('.quantity-button:last-child');\r\n\r\n            decreaseBtn.disabled = newQuantity <= 1;\r\n            increaseBtn.disabled = newQuantity >= maxStock;\r\n\r\n            \/\/ --- Ekle: Toplamlar\u0131 g\u00fcncelle ---\r\n            window.updateCollectionTotals && window.updateCollectionTotals();\r\n        };\r\n\r\n        \/\/ Update selectPackage function\r\n        window.selectPackage = function (element, size, price) {\r\n            if (element.disabled) return;\r\n            \r\n            const colorItem = element.closest('.color-item');\r\n\r\n            \/\/ Remove active class from all package options\r\n            colorItem.querySelectorAll('.package-option').forEach(btn => {\r\n                btn.classList.remove('active');\r\n            });\r\n\r\n            \/\/ Add active class with a slight delay for better touch feedback\r\n            setTimeout(() => {\r\n                element.classList.add('active');\r\n            }, 50);\r\n\r\n            \/\/ Reset quantity to 1\r\n            const quantitySpan = colorItem.querySelector('.quantity');\r\n            quantitySpan.textContent = '1';\r\n\r\n            \/\/ Update price display\r\n            const priceElement = colorItem.querySelector('.color-price');\r\n            priceElement.textContent = `${parseFloat(price).toFixed(2)} \u20ac`;\r\n\r\n            \/\/ Update quantity control buttons\r\n            const stock = parseInt(element.getAttribute('data-stock'));\r\n            const decreaseBtn = colorItem.querySelector('.quantity-button:first-child');\r\n            const increaseBtn = colorItem.querySelector('.quantity-button:last-child');\r\n\r\n            decreaseBtn.disabled = true; \/\/ Quantity is 1\r\n            increaseBtn.disabled = stock <= 1;\r\n\r\n            \/\/ --- Ekle: Toplamlar\u0131 g\u00fcncelle ---\r\n            window.updateCollectionTotals && window.updateCollectionTotals();\r\n        };\r\n\r\n        \/\/ Image zoom functionality\r\n        const imageContainers = document.querySelectorAll('.image-zoom-container');\r\n\r\n        imageContainers.forEach(container => {\r\n            const img = container.querySelector('img');\r\n\r\n            container.addEventListener('mousemove', (e) => {\r\n                const { offsetX, offsetY, target } = e;\r\n                const { clientWidth, clientHeight } = target;\r\n\r\n                \/\/ Calculate the position to move the image\r\n                const x = (offsetX \/ clientWidth) * 100;\r\n                const y = (offsetY \/ clientHeight) * 100;\r\n\r\n                img.style.transform = `translate(-${x}%, -${y}%) scale(2)`;\r\n            });\r\n\r\n            container.addEventListener('mouseleave', () => {\r\n                img.style.transform = 'translate(-50%, -50%) scale(1)';\r\n            });\r\n        });\r\n\r\n        \/\/ Add to cart function for WooCommerce (woodmart_ajax_add_to_cart)\r\n        function addToCart(productId, variationId, quantity, packageSize) {\r\n            const formData = new FormData();\r\n            formData.append('action', 'woodmart_ajax_add_to_cart');\r\n            formData.append('product_id', productId);\r\n            formData.append('variation_id', variationId);\r\n            formData.append('quantity', quantity);\r\n            formData.append('add-to-cart', productId);\r\n            formData.append('attribute_pa_packmass', packageSize);\r\n\r\n            return fetch('https:\/\/gobelka.com\/de\/wp-admin\/admin-ajax.php', {\r\n                method: 'POST',\r\n                credentials: 'include',\r\n                body: formData\r\n            }).then(response => {\r\n                if (!response.ok) throw new Error('Network error');\r\n                return response.text();\r\n            });\r\n        }\r\n\r\n        \/\/ Collection add to cart button handler\r\n        function handleCollectionAddToCart(event) {\r\n            event.preventDefault();\r\n            const collection = event.target.closest('.collection-card');\r\n            const colorItems = collection.querySelectorAll('.color-item');\r\n            let allProductsHaveSelectedPackage = true;\r\n\r\n            \/\/ Sadece se\u00e7ili ve aktif paketli \u00fcr\u00fcnleri topla\r\n            const selectedProducts = [];\r\n            colorItems.forEach(item => {\r\n                const productId = item.getAttribute('data-product-id');\r\n                const activePackage = item.querySelector('.package-option.active');\r\n                if (!activePackage || !productId) {\r\n                    allProductsHaveSelectedPackage = false;\r\n                } else {\r\n                    selectedProducts.push({\r\n                        productId: productId,\r\n                        variationId: activePackage.getAttribute('data-variation-id'),\r\n                        packageSize: activePackage.textContent.replace(\/<[^>]*>?\/gm, '').trim(),\r\n                        quantity: parseInt(item.querySelector('.quantity').textContent)\r\n                    });\r\n                }\r\n            });\r\n\r\n            const cartBtn = collection.querySelector('.collection-actions .button.primary');\r\n            if (!allProductsHaveSelectedPackage) {\r\n                cartBtn.disabled = true;\r\n                cartBtn.title = \"Bitte w\u00e4hlen Sie f\u00fcr alle Produkte ein Paket aus.\";\r\n                return;\r\n            }\r\n\r\n            cartBtn.disabled = false;\r\n            cartBtn.title = \"\";\r\n\r\n            \/\/ --- Sepete ekleme i\u015flemi ---\r\n            cartBtn.disabled = true;\r\n            const originalText = cartBtn.textContent;\r\n            cartBtn.textContent = \"Wird hinzugef\u00fcgt...\";\r\n\r\n            \/\/ Sepete eklemeleri ard\u0131\u015f\u0131k yap\r\n            (async function sequentialAdd() {\r\n                try {\r\n                    for (const prod of selectedProducts) {\r\n                        await addToCart(prod.productId, prod.variationId, prod.quantity, prod.packageSize);\r\n                    }\r\n                    if (typeof jQuery !== 'undefined') {\r\n                        jQuery(document.body).trigger('added_to_cart').trigger('wc_fragment_refresh');\r\n                    }\r\n                    const successMessage = document.createElement('div');\r\n                    successMessage.className = 'woocommerce-message';\r\n                    successMessage.innerHTML = 'Produkte wurden erfolgreich in den Warenkorb gelegt! <a href=\"\/warenkorb\/\" class=\"button wc-forward\">Zum Warenkorb<\/a>';\r\n                    collection.insertAdjacentElement('beforebegin', successMessage);\r\n                    cartBtn.textContent = \"Zum Warenkorb hinzugef\u00fcgt!\";\r\n                    setTimeout(() => {\r\n                        cartBtn.textContent = originalText;\r\n                        cartBtn.disabled = false;\r\n                        successMessage.remove();\r\n                    }, 1500);\r\n                } catch (e) {\r\n                    const errorMessage = document.createElement('div');\r\n                    errorMessage.className = 'woocommerce-error';\r\n                    errorMessage.textContent = 'Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.';\r\n                    collection.insertAdjacentElement('beforebegin', errorMessage);\r\n                    cartBtn.textContent = \"Fehler beim Hinzuf\u00fcgen!\";\r\n                    setTimeout(() => {\r\n                        cartBtn.textContent = originalText;\r\n                        cartBtn.disabled = false;\r\n                        errorMessage.remove();\r\n                    }, 2000);\r\n                }\r\n            })();\r\n        }\r\n\r\n        \/\/ --- STOCK CHECK FOR \"IN DEN WARENKORB\" BUTTON ---\r\n        window.updateCollectionCartButtons = function () {\r\n            document.querySelectorAll('.collection-card').forEach(card => {\r\n                const colorItems = card.querySelectorAll('.color-item');\r\n                let allProductsHaveSelectedPackage = true;\r\n\r\n                colorItems.forEach(item => {\r\n                    const activePackage = item.querySelector('.package-option.active');\r\n                    if (!activePackage) {\r\n                        allProductsHaveSelectedPackage = false;\r\n                    }\r\n                });\r\n\r\n                const cartBtn = card.querySelector('.collection-actions .button.primary');\r\n                if (cartBtn) {\r\n                    cartBtn.disabled = !allProductsHaveSelectedPackage;\r\n                    cartBtn.title = allProductsHaveSelectedPackage\r\n                        ? \"\"\r\n                        : \"Bitte w\u00e4hlen Sie f\u00fcr alle Produkte ein Paket aus.\";\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ \u0130lk y\u00fcklemede \u00e7al\u0131\u015ft\u0131r\r\n        updateCollectionCartButtons();\r\n\r\n        \/\/ Fetch sonras\u0131 tekrar kontrol et\r\n        const originalFetch = window.fetch;\r\n        window.fetch = function () {\r\n            return originalFetch.apply(this, arguments).then(res => {\r\n                \/\/ fetch sonras\u0131 \u00fcr\u00fcnler g\u00fcncellenmi\u015f olabilir, k\u0131sa bir gecikmeyle kontrol et\r\n                setTimeout(updateCollectionCartButtons, 500);\r\n                return res;\r\n            });\r\n        };\r\n\r\n        \/\/ Initialize cart functionality\r\n        document.querySelectorAll('.collection-actions .button.primary').forEach(button => {\r\n            button.addEventListener('click', handleCollectionAddToCart);\r\n        });\r\n    });\r\n\r\n    \/\/ --- Move this block OUTSIDE of DOMContentLoaded ---\r\n    window.showAlternativeModal = function (similarProducts, oldProductId, colorItem) {\r\n        const modal = document.getElementById('alternative-modal');\r\n        const modalTitle = document.getElementById('alternative-modal-title');\r\n        const list = document.getElementById('alternative-modal-list');\r\n        const searchInput = document.getElementById('alternative-modal-search');\r\n        let filteredProducts = similarProducts.slice();\r\n\r\n        function renderList() {\r\n            list.innerHTML = filteredProducts.length\r\n                ? filteredProducts.map(p => `\r\n                    <div class=\"product-item\" style=\"cursor:pointer;\" tabindex=\"0\"\r\n                        data-id=\"${p.id}\"\r\n                        data-name=\"${p.name.split('-')[0].trim().replace('Belka ', '')}\"\r\n                        data-color=\"${p.image || ''}\"\r\n                        data-variations='${JSON.stringify(p.variations)}'>\r\n                        <img decoding=\"async\" src=\"${p.image || ''}\" alt=\"${p.name}\" style=\"width:40px;height:40px;object-fit:cover;border-radius:6px;margin-right:10px;\">\r\n                        <div class=\"product-item-info\" style=\"display:inline-block;vertical-align:middle;\">\r\n                            <div class=\"product-item-name\" style=\"font-weight:500;\">${p.name}<\/div>\r\n                            <div class=\"product-item-details\" style=\"font-size:0.95em;color:#666;\">\r\n                                ${getProductPriceAndM2(p)}\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                `).join('')\r\n                : `<div style=\"padding:1rem;color:#888;\">Keine Produkte gefunden<\/div>`;\r\n\r\n            \/\/ Option click handler\r\n            list.querySelectorAll('.product-item').forEach(btn => {\r\n                btn.onclick = function () {\r\n                    const newProductData = {\r\n                        id: btn.dataset.id,\r\n                        name: btn.dataset.name,\r\n                        color: btn.dataset.color,\r\n                        variations: JSON.parse(btn.dataset.variations)\r\n                    };\r\n                    const swatch = colorItem.querySelector('.color-swatch');\r\n                    const nameElement = colorItem.querySelector('.color-name');\r\n                    colorItem.setAttribute('data-product-id', newProductData.id);\r\n                    if (newProductData.color) {\r\n                        extractCenterColor(newProductData.color)\r\n                            .then(color => {\r\n                                swatch.style.backgroundColor = color;\r\n                            })\r\n                            .catch(() => {\r\n                                swatch.style.backgroundColor = '#000000';\r\n                            });\r\n                    }\r\n                    nameElement.textContent = newProductData.name;\r\n                    const packageOptionsContainer = colorItem.querySelector('.color-package-options');\r\n                    const quantityControls = colorItem.querySelector('.quantity-controlsx');\r\n                    const allSizes = ['1kg', '3kg', '5kg'];\r\n                    packageOptionsContainer.innerHTML = allSizes.map(size => {\r\n                        const variation = newProductData.variations.find(v =>\r\n                            v.attributes.pa_packmass === size\r\n                        );\r\n                        if (!variation) {\r\n                            return `<button class=\"package-option not-available\" disabled>\r\n                                <s>${size}<\/s><br>\r\n                                <small>Nicht verf\u00fcgbar<\/small>\r\n                            <\/button>`;\r\n                        }\r\n                        const isInStock = variation.is_in_stock;\r\n                        return `\r\n                            <button class=\"package-option ${!isInStock ? 'out-of-stock' : ''}\" \r\n                                data-variation-id=\"${variation.id}\"\r\n                                data-price=\"${variation.price}\"\r\n                                data-stock=\"${variation.stock_quantity}\"\r\n                                ${!isInStock ? 'disabled' : ''}\r\n                                onclick=\"selectPackage(this, '${size}', ${variation.price})\">\r\n                                ${!isInStock ? '<s>' : ''}${size}${!isInStock ? '<\/s>' : ''}\r\n                            <\/button>\r\n                        `;\r\n                    }).join('');\r\n                    packageOptionsContainer.style.display = 'flex';\r\n                    quantityControls.style.display = 'block';\r\n                    \/\/ Select first available variation\r\n                    const firstOption = packageOptionsContainer.querySelector('.package-option');\r\n                    if (firstOption) {\r\n                        firstOption.click();\r\n                    }\r\n                    modal.classList.remove('active');\r\n                    \/\/ --- Ekle: Butonlar\u0131 g\u00fcncelle ---\r\n                    updateCollectionCartButtons();\r\n                };\r\n                \/\/ Keyboard accessibility\r\n                btn.onkeydown = function (e) {\r\n                    if (e.key === \"Enter\" || e.key === \" \") btn.click();\r\n                };\r\n            });\r\n        }\r\n\r\n        function getProductPriceAndM2(p) {\r\n            \/\/ Find first in-stock variation\r\n            let v = Array.isArray(p.variations) ? p.variations.find(v => v.is_in_stock) : null;\r\n            if (!v && Array.isArray(p.variations)) v = p.variations[0];\r\n            if (v) {\r\n                let m2 = v.attributes && v.attributes.pa_packmass === '1kg' ? 3 : v.attributes.pa_packmass === '3kg' ? 9 : v.attributes.pa_packmass === '5kg' ? 15 : '';\r\n                return `${parseFloat(v.price).toFixed(2)} \u20ac${m2 ? ' - ' + m2 + ' m\u00b2' : ''}`;\r\n            }\r\n            return '';\r\n        }\r\n\r\n        modalTitle.textContent = 'Alternative w\u00e4hlen';\r\n        searchInput.value = '';\r\n        filteredProducts = similarProducts.slice();\r\n        renderList();\r\n        modal.classList.add('active');\r\n        searchInput.focus();\r\n\r\n        searchInput.oninput = function () {\r\n            const q = searchInput.value.trim().toLowerCase();\r\n            filteredProducts = similarProducts.filter(p =>\r\n                p.name.toLowerCase().includes(q)\r\n            );\r\n            renderList();\r\n        };\r\n\r\n        \/\/ Close modal\r\n        document.getElementById('close-alternative-modal').onclick = function () {\r\n            modal.classList.remove('active');\r\n        };\r\n        \/\/ Close on outside click\r\n        modal.onclick = function (e) {\r\n            if (e.target === modal) modal.classList.remove('active');\r\n        };\r\n    };\r\n\r\n    \/\/ --- Add after window.updateCollectionCartButtons ---\r\n    window.updateCollectionTotals = function () {\r\n        document.querySelectorAll('.collection-card').forEach(card => {\r\n            let totalPrice = 0;\r\n            let totalM2 = 0;\r\n            card.querySelectorAll('.color-item').forEach(item => {\r\n                const activePackage = item.querySelector('.package-option.active');\r\n                if (activePackage) {\r\n                    const price = parseFloat(activePackage.getAttribute('data-price')) || 0;\r\n                    const qty = parseInt(item.querySelector('.quantity').textContent) || 1;\r\n                    totalPrice += price * qty;\r\n\r\n                    \/\/ m\u00b2 calculation based on package size\r\n                    let m2 = 0;\r\n                    const size = activePackage.textContent.replace(\/<[^>]*>?\/gm, '').replace(\/[^0-9kg]\/g, '').trim();\r\n                    if (size === '1kg') m2 = 3;\r\n                    else if (size === '3kg') m2 = 9;\r\n                    else if (size === '5kg') m2 = 15;\r\n                    totalM2 += m2 * qty;\r\n                }\r\n            });\r\n            \/\/ Update summary row\r\n            const priceElem = card.querySelector('.collection-total-price');\r\n            const m2Elem = card.querySelector('.collection-total-m2');\r\n            if (priceElem) priceElem.textContent = totalPrice.toFixed(2).replace('.', ',') + ' \u20ac';\r\n            if (m2Elem) m2Elem.textContent = totalM2 + ' m\u00b2';\r\n        });\r\n    };\r\n\r\n    \/\/ Call updateCollectionTotals whenever relevant UI changes\r\n    \/\/ Patch into selectPackage and updateQuantity\r\n    const origSelectPackage = window.selectPackage;\r\n    window.selectPackage = function () {\r\n        origSelectPackage.apply(this, arguments);\r\n        window.updateCollectionTotals();\r\n        window.updateCollectionCartButtons && window.updateCollectionCartButtons();\r\n    };\r\n    const origUpdateQuantity = window.updateQuantity;\r\n    window.updateQuantity = function () {\r\n        origUpdateQuantity.apply(this, arguments);\r\n        window.updateCollectionTotals();\r\n    };\r\n\r\n    \/\/ Initial call after DOM ready\r\n    window.updateCollectionTotals();\r\n\r\n    \/\/ Also update after product replacement (alternative modal)\r\n    const origShowAlternativeModal = window.showAlternativeModal;\r\n    window.showAlternativeModal = function () {\r\n        origShowAlternativeModal.apply(this, arguments);\r\n        setTimeout(window.updateCollectionTotals, 300);\r\n    };\r\n\r\n\r\n  \/\/ VAR OLAN ELEMANLAR\r\n  const widthInput = document.getElementById('wall-width');\r\n  const heightInput = document.getElementById('wall-height');\r\n  const totalArea = document.getElementById('total-areax');\r\n\r\n  \/\/ YEN\u0130: KG BLO\u011eUNU HTML'E DOKUNMADAN EKLE\r\n  const layout = document.querySelector('.calculator-layout');\r\n  if (layout && !document.getElementById('belka-kg')) {\r\n    layout.insertAdjacentHTML('beforeend', `\r\n      <div class=\"calculator-result\" aria-live=\"polite\">\r\n        <span>Ben\u00f6tigte Belka-Menge*:<\/span>\r\n        <strong id=\"belka-kg\">0.0 kg<\/strong>\r\n        <small style=\"display:block;opacity:.75\">\r\n          *Richtwert: 1&nbsp;kg \u2248 3&nbsp;m\u00b2. Empfohlen: <b id=\"belka-kg-rounded\">0 kg<\/b>.\r\n        <\/small>\r\n      <\/div>\r\n    `);\r\n  }\r\n\r\n  \/\/ YEN\u0130: KG \u00c7IKTISI REFERANSLARI\r\n  const belkaKg = document.getElementById('belka-kg');\r\n  const belkaKgRounded = document.getElementById('belka-kg-rounded');\r\n\r\n  function calculateArea() {\r\n    const width = parseFloat(widthInput.value) || 0;\r\n    const height = parseFloat(heightInput.value) || 0;\r\n    const area = width * height;\r\n\r\n    \/\/ Toplam alan\r\n    totalArea.textContent = `${area.toFixed(1)} m\u00b2`;\r\n\r\n    \/\/ 1 kg \u2248 3 m\u00b2  \u2192 kg = alan \/ 3\r\n    const kg = area \/ 3;\r\n\r\n    \/\/ Yeni blok varsa g\u00fcncelle\r\n    if (belkaKg) belkaKg.textContent = `${kg.toFixed(1)} kg`;\r\n    if (belkaKgRounded) belkaKgRounded.textContent = `${Math.ceil(kg)} kg`;\r\n  }\r\n\r\n  widthInput.addEventListener('input', calculateArea);\r\n  heightInput.addEventListener('input', calculateArea);\r\n\r\n  \/\/ \u0130lk hesap\r\n  calculateArea();\r\n\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>100% Nat\u00fcrlich K\u00fcnstlerischer Touch f\u00fcr Ihre W\u00e4nde mit Belka Mix Belka Mix erm\u00f6glicht es Ihnen, mit seiner nat\u00fcrlichen Baumwollstruktur 2,<\/p>\n","protected":false},"author":7,"featured_media":34890,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-31510","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/pages\/31510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/comments?post=31510"}],"version-history":[{"count":1204,"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/pages\/31510\/revisions"}],"predecessor-version":[{"id":44633,"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/pages\/31510\/revisions\/44633"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/media\/34890"}],"wp:attachment":[{"href":"https:\/\/gobelka.com\/de\/wp-json\/wp\/v2\/media?parent=31510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}