{"title":"Bademode","description":"\u003cp\u003eHier stellen wir euch Badeanzüge, Bikinis, Highwaist Badeanzüge , Highwaist Bikinis, Triangel Bikinis und weitere Modelle vor. \u003c\/p\u003e\n\u003c!----\u003e","products":[{"product_id":"schlankmachener-tailienshaping-badeanzug-damen","title":"Leopardenmuster Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der am Strand genauso sitzt wie im Wasser?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Einteiler einfach passt – ohne dass man nachdenken muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages zeigt sich oft, ob ein Badeanzug wirklich mitgeht – oder ob er ständig kleine Aufmerksamkeit braucht.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen Leopardenmuster mit schwarzen Akzenten – für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Einteiler im dezenten Leopardenmuster mit schwarzen Streifen und Akzenten – ausgelegt für Tage, an denen man vom Wasser auf die Liege wechselt, ohne zweimal darüber nachzudenken.\u003c\/p\u003e\n\u003cp\u003eDas Leopardenmuster dieses Badeanzugs bewegt sich zwischen Animal-Print und Alltagstauglichkeit. Die schwarzen Linien und Akzente halten das Muster ruhig – es wirkt eher wie eine strukturierte Textur als wie ein lautes Statement. Wer Muster mag, die aus der Nähe interessant sind, aber auf Distanz zurückhaltend bleiben, findet hier einen Einteiler, der beides kann.\u003c\/p\u003e\n\u003cp\u003eAm Bodenseeufer, wenn man aus dem Wasser steigt und sich das Handtuch um die Schultern legt: Das Leopardenmuster braucht keinen weiteren Zusatz. Oder am Pool, auf der Liege, mit einer Sonnenbrille – der schwarze Grundton verbindet sich mit dem Muster so, dass der Badeanzug auch neben anderen Farben ruhig bleibt. Kombiniert mit einem schwarzen Pareo oder einem einfarbigen Strandtuch wirkt er wie ein bewusst gewähltes Stück, nicht wie ein Zufallskauf.\u003c\/p\u003e\n\u003cp\u003eFür einen Urlaub, bei dem man nicht täglich neu überlegen möchte, was man anzieht. Für einen Nachmittag am See, bei dem der Badeanzug von der ersten bis zur letzten Stunde passen soll. Oder als Geschenk für jemanden, der Muster mag, aber keine grellen Farben – dieser Einteiler trifft diesen Ton ziemlich genau.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst ihn an und das Muster braucht keine Erklärung – es ist einfach da.\u003cbr\u003e• Auf der Liege wirkst du nicht overdressed und nicht unsichtbar – der Leopardenmuster Badeanzug Damen hält die Mitte.\u003cbr\u003e• Wer dezente Muster schätzt, die nicht verblassen – weder optisch noch nach dem Urlaub – könnte hier fündig werden.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du die richtige Größe gefunden hast, lässt sich der Rest gut einschätzen – der Größenrechner hilft dabei.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 64.0, \"bust_max\": 68.0, \"waist_min\": 62.0, \"waist_max\": 68.0, \"hip_min\": 72.0, \"hip_max\": 76.0}, {\"name\": \"M\", \"bust_min\": 68.0, \"bust_max\": 72.0, \"waist_min\": 68.0, \"waist_max\": 72.0, \"hip_min\": 76.0, \"hip_max\": 80.0}, {\"name\": \"L\", \"bust_min\": 72.0, \"bust_max\": 76.0, \"waist_min\": 72.0, \"waist_max\": 76.0, \"hip_min\": 80.0, \"hip_max\": 84.0}, {\"name\": \"XL\", \"bust_min\": 76.0, \"bust_max\": 80.0, \"waist_min\": 76.0, \"waist_max\": 80.0, \"hip_min\": 84.0, \"hip_max\": 88.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Muster: Leopardenmuster mit schwarzen Akzenten und Streifen\u003c\/li\u003e\n\u003cli\u003e✔ Typ: Einteiler \/ Badeanzug Damen\u003c\/li\u003e\n\u003cli\u003e✔ Pflegehinweis: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Leopardenmuster Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug beim Schwimmen unruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWie Schnitt und Passform den Unterschied machen können – ohne dass man es merkt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen oder Aufstehen\u003c\/li\u003e\n\u003cli\u003eDas Nass-Gefühl nach dem Baden bleibt zu lange unangenehm\u003c\/li\u003e\n\u003cli\u003eDie Größe online einzuschätzen ist bei Bademode schwierig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManche Badeanzüge sitzen beim ersten Anziehen gut – und fangen erst im Wasser an, sich zu verschieben. Man geht schwimmen, steigt wieder aus, und bemerkt, dass man nachziehen muss. Das ist kein dramatisches Problem, aber es kostet Aufmerksamkeit, die man eigentlich nicht aufwenden möchte.\u003c\/p\u003e\n\u003cp\u003eHäufig liegt das am Schnitt: Wenn der Einteiler nicht auf Bewegung im Wasser ausgelegt ist, können Schulterträger, Rückenpartie oder die untere Schnittkante anfangen zu wandern. Das Leopardenmuster-Modell ist auf stabilen Sitz bei Bewegung ausgelegt – ob beim Schwimmen selbst oder beim Aufstehen vom Wasser auf die Liege.\u003c\/p\u003e\n\u003cp\u003eWenn du eher ruhige Tage am Wasser magst – Liegen, kurze Badeeinheiten, Strandspaziergang – könnte dieser Einteiler gut passen. Für sehr intensive Schwimmeinheiten oder tägliches Leistungsschwimmen ist er weniger ausgelegt; da wäre ein sportlicher Wettkampf-Einteiler die passendere Wahl. Und wenn dir Muster grundsätzlich zu viel sind und du lieber bei Uni-Tönen bleibst, ist das natürlich auch eine vollständig gültige Entscheidung.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eFragst du dich, ob der Schnitt zu dir passt – vom Sitz her, nicht nur vom Muster?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe, falls der Sitz im Alltag nicht stimmt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Leopardenmuster mit schwarzen Akzenten wirkt alltagstauglich, nicht übertrieben\u003c\/li\u003e\n\u003cli\u003e→ Kombiniert sich ohne Extra-Planung mit neutralen Strandaccessoires\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Leopardenmuster mit schwarzen Akzenten – wirkt aus der Nähe interessant, auf Distanz ruhig\u003c\/li\u003e\n\u003cli\u003e✅ Ausgelegt auf stabilen Sitz bei Alltagsbewegungen im Wasser\u003c\/li\u003e\n\u003cli\u003e✅ Kombinierbar mit schwarzen oder neutralen Strandaccessoires ohne Mehraufwand\u003c\/li\u003e\n\u003cli\u003e✅ 30 Tage Rückgabe, falls Sitz oder Größe nicht passen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für tägliche intensive Schwimmeinheiten oder Leistungssport weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer Muster grundsätzlich meidet, findet in einfarbigen Modellen eine passendere Wahl\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Leopardenmuster Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen oder Aufstehen aus dem Wasser\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Alltagsbewegungen im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt am Strand zu laut oder auffällig\u003c\/td\u003e\n\u003ctd\u003eSchwarze Akzente halten das Leopardenmuster ruhig – dezent aus der Distanz, strukturiert aus der Nähe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner + 30 Tage Rückgabe für risikofreie Entscheidung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Leopardenmuster Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Leopardenmuster Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Polyester\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Leopardenmuster Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Leopardenmuster Badeanzug Damen bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Einteiler ist auf stabilen Sitz bei Alltagsbewegungen im Wasser ausgelegt – beim Schwimmen und beim Aufstehen aus dem Wasser. Für sehr intensive Schwimmeinheiten oder täglichen Leistungssport ist er weniger konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim figurformenden Badeanzug Damen die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBademode fällt je nach Schnitt unterschiedlich aus. Unser Größenrechner hilft dir anhand von Körpergröße und Gewicht, die passende Größe einzuschätzen. Bei Unsicherheit zwischen zwei Größen empfiehlt sich die größere Variante für mehr Bewegungsfreiheit. 30 Tage Rückgabe, falls der Sitz nicht stimmt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist ein Badeanzug Damen Leopardenmuster Einteiler weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer sehr intensive Schwimmeinheiten täglich macht oder einen Wettkampf-Einteiler sucht, ist mit einem sportlicheren Modell besser bedient. Wer Muster generell meidet und Uni-Töne bevorzugt, findet in unserem Sortiment auch einfarbige Alternativen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug mit Leopardenmuster nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eAm besten kurz mit klarem, kühlem Wasser ausspülen und dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – flach liegend oder im Schatten trocknen lassen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWirkt das Leopardenmuster auch neben anderen Strandfarben ruhig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie schwarzen Akzente und Streifen halten das Muster zurückhaltend. Der Badeanzug lässt sich gut mit schwarzen oder neutralen Strandaccessoires kombinieren, ohne dass das Muster überladen wirkt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-mit-bauchweg-effekt-im-sale\"\u003eBadeanzüge mit Bauchweg-Effekt im Sale\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-die-den-bauch-kaschieren\"\u003eBadeanzüge, die den Bauch kaschieren\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Leopardenmuster aus der Nähe: strukturierte Textur mit schwarzen Linien und Akzenten\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Am Bodenseeufer aus dem Wasser steigend – Einteiler sitzt, kein Nachziehen\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Leopardenmuster Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eLeopardenmuster Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-original\"\u003e€44.95\u003c\/span\u003e \u003cspan class=\"bn-cta-sale\"\u003e€29.94\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Leopardenmuster Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 17.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Leopardenmuster Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0002.png?v=1753463098\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.94\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Jaguar \/ S","offer_id":44343896113420,"sku":"Jaguar\/S","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Jaguar \/ M","offer_id":44343896178956,"sku":"Jaguar\/M","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Jaguar \/ L","offer_id":44343895851276,"sku":"Jaguar\/L","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Jaguar \/ XL","offer_id":44344782225676,"sku":"Jaguar\/XL","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Jaguar \/ XXL","offer_id":44344782258444,"sku":"Jaguar\/XXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Jaguar \/ XXXL","offer_id":44355079766284,"sku":"Jaguar\/XXXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Schneeweiß \/ S","offer_id":44343895687436,"sku":"Schneeweiß\/S","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ M","offer_id":44343895720204,"sku":"Schneeweiß\/M","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ L","offer_id":44343895752972,"sku":"Schneeweiß\/L","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ XL","offer_id":44344782094604,"sku":"Schneeweiß\/XL","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ XXL","offer_id":44344782127372,"sku":"Schneeweiß\/XXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Schneeweiß \/ XXXL","offer_id":44355079700748,"sku":"Schneeweiß\/XXXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Blau \/ S","offer_id":44343896146188,"sku":"Ozeanblau\/S","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ M","offer_id":44343895818508,"sku":"Ozeanblau\/M","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ L","offer_id":44343895884044,"sku":"Ozeanblau\/L","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ XL","offer_id":44344782160140,"sku":"Ozeanblau\/XL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Blau \/ XXL","offer_id":44344782192908,"sku":"Ozeanblau\/XXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Blau \/ XXXL","offer_id":44355079733516,"sku":"Ozeanblau\/XXXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Zebra \/ S","offer_id":44343895916812,"sku":"Zebra\/S","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Zebra \/ M","offer_id":44343895982348,"sku":"Zebra\/M","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Zebra \/ L","offer_id":44343896047884,"sku":"Zebra\/L","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Zebra \/ XL","offer_id":44344782323980,"sku":"Zebra\/XL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Zebra \/ XXL","offer_id":44344782356748,"sku":"Zebra\/XXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Zebra \/ XXXL","offer_id":44355079799052,"sku":"Zebra\/XXXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Kirschrot \/ S","offer_id":44343896080652,"sku":"Kirschrot\/S","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ M","offer_id":44343895949580,"sku":"Kirschrot\/M","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ L","offer_id":44343896015116,"sku":"Kirschrot\/L","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XL","offer_id":44344782389516,"sku":"Kirschrot\/XL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Kirschrot \/ XXL","offer_id":44344782422284,"sku":"Kirschrot\/XXL","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Kirschrot \/ XXXL","offer_id":44355079831820,"sku":"Kirschrot\/XXXL","price":29.94,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0002.png?v=1753463098"},{"product_id":"bikini-damen-mit-set","title":"gelber Bikini Ananas Muster","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der auch nach einem langen Badetag noch sitzt – ohne ständiges Nachziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach bleibt, wo er sein soll – am Bodenseeufer genauso wie im Wasser.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages merkt man meist, ob ein Bikini wirklich passt – oder ob man sich zu oft darum kümmern muss.\u003c\/p\u003e\n  \u003ch2\u003eGelber Bikini Damen mit Ananas-Blütenmuster – für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin zweiteiliges Set in warmem Sonnengelb – mit einem Ananas-Blütenmuster, das auffällt ohne zu laut zu sein. Ob am Bodenseeufer oder im Sommerurlaub, das Muster setzt einen frischen Akzent, ohne den Look zu überladen.\u003c\/p\u003e\n\u003cp\u003eDas Ananas-Blütenmuster ist keine laute Strandbotschaft, sondern ein ruhiger, sommerlicher Hingucker. Die gelben Töne wirken im Sonnenlicht besonders klar – und bleiben auch nass noch stimmig. Wer den tropischen Look mag, aber nicht zu viel Statement tragen möchte, findet hier eine angenehme Mitte.\u003c\/p\u003e\n\u003cp\u003eDas Set ist so geschnitten, dass Ober- und Unterteil separat wählbar sind – ein Vorteil, den viele beim Kauf unterschätzen. Wer am Beckenrand sitzt und sich dann ins Wasser bewegt, merkt, wie der Schnitt mit der Bewegung mitgeht, statt dagegen zu arbeiten. Das Muster bleibt dabei das Auge des Sets – klar, warm, unaufgeregt.\u003c\/p\u003e\n\u003cp\u003eOb für einen ruhigen Tag am See, eine Woche Urlaub mit Familie oder den ersten Badeausflug der Saison – dieser gelbe Bikini Damen-Set ist auf entspannte Alltagssituationen ausgelegt, nicht auf Leistung. Wer Muster mit tropischem Flair und dezenter Farbgebung mag, könnte hier eine gute Übereinstimmung finden.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Ananas-Muster wirkt im direkten Sonnenlicht wie ein Sommertag – klar und warm, ohne zu grell zu sein.\u003cbr\u003e• Wenn du vom Steg ins Wasser gleitest, bleibt das Set ruhiger sitzen als gedacht – kein Nachziehen nötig.\u003cbr\u003e• Das Gelb passt zu heller Haut, bronzierter Haut und allem dazwischen – ein Ton, der sich anpasst, statt zu bestimmen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du deine Größe kennst, kannst du Ober- und Unterteil separat auswählen – das macht es einfacher, den richtigen Sitz zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 86.0, \"bust_max\": 91.0, \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 88.0, \"hip_max\": 93.0}, {\"name\": \"M\", \"bust_min\": 91.0, \"bust_max\": 96.0, \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 93.0, \"hip_max\": 98.0}, {\"name\": \"L\", \"bust_min\": 96.0, \"bust_max\": 101.0, \"waist_min\": 76.0, \"waist_max\": 81.0, \"hip_min\": 98.0, \"hip_max\": 103.0}, {\"name\": \"XL\", \"bust_min\": 101.0, \"bust_max\": 106.0, \"waist_min\": 81.0, \"waist_max\": 86.0, \"hip_min\": 103.0, \"hip_max\": 108.0}, {\"name\": \"XXL\", \"bust_min\": 106.0, \"bust_max\": 111.0, \"waist_min\": 86.0, \"waist_max\": 91.0, \"hip_min\": 111.0, \"hip_max\": 116.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003cli\u003e✔ Verfügbare Maße: Brust, Taille, Hüfte – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann gelber Bikini Ananas Muster sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser nicht ruhig bleibt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas beim Kauf online oft schwer einzuschätzen ist – und wie man es eingrenzen kann.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Weile\u003c\/li\u003e\n\u003cli\u003eDie Größe passt online nie so wie erwartet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man geht schwimmen, taucht kurz unter – und danach sitzt der Bikini nicht mehr so, wie er soll. Das ist kein Einzelfall, sondern ein häufiges Thema bei Bikinis, die auf Optik ausgelegt sind, nicht auf Bewegung im Wasser. Besonders das Oberteil kann bei längerem Schwimmen anfangen zu wandern.\u003c\/p\u003e\n\u003cp\u003eDer Grund liegt oft im Schnitt und im Material-Verhältnis. Ein Stoff mit zu wenig Elasthan passt sich dem Körper im nassen Zustand weniger gut an. Zu viel Spielraum im Oberteil führt dazu, dass der Halt nachlässt, sobald Bewegung ins Spiel kommt.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini besteht aus 78 % Polyamid und 22 % Elasthan – eine Mischung, die auf Beweglichkeit ausgelegt ist. Das Oberteil kann bei normaler Belastung im Wasser ruhiger sitzen als Varianten mit geringerem Elasthan-Anteil. Für intensives Schwimmen oder sportliche Wasseraktivitäten ist er allerdings nicht konzipiert – wer sowas sucht, schaut sich eher bei Sportwear-Bademode um. Wenn du eher an ruhigen Badetagen interessiert bist – am See, am Pool oder im Urlaub – könnte dieser Schnitt passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie wichtig ist dir der Sitz beim Schwimmen im Vergleich zur Optik – und welches davon hat bei dir zuletzt beim Kauf die Entscheidung geprägt?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, um Brust-, Taille- und Hüftmaß besser zuzuordnen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil sind separat wählbar, damit du beide Teile passgenau auswählen kannst, ohne Kompromisse einzugehen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt auch nach einem langen Badetag noch ruhig\u003c\/li\u003e\n\u003cli\u003e→ Ober- und Unterteil in getrennten Größen – kein Kompromiss nötig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – hilfreich bei unterschiedlichen Maßen\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid \/ 22 % Elasthan – auf Beweglichkeit im Wasser ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ananas-Blütenmuster in warmem Gelb – tropischer Look, ruhig im Auftritt\u003c\/li\u003e\n\u003cli\u003e✅ Feinwäsche 30 °C – pflegeleicht und alltagstauglich\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für intensives Schwimmen oder sportliche Wasseraktivitäten konzipiert\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer unifarbene oder sehr schlichte Bademode bevorzugt, findet hier eher nicht seinen Stil\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegten Angaben zu Chlor- oder Salzwasserbeständigkeit – Pflegehinweise beachten\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ gelber Bikini Ananas Muster\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht bei Bewegung im Wasser\u003c\/td\u003e\n\u003ctd\u003e22 % Elasthan-Anteil für anpassungsfähigen Sitz bei normaler Belastung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar + Größenrechner mit Körpermaßen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt am Strand zu laut oder zu unruhig\u003c\/td\u003e\n\u003ctd\u003eDezentes Ananas-Blütenmuster in warmem Gelb – auffällig, aber nicht überwältigend\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei gelber Bikini Ananas Muster mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich gelber Bikini Ananas Muster im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003egelber Bikini Ananas Muster\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu gelber Bikini Ananas Muster\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim gelben Bikini mit Ananas-Muster die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa Ober- und Unterteil separat wählbar sind, empfehlen wir, Brust-, Taille- und Hüftumfang zu messen. Unser Größenrechner hilft dir, die passenden Maße einzuordnen – einfach Körpergröße und Gewicht eingeben, dann erhältst du eine Orientierung für beide Teile.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt das Oberteil beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil ist auf normalen Gebrauch im Wasser ausgelegt und bleibt bei ruhigen Bewegungen in der Regel ruhig sitzen. Für intensives Schwimmen oder sportliche Wasseraktivitäten ist dieser Bikini nicht konzipiert – dafür eignet sich eher Sportwear-Bademode.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das verlängert die Formstabilität des Materials.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil in unterschiedlichen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, Ober- und Unterteil sind separat wählbar. Das ist besonders hilfreich, wenn Brust und Hüfte unterschiedliche Größen erfordern – du musst keine Kompromisse eingehen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelcher Bikini mit Ananas-Muster passt zu welchem Hautton?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas warme Sonnengelb mit Ananas-Blütenmuster passt erfahrungsgemäß zu hellen, mittleren und gebräunten Hauttönen. Es ist ein Ton, der im Sonnenlicht klarer wirkt – eine gute Orientierung, wenn du eher warme Farben magst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst das Muster auf beiden Teilen gleich?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, das Ananas-Blütenmuster ist auf Ober- und Unterteil aufeinander abgestimmt, sodass das Set als Einheit wirkt. Das Muster ist als dezentes All-over-Print angelegt – kein Einzel-Motiv, sondern ein gleichmäßiger Druck.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Ananas-Blütenmuster im direkten Sonnenlicht am See – klar, warm, lebendig\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Gelbes Set auf hellem Sand oder heller Holzterrasse – frischer Farbakzent ohne Überladung\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann gelber Bikini Ananas Muster eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003egelber Bikini Ananas Muster\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.97\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass gelber Bikini Ananas Muster dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"gelber Bikini Ananas Muster\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/S64cec08ef35e43ceb848bea303746da6Q.jpg?v=1753462373\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.97\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Pink \/ S","offer_id":44457297510668,"sku":"14:173#Pink;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":44457297969420,"sku":"14:173#Pink;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":44457298428172,"sku":"14:173#Pink;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ XL","offer_id":44457298886924,"sku":"14:173#Pink;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Dark purple \/ S","offer_id":44457297576204,"sku":"14:175#Dark purple;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Dark purple \/ M","offer_id":44457298034956,"sku":"14:175#Dark purple;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Dark purple \/ L","offer_id":44457298493708,"sku":"14:175#Dark purple;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Dark purple \/ XL","offer_id":44457298952460,"sku":"14:175#Dark purple;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Lake blue \/ S","offer_id":44457297608972,"sku":"14:350852#Lake blue;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Lake blue \/ M","offer_id":44457298067724,"sku":"14:350852#Lake blue;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Lake blue \/ L","offer_id":44457298526476,"sku":"14:350852#Lake blue;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Lake blue \/ XL","offer_id":44457298985228,"sku":"14:350852#Lake blue;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Wine \/ S","offer_id":44457297674508,"sku":"14:366#Wine;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Wine \/ M","offer_id":44457298133260,"sku":"14:366#Wine;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Wine \/ L","offer_id":44457298592012,"sku":"14:366#Wine;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Wine \/ XL","offer_id":44457299050764,"sku":"14:366#Wine;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ S","offer_id":44457297740044,"sku":"14:100018786#Purple;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ M","offer_id":44457298198796,"sku":"14:100018786#Purple;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ L","offer_id":44457298657548,"sku":"14:100018786#Purple;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ XL","offer_id":44457299116300,"sku":"14:100018786#Purple;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Bright yellow \/ S","offer_id":44457297805580,"sku":"14:200004890#Bright yellow;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Bright yellow \/ M","offer_id":44457298264332,"sku":"14:200004890#Bright yellow;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Bright yellow \/ L","offer_id":44457298723084,"sku":"14:200004890#Bright yellow;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Bright yellow \/ XL","offer_id":44457299181836,"sku":"14:200004890#Bright yellow;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Red \/ S","offer_id":44457297871116,"sku":"14:200006159#Red;5:100014064","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Red \/ M","offer_id":44457298329868,"sku":"14:200006159#Red;5:361386","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Red \/ L","offer_id":44457298788620,"sku":"14:200006159#Red;5:361385","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Red \/ XL","offer_id":44457299247372,"sku":"14:200006159#Red;5:100014065","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Blacklbue \/ S","offer_id":44460903203084,"sku":"SetBlackblueS","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Blacklbue \/ M","offer_id":44460903235852,"sku":"SetBlackblueM","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Blacklbue \/ L","offer_id":44460903268620,"sku":"SetBlackblueL","price":29.97,"currency_code":"EUR","in_stock":true},{"title":"Blacklbue \/ XL","offer_id":44460903301388,"sku":"SetBlackblueXL","price":29.97,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/S64cec08ef35e43ceb848bea303746da6Q.jpg?v=1753462373"},{"product_id":"bikini-damen-mit-hohen-huftband","title":"tropisches Blätter Bikini","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der den ganzen Tag sitzt – auch wenn man sich bewegt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach passt – ohne dass man den ganzen Tag daran denkt.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages zeigt sich oft, ob ein Bikini wirklich mitgeht – oder ob man ihn ständig im Kopf hat.\u003c\/p\u003e\n  \u003ch2\u003eTropisches Blätter Bikini mit Blättermuster – für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin zweiteiliger Bikini mit tropischem Blättermuster in Grün und Rosa – ausgelegt auf angenehmen Sitz im Alltag am Wasser, aus 78 % Polyamid und 22 % Elasthan.\u003c\/p\u003e\n\u003cp\u003eDas Muster ist inspiriert von großen, flachen Blättern – Palmen, Monstera, Farne – wie man sie in warmen Gegenden entlang von Uferwegen und Strandpromenaden sieht. Die Farben bleiben nah beieinander: ein gedämpftes Grün, ein zartes Rosa. Zusammen ergibt das einen Print, der auffällt, ohne zu dominieren. Auf hellem Sand oder dunklem Holz eines Stegs wirkt er lebendig, ohne den Blick zu erschlagen.\u003c\/p\u003e\n\u003cp\u003eZum Kombinieren passt er gut zu unifarbenen Pareos, hellen Leinenshorts oder einfachen weißen Strandkitteln – weil das Muster selbst schon Struktur bringt, braucht es rundum wenig. Wer eher ruhige, einfarbige Bikinis bevorzugt, für den ist dieses Muster möglicherweise eine Nummer zu viel. Wer aber einen Urlaubs-Bikini sucht, der eine eigene Stimmung mitbringt, ohne laut zu wirken, findet hier einen klaren Stil.\u003c\/p\u003e\n\u003cp\u003eAm Bodensee, im Mittelmeer-Urlaub oder am Pool – das tropische Blättermuster bringt eine bestimmte Leichtigkeit mit, die man von Sommerreisen kennt. Man zieht ihn morgens an, geht ins Wasser, liegt auf dem Handtuch, bestellt etwas zu trinken – und er bleibt einfach, wie er war.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster wirkt auf Fotos genauso wie in echt – keine Überraschung nach der Lieferung.\u003cbr\u003e• Der Stoff liegt am Körper ruhig auf, auch wenn er nass ist – kein schweres, durchhängendes Gefühl.\u003cbr\u003e• Das Design passt zum eigenen Stil, wenn man Muster mag, die eine Geschichte mitbringen, ohne laut zu sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle oben deine Maße aus – Brust, Taille und Hüfte helfen dir, die passende Größe einzuschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003cli\u003e✔ Muster: Tropisches Blätterprint in Grün und Rosa\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann tropisches Blätter Bikini sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser nicht mehr ruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Stoff und Muster – was beim Kauf wirklich eine Rolle spielt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eOnline lässt sich die Größe kaum einschätzen\u003c\/li\u003e\n\u003cli\u003eNasser Stoff fühlt sich schwer und unangenehm an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eMan kennt das: Man geht ins Wasser, taucht einmal unter – und danach sitzt irgendetwas nicht mehr so, wie es sollte. Das Oberteil ist verrutscht, der Bund hat sich verdreht. Man korrigiert, geht wieder rein, dasselbe Spiel. Das ist nicht dramatisch, aber es lenkt ab.\u003c\/p\u003e\n\u003cp\u003eHäufig liegt das am Schnitt oder am Material: Bikinis, die auf dem Kleiderbügel gut aussehen, verhalten sich im Wasser anders als erwartet. Elasthan-Anteile, Bundform und Trägerführung beeinflussen, wie stabil ein Bikini bei Bewegung sitzt – das ist von Modell zu Modell verschieden.\u003c\/p\u003e\n\u003cp\u003eDieser tropische Blätter Bikini ist auf einen ruhigen Sitz bei alltäglicher Bewegung ausgelegt – beim Schwimmen, Hinsetzen, Aufstehen am Strand. Das 78\/22-Polyamid-Elasthan-Gemisch gibt Halt, passt sich aber auch an. Wenn du eher intensive Wassersportarten magst – Tauchen, Surfen, Leistungsschwimmen – ist ein speziell darauf ausgelegter Sport-Bikini möglicherweise die bessere Wahl. Für entspannte Badetage am See, Pool oder Strand kann dieser Schnitt gut passen.\n\u003cbr\u003e\u003cbr\u003eMagst du eher ruhige, einfarbige Bikinis ohne Muster – oder suchst du gerade etwas mit einer eigenen Bildsprache?\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Maße (Brust, Taille, Hüfte) oben aus, wenn du möchtest.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Gehen, Hinsetzen und im Wasser ruhig\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt auf Fotos genauso wie in echt – keine Überraschung nach der Lieferung\u003c\/li\u003e\n\u003cli\u003e→ Kombiniert sich unkompliziert mit ruhigen Strand-Outfits\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Tropisches Blättermuster in Grün und Rosa – eigenständiger Print, der sich mit ruhigen Strand-Outfits kombinieren lässt\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – ausgelegt auf Bewegungskomfort bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Größe nach Körpermaß (Brust, Taille, Hüfte) – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Pflegefreundlich bei 30 °C Feinwäsche\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensive Wassersportarten (Surfen, Leistungsschwimmen) eher nicht ausgelegt – hier kann ein Sportbikini besser passen\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer lieber einfarbige, musterfreie Bikinis trägt, findet das Blättermuster möglicherweise zu präsent\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegte Chlor- oder Salzwasserbeständigkeit – Ausspülen nach dem Baden empfohlen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ tropisches Blätter Bikini\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eAuf ruhigen Sitz bei alltäglicher Bewegung im Wasser ausgelegt – durch Elasthan-Anteil im Stoff\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bikinis schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat nach Körpermaßen wählbar – mit Größenrechner als Orientierung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eNasser Stoff hängt schwer und verformt sich\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Mix ist auf Formstabilität bei normaler Belastung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster verblasst nach einer Saison\u003c\/td\u003e\n\u003ctd\u003eKeine belegte Chlorresistenz – Ausspülen nach dem Baden kann die Haltbarkeit unterstützen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei tropisches Blätter Bikini mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich tropisches Blätter Bikini im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003etropisches Blätter Bikini\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu tropisches Blätter Bikini\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim tropischen Blätter Bikini die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini wird nach Körpermaßen gewählt: Brust, Taille und Hüfte. Wenn du an der Grenze zwischen zwei Größen liegst, kann es helfen, das Oberteil und Unterteil separat zu wählen – je nach deinen individuellen Maßen. Unser Größenrechner hilft dir dabei, indem du Körpergröße und Gewicht eingibst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eSitzt der Bikini auch beim Schwimmen ruhig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf normalen Bewegungskomfort am Strand und im Wasser ausgelegt. Bei entspanntem Schwimmen und alltäglicher Bewegung bleibt er in der Regel ruhig sitzen. Für intensive Wassersportarten wie Surfen oder Leistungsschwimmen ist ein speziell darauf ausgelegter Sport-Bikini möglicherweise besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini mit tropischem Muster richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen. So bleibt die Form des Stoffes länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst dieser gemusterte Bikini für Urlaub und Strand?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas tropische Blättermuster in Grün und Rosa ist auf eine vielseitige Urlaubsästhetik ausgelegt – es passt zu hellen Strandoutfits, Leinenshorts und einfarbigen Coverups. Wer eher ruhige Uni-Bikinis bevorzugt, findet in unserem Sortiment auch einfarbige Modelle.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eAus welchem Material besteht der Bikini mit Blättermuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini besteht aus 78 % Polyamid und 22 % Elasthan. Diese Mischung ist ausgelegt auf Bewegungskomfort und eine gewisse Formstabilität bei normaler Belastung. Pflegehinweis: Feinwäsche 30 °C, nicht im Trockner.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Oberteil und Unterteil in verschiedenen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Ober- und Unterteil können nach eigenen Maßen (Brust, Taille, Hüfte) separat gewählt werden. Das kann hilfreich sein, wenn Oberkörper- und Untermaße unterschiedliche Größen ergeben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tropisches Blättermuster in Grün und Rosa – auf hellem Sand oder dunklem Holz eines Stegs\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Stoff liegt nass am Körper ruhig auf – kein durchhängendes Gewebe\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann tropisches Blätter Bikini eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003etropisches Blätter Bikini\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.90\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass tropisches Blätter Bikini dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"tropisches Blätter Bikini\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/H80d9e8f5d6ab487aa881080fa8ff8d02i.jpg?v=1753462020\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.90\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"TZ18042B6 \/ S","offer_id":44457299312908,"sku":"14:771#TZ18042B6;5:100014064","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ M","offer_id":44457299804428,"sku":"14:771#TZ18042B6;5:361386","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ L","offer_id":44457300295948,"sku":"14:771#TZ18042B6;5:361385","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ XL","offer_id":44457300787468,"sku":"14:771#TZ18042B6;5:100014065","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ 2XL","offer_id":44466080678156,"sku":"TZ18042B6 \/ 2XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ 3XL","offer_id":44466080710924,"sku":"TZ18042B6 \/ 3XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ 4XL","offer_id":44466080743692,"sku":"TZ18042B6 \/ 4XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ 5XL","offer_id":44466080776460,"sku":"TZ18042B6 \/ 5XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042B6 \/ 6XL","offer_id":44466080809228,"sku":"TZ18042B6 \/ 6XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ S","offer_id":44457299411212,"sku":"14:365458#TZ18042DP;5:100014064","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ M","offer_id":44457299902732,"sku":"14:365458#TZ18042DP;5:361386","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ L","offer_id":44457300394252,"sku":"14:365458#TZ18042DP;5:361385","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ XL","offer_id":44457300885772,"sku":"14:365458#TZ18042DP;5:100014065","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ 2XL","offer_id":44466080841996,"sku":"TZ18042DP \/ 2XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ 3XL","offer_id":44466080874764,"sku":"TZ18042DP \/ 3XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ 4XL","offer_id":44466080907532,"sku":"TZ18042DP \/ 4XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ 5XL","offer_id":44466080940300,"sku":"TZ18042DP \/ 5XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042DP \/ 6XL","offer_id":44466080973068,"sku":"TZ18042DP \/ 6XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ S","offer_id":44457299640588,"sku":"14:1052#TZ18042D2;5:100014064","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ M","offer_id":44457300132108,"sku":"14:1052#TZ18042D2;5:361386","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ L","offer_id":44457300623628,"sku":"14:1052#TZ18042D2;5:361385","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ XL","offer_id":44457301115148,"sku":"14:1052#TZ18042D2;5:100014065","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ 2XL","offer_id":44466081005836,"sku":"TZ18042D2 \/ 2XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ 3XL","offer_id":44466081038604,"sku":"TZ18042D2 \/ 3XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ 4XL","offer_id":44466081071372,"sku":"TZ18042D2 \/ 4XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ 5XL","offer_id":44466081104140,"sku":"TZ18042D2 \/ 5XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042D2 \/ 6XL","offer_id":44466081136908,"sku":"TZ18042D2 \/ 6XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ S","offer_id":44457299673356,"sku":"14:496#TZ18042G1;5:100014064","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ M","offer_id":44457300164876,"sku":"14:496#TZ18042G1;5:361386","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ L","offer_id":44457300656396,"sku":"14:496#TZ18042G1;5:361385","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ XL","offer_id":44457301147916,"sku":"14:496#TZ18042G1;5:100014065","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ 2XL","offer_id":44466081169676,"sku":"TZ18042G1 \/ 2XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ 3XL","offer_id":44466081202444,"sku":"TZ18042G1 \/ 3XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ 4XL","offer_id":44466081235212,"sku":"TZ18042G1 \/ 4XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ 5XL","offer_id":44466081267980,"sku":"TZ18042G1 \/ 5XL","price":34.9,"currency_code":"EUR","in_stock":true},{"title":"TZ18042G1 \/ 6XL","offer_id":44466081300748,"sku":"TZ18042G1 \/ 6XL","price":34.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/H80d9e8f5d6ab487aa881080fa8ff8d02i.jpg?v=1753462020"},{"product_id":"bikini-damen-als-frucht","title":"gelber Bikini gemustertes Unterteil","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen gelben Bikini aus, der im Look ruhig bleibt – und trotzdem auffällt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn Farbe und Muster einfach zusammenpassen – ohne dass man lange nachdenken muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau das ist bei Musterkombinationen oft der Punkt, den man erst am See merkt – ob der Look ruhig wirkt oder doch etwas unruhig.\u003c\/p\u003e\n  \u003ch2\u003eGelber Bikini Damen mit gemustertem Unterteil – für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEinfarbiges gelbes Oberteil, gemustertes Unterteil mit tropischem Blättermotiv – zwei Teile, die zusammen ruhiger wirken als jedes für sich allein.\u003c\/p\u003e\n\u003cp\u003eGelb ist 2026 eine der präsenten Farben in der Bademode – satt, aber nicht aufdringlich, wenn ein Muster die Farbfläche strukturiert. Das tropische Blättermuster am Unterteil bricht das Gelb des Oberteils auf eine Art, die den Gesamtlook optisch ausbalanciert. Wer am Ufer des Bodensees auf einem Handtuch sitzt und ins Wasser schaut, wird diesen Unterschied vielleicht erst auf dem Foto bemerken – das Muster lenkt den Blick, statt ihn festzuhalten.\u003c\/p\u003e\n\u003cp\u003eDas einfarbige Oberteil hält den oberen Teil des Looks schlicht, das gemusterte Unterteil setzt den Akzent weiter unten. Diese Aufteilung kann je nach Figur und Stil unterschiedlich wirken – für manche ist das eine angenehme Abwechslung zu unifarbenen Sets, für andere ein Ausgangspunkt zum Kombinieren. Gelb lässt sich am Strand meist gut mit Beige, Weiß oder Schwarz ergänzen – ein heller Pareo oder ein weißes Strandkleid darüber, und der Look hat einen klaren Rahmen.\u003c\/p\u003e\n\u003cp\u003eAm Pool, beim langsamen Ins-Wasser-Gehen, beim Aufstehen vom Liegestuhl – das sind die Momente, in denen ein gemustertes Unterteil anders sitzt als ein uniformes. Das Blättermotiv hat in solchen Situationen eine visuelle Wirkung, die sich schwer in Worte fassen lässt: Es ist belebt, ohne laut zu sein. Wer Urlaub am See oder an der Küste plant und ein Set sucht, das zwischen ruhig und sommerlich liegt, könnte hier etwas finden.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Gelb wirkt auf Fotos wärmer als im direkten Sonnenlicht – ein Ton, der auf vielen Hautfarben funktioniert.\u003cbr\u003e• Das Muster am Unterteil gibt dem Look Tiefe, ohne die Gesamtwirkung zu überladen.\u003cbr\u003e• Kombiniert mit einem neutralen Cover-up bleibt der Auftritt zurückhaltend und trotzdem farbig.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du deine Größe kennst, kannst du sie oben direkt auswählen – Bauch, Hüfte und Brust als Anhaltspunkt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"hip_min\": 73.0, \"hip_max\": 79.0, \"bust_min\": 76.0, \"bust_max\": 79.0}, {\"name\": \"S\", \"hip_min\": 78.0, \"hip_max\": 84.0, \"bust_min\": 81.0, \"bust_max\": 84.0}, {\"name\": \"M\", \"hip_min\": 83.0, \"hip_max\": 89.0, \"bust_min\": 86.0, \"bust_max\": 89.0}, {\"name\": \"L\", \"hip_min\": 88.0, \"hip_max\": 94.0, \"bust_min\": 91.0, \"bust_max\": 94.0}, {\"name\": \"XL\", \"hip_min\": 94.0, \"hip_max\": 100.0, \"bust_min\": 97.0, \"bust_max\": 99.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Oberteil: einfarbig gelb – Unterteil: tropisches Blättermuster\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann gelber Bikini gemustertes Unterteil sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Farbe und Muster zusammen unruhig wirken können\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin gelbes Oberteil, ein gemustertes Unterteil – wie die Kombination im Alltag sitzt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOb Gelb auf der eigenen Hautfarbe wirklich harmoniert\u003c\/li\u003e\n\u003cli\u003eOb das Muster optisch ruhig genug bleibt oder schnell zu viel wird\u003c\/li\u003e\n\u003cli\u003eWie der Bikini bei Bewegung am Wasser sitzt – nicht nur beim Stehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen den Moment: Ein Bikini sieht auf dem Foto toll aus, aber am See – beim Aufstehen vom Handtuch, beim Hinsetzen am Beckenrand – sitzt irgendetwas nicht ganz so, wie man es sich vorgestellt hat. Nicht wegen der Passform, sondern wegen der Wirkung von Farbe und Muster zusammen in echtem Licht.\u003c\/p\u003e\n\u003cp\u003eBei einem Mustermix hängt viel davon ab, wie die Teile zueinander stehen. Ein einfarbiges Oberteil gibt dem Blick einen ruhigen Ankerpunkt; das gemusterte Unterteil übernimmt den Akzent weiter unten. Das Blättermuster kann – je nach Schnitt und Körper – optisch ausgleichen, statt nur zu betonen. Der Elasthan-Anteil im Material (22 %) ist für Beweglichkeit ausgelegt; wie gut der Sitz letztlich passt, hängt trotzdem von der individuellen Größenwahl ab.\u003c\/p\u003e\n\u003cp\u003eWenn du Bademode bevorzugst, die komplett unifarben ist oder sehr zurückhaltend wirkt, ist dieser Bikini vielleicht nicht dein Stil – das Gelb ist kräftig, das Muster setzt einen sichtbaren Akzent. Für alle, die einen Sommer-Look suchen, der zwischen lebendig und dezent liegt, kann diese Kombination ein Anhaltspunkt sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMagst du lieber, dass Farbe oder Muster im Vordergrund steht – oder beides zusammen in Balance?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Bauch, Hüfte und Brust ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eDie Größen sind nach Bauch, Hüfte und Brust angegeben – oben auswählbar, wenn du deine Maße zur Hand hast.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz am Beckenrand und beim Ins-Wasser-Gehen\u003c\/li\u003e\n\u003cli\u003e→ Kombination mit Pareo oder Strandkleid für den Weg vom Wasser\u003c\/li\u003e\n\u003cli\u003e→ Gelbes Set als Sommerfarbe am Bodensee und im Urlaub\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Mustermix aus einfarbigem Oberteil und gemustertem Unterteil – kann den Look optisch ausbalancieren\u003c\/li\u003e\n\u003cli\u003e✅ 22 % Elasthan – für Beweglichkeit bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Gelb als kräftiger Sommerton, strukturiert durch das Blättermuster am Unterteil\u003c\/li\u003e\n\u003cli\u003e✅ Pflegehinweis auf Feinwäsche und Lufttrocknung – schonender Umgang mit dem Material\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für alle, die unifarbene oder sehr zurückhaltende Bademode bevorzugen, ist das kräftige Gelb möglicherweise zu präsent\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht primär für sportliches Schwimmtraining ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Das Muster ist ein sichtbarer Akzent – wer komplett schlichte Sets sucht, wird hier nicht fündig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ gelber Bikini gemustertes Unterteil\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGelbe Bademode wirkt schnell zu laut oder unruhig im Gesamtbild\u003c\/td\u003e\n\u003ctd\u003eDas Blättermuster am Unterteil kann die gelbe Farbfläche optisch brechen und den Look ruhiger wirken lassen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMusterbikinis gelten oft als schwer kombinierbar\u003c\/td\u003e\n\u003ctd\u003eGelb mit Blättermuster lässt sich in der Regel gut mit neutralen Strandteilen wie Weiß, Beige oder Schwarz ergänzen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eElasthan-Anteil lässt Bademode nach wenigen Wäschen Form verlieren\u003c\/td\u003e\n\u003ctd\u003eFeinwäsche bei 30 °C und kein Trockner sind auf schonendere Behandlung von Material und Elastizität ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster betont je nach Sitz an der falschen Stelle\u003c\/td\u003e\n\u003ctd\u003eEin Muster am Unterteil kann den Blick lenken und je nach Schnitt optisch ausgleichen – abhängig von der passenden Größe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei gelber Bikini gemustertes Unterteil mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich gelber Bikini gemustertes Unterteil im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003egelber Bikini gemustertes Unterteil\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu gelber Bikini gemustertes Unterteil\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen gelben Bikini mit gemustertem Unterteil?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie Größen sind nach Bauch, Hüfte und Brust angegeben. Miss diese drei Körperstellen in Zentimetern und wähle die passende Größe aus. Bei Unsicherheit zwischen zwei Größen kann es hilfreich sein, die größere Variante zu wählen – besonders wenn du beim Unterteil mehr Bewegungsfreiheit bevorzugst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund des Bikini-Unterteils bei Bewegung am Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Elasthan-Anteil (22 %) ist für Dehnbarkeit und Beweglichkeit ausgelegt, sodass der Bund bei normaler Bewegung – Gehen, Schwimmen, Hinsetzen – in der Regel ruhig sitzt. Der tatsächliche Sitz hängt von der gewählten Größe ab; eine genaue Körpermessung vor dem Kauf ist ein guter Anhaltspunkt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyamid und Elasthan richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, anschließend bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – Lufttrocknen ist schonender für Material und Form. So bleibt die Elastizität des Stoffs länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWirkt Gelb mit gemustertem Unterteil auf verschiedenen Hautfarben harmonisch?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eGelb ist ein warmer Ton, der auf vielen Hautfarben gut funktioniert – besonders in Kombination mit einem Muster, das die reine Farbfläche optisch etwas aufbricht. Das Blättermuster am Unterteil kann den Gesamtlook ruhiger wirken lassen als ein komplett einfarbiges gelbes Set. Wie die Kombination auf dem eigenen Hautton wirkt, lässt sich am besten im Tageslicht einschätzen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eLässt sich dieser Bikini gut mit anderen Strandteilen kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas gelbe Oberteil und das gemusterte Unterteil lassen sich in der Regel gut mit neutralen Farben wie Weiß, Beige oder Schwarz ergänzen. Ein heller Pareo, ein weißes Strandkleid oder eine schlichte Shorts können den Look abrunden, ohne mit dem Muster zu konkurrieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer sehr zurückhaltende, komplett unifarbene Bademode bevorzugt oder keinerlei kräftige Farben tragen möchte, wird mit diesem Set weniger Freude haben. Auch für sehr sportliche Anwendungen wie intensives Schwimmtraining ist er nicht primär ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-must-have-farben-fur-badeanzuge-2024\"\u003eDie Must-have Farben für Badeanzüge 2024\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/push-up-bikini\"\u003ePush-up Bikini\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Gelbes Oberteil im Sonnenlicht am Ufer – warmer Ton, klare Fläche\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Blättermuster am Unterteil im Kontrast zu Sand oder hellem Holz des Stegs\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann gelber Bikini gemustertes Unterteil eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003egelber Bikini gemustertes Unterteil\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€27.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass gelber Bikini gemustertes Unterteil dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"gelber Bikini gemustertes Unterteil\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0022.png?v=1753461194\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"27.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"1 Style \/ XS","offer_id":44457301311756,"sku":"CJYJ142257902BY","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"1 Style \/ S","offer_id":44457301901580,"sku":"CJYJ142257903CX","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"1 Style \/ M","offer_id":44457302491404,"sku":"CJYJ142257904DW","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"1 Style \/ L","offer_id":44457303081228,"sku":"CJYJ142257905EV","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"1 Style \/ XL","offer_id":44457303671052,"sku":"CJYJ142257906FU","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"2 Style \/ XS","offer_id":44457301475596,"sku":"CJYJ142257908HS","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"2 Style \/ S","offer_id":44457302065420,"sku":"CJYJ142257909IR","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"2 Style \/ M","offer_id":44457302655244,"sku":"CJYJ142257910JQ","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"2 Style \/ L","offer_id":44457303245068,"sku":"CJYJ142257911KP","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"2 Style \/ XL","offer_id":44457303834892,"sku":"CJYJ142257912LO","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"5 Style \/ XS","offer_id":45431064199436,"sku":"CJYJ142257926ZA","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"5 Style \/ S","offer_id":45431064232204,"sku":"CJYJ142257927AZ","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"5 Style \/ M","offer_id":45431064264972,"sku":"CJYJ142257928BY","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"5 Style \/ L","offer_id":45431064297740,"sku":"CJYJ142257929CX","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"5 Style \/ XL","offer_id":45431064330508,"sku":"CJYJ142257930DW","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"6 Style \/ XS","offer_id":45431064396044,"sku":"CJYJ142257932FU","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"6 Style \/ S","offer_id":45431064428812,"sku":"CJYJ142257933GT","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"6 Style \/ M","offer_id":45431064461580,"sku":"CJYJ142257934HS","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"6 Style \/ L","offer_id":45431064494348,"sku":"CJYJ142257935IR","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"6 Style \/ XL","offer_id":45431064527116,"sku":"CJYJ142257936JQ","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"7 Style \/ XS","offer_id":44460897534220,"sku":"CJYJ142257938LO","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"7 Style \/ S","offer_id":44460897566988,"sku":"CJYJ142257939MN","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"7 Style \/ M","offer_id":44460897599756,"sku":"CJYJ142257940NM","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"7 Style \/ L","offer_id":44460897632524,"sku":"CJYJ142257941OL","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"7 Style \/ XL","offer_id":44460897665292,"sku":"CJYJ142257942PK","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"8 Style \/ XS","offer_id":44457301344524,"sku":"CJYJ142257944RI","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"8 Style \/ S","offer_id":44457301934348,"sku":"CJYJ142257945SH","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"8 Style \/ M","offer_id":44457302524172,"sku":"CJYJ142257946TG","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"8 Style \/ L","offer_id":44457303113996,"sku":"CJYJ142257947UF","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"8 Style \/ XL","offer_id":44457303703820,"sku":"CJYJ142257948VE","price":27.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0022.png?v=1753461194"},{"product_id":"triangel-bikini","title":"Wassermelonen Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der den ganzen Tag sitzt – und dabei leicht und unbeschwert bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da ist – ohne dass du ständig daran denkst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines langen Badetages merkt man recht schnell, ob ein Bikini mitgeht oder man ihn ständig neu ordnet.\u003c\/p\u003e\n  \u003ch2\u003eTriangel Bikini Wassermelone – verspieltes Muster für See, Pool und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nTriangel-Oberteil mit verstellbaren Trägern – für einen Sitz, der sich anpassen lässt, Wassermelonen-Illustration mit schwarzen Kernen auf hellem Grund, Stoff aus elastischem Polyester, der sich angenehm auf der Haut anfühlt.\u003c\/p\u003e\n\u003cp\u003eDas Wassermelonen-Muster ist eines dieser Motive, das man entweder sofort mag oder nicht – und genau das macht es ehrlich. Die Illustration ist klar gezeichnet: saftige grüne und rote Flächen, schwarze Kerne, kein Schnickschnack. Am Bodenseeufer, wo das Licht am Nachmittag flach über das Wasser zieht, wirkt dieses Muster leicht und direkt – wie ein Sommer, der keine große Ankündigung braucht.\u003c\/p\u003e\n\u003cp\u003eDas Triangel-Oberteil lässt sich über die Trägerbänder anpassen, sodass der Sitz individuell eingestellt werden kann. Die Farbkombination aus Grün, Rot und Weiß hält sich in einem klaren Rahmen – laut genug, um aufzufallen, ruhig genug, um zum einfachen Leinenshort oder einem weißen Wickelrock zu passen. Wer zu auffälligen Mustern sonst eher Abstand hält, könnte hier eine Ausnahme machen – das Motiv bleibt trotz seiner Größe unaufdringlich in der Gesamtwirkung.\u003c\/p\u003e\n\u003cp\u003eAm See aufstehen und ins Wasser gehen – das Muster zieht kurz den Blick auf sich, ohne zu schreien. Beim Hinsetzen auf dem Steg, Sonnencreme auflegen, der Bikini bleibt ruhig sitzen. Als Mitbringsel oder Geschenk für jemanden, der Sommer liebt und dabei nicht in allzu ernsten Farben stecken möchte, ist dieses Set eine stimmige Wahl.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff liegt weich auf der Haut an – auch nach einem langen Tag am Wasser.\u003cbr\u003e• Das Muster macht Freude, ohne dass man es jedem erklären muss – es spricht für sich.\u003cbr\u003e• Man zieht sich an und fühlt sich fertig – kein zweites Überlegen, ob es passt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, findest du unten den Größenrechner – er hilft dir, das passende Oberteil und Unterteil einzuschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 76.0, \"hip_max\": 78.0, \"bust_min\": 72.0, \"bust_max\": 74.0}, {\"name\": \"M\", \"hip_min\": 80.0, \"hip_max\": 82.0, \"bust_min\": 76.0, \"bust_max\": 78.0}, {\"name\": \"L\", \"hip_min\": 84.0, \"hip_max\": 86.0, \"bust_min\": 80.0, \"bust_max\": 82.0}, {\"name\": \"XL\", \"hip_min\": 88.0, \"hip_max\": 90.0, \"bust_min\": 84.0, \"bust_max\": 86.0}, {\"name\": \"2XL\", \"hip_min\": 93.0, \"hip_max\": 95.0, \"bust_min\": 89.0, \"bust_max\": 91.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyester, elastisch\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: Triangel-Oberteil mit verstellbaren Trägern\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Wassermelonen Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser unruhig sitzt und nachgibt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas beim Triangel-Schnitt den Unterschied macht – und für wen er passt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil, das im Wasser verrutscht und Nachkorrigieren braucht\u003c\/li\u003e\n\u003cli\u003eBund, der nach ein paar Stunden drückt oder einschneidet\u003c\/li\u003e\n\u003cli\u003eStoff, der sich nass unangenehm anfühlt oder sich aufträgt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer kennt das: Man geht ins Wasser, taucht ab, und das Oberteil braucht danach sofort Aufmerksamkeit. Oder der Bund zieht nach einer Weile so, dass man lieber früher aus dem See geht als geplant. Das ist kein Naturgesetz – aber es passiert häufiger, als es müsste.\u003c\/p\u003e\n\u003cp\u003eOft liegt es am Zusammenspiel aus Schnitt und Material. Ein Triangel-Oberteil mit zu wenig Verstellmöglichkeit passt eben nicht jeder Brustform gleich gut. Und ein Bund, der bei trockenem Stoff sitzt, kann sich nass anders verhalten – je nachdem, wie der Stoff auf Feuchtigkeit reagiert.\u003c\/p\u003e\n\u003cp\u003eDieser Wassermelonen Bikini ist als Triangel-Set ausgelegt – mit verstellbaren Trägern, damit das Oberteil auf unterschiedliche Proportionen eingestellt werden kann, und einem elastischen Polyester-Stoff, der sich bei normaler Bewegung im Wasser ruhig verhalten soll. Ob das für dich stimmt, hängt natürlich davon ab, wie du schwimmst und was du von einem Bikini erwartest. Für intensives Wassersporttreiben oder starke Bewegungsbelastung – wie Surfen oder aktives Tauchen – ist dieser Schnitt weniger ausgelegt. Als Bade- und Strand-Bikini für See, Pool und ruhigeren Urlaubseinsatz kann er eine stimmige Option sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eStell dir vor, du stehst nach dem Schwimmen auf – sitzt der Bikini noch so, wie du ihn angelegt hast?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, um Ober- und Unterteil passend zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du dir unsicher bist, lohnt sich ein Blick in den Bikini-Größen-Guide – dort findest du Hinweise zu Bundform und Oberteil-Varianten.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil hält auch beim ruhigen Schwimmen ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Das Muster wirkt auch nach einem langen Badetag noch frisch\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Verspieltes Wassermelonen-Muster – klar gezeichnet, unaufdringlich in der Gesamtwirkung\u003c\/li\u003e\n\u003cli\u003e✅ Triangel-Oberteil mit verstellbaren Trägern für individuellen Sitz\u003c\/li\u003e\n\u003cli\u003e✅ Elastischer Polyester-Stoff – angenehm auf der Haut bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar für individuelle Größenkombination\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport (Surfen, Tauchen, starke Bewegungsbelastung) weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer eher einfarbige oder sehr ruhige Muster bevorzugt, könnte sich an dem Motiv satt sehen\u003c\/li\u003e\n\u003cli\u003e⚠️ Triangel-Schnitt gibt weniger Halt als gepolsterte oder strukturierte Oberteile\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Wassermelonen Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach dem Schwimmen\u003c\/td\u003e\n\u003ctd\u003eVerstellbare Träger ermöglichen individuellen Sitz – kann dazu beitragen, dass das Oberteil ruhiger bleibt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße schwer einzuschätzen bei Online-Bikinis\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner als Orientierung verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt bei längerem Tragen\u003c\/td\u003e\n\u003ctd\u003eElastischer Polyester-Stoff passt sich bei normaler Belastung an\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Wassermelonen Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Wassermelonen Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Hochwertiger Polyester, elastisch \u0026amp; angenehm auf der Haut\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eWassermelonen Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Wassermelonen Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen Triangel Bikini mit Wassermelonen-Muster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil sind separat wählbar. Nutze den Größenrechner mit deiner Körpergröße und deinem Gewicht als Anhaltspunkt. Bei Unsicherheit empfiehlt sich in der Regel die größere Variante, damit das Triangel-Oberteil ausreichend Spielraum zum Einstellen hat.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – zum Beispiel beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Unterteil ist aus elastischem Polyester gefertigt und auf normalen Einsatz am Strand und im Wasser ausgelegt. Bei ruhigem Schwimmen und alltäglicher Strandbewegung bleibt es in der Regel ruhig sitzen. Für intensive Wassersportaktivitäten ist dieser Schnitt weniger konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Wassermelonen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Waschen im Feinwaschgang bei 30 °C. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen erhält Form und Material länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für den Bodensee oder andere Seen geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Triangel Bikini mit Wassermelonen-Muster eignet sich für den Einsatz an See, Pool und Strand. Er ist auf alltägliche Strandsituationen ausgelegt – ruhiges Schwimmen, Hin- und Hergehen, Hinsetzen am Ufer.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich den regionalen Wassermelonen Bikini auch als Geschenk bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas ist möglich. Da Bikinis sehr größenabhängig sind, empfiehlt sich ein Blick in den Größenrechner oder – bei Unsicherheit – ein Gutschein, damit die beschenkte Person die Größe selbst wählen kann.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/push-up-bikini\"\u003ePush-up Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/bikini-grosse-grossen\"\u003eBikini große Größen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Wassermelonen-Illustration mit schwarzen Kernen auf hellem Grund – klar und direkt\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Triangel-Oberteil am Bodenseeufer im Nachmittagslicht\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Wassermelonen Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eWassermelonen Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Wassermelonen Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Wassermelonen Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/products\/Hb29d579058b749d3934f67fe54ec6e115.jpg?v=1753460804\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Wassermelone \/ S","offer_id":44489438789900,"sku":"14:365458#red;5:100014064;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wassermelone \/ M","offer_id":44489438953740,"sku":"14:365458#red;5:361386;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wassermelone \/ L","offer_id":44489439117580,"sku":"14:365458#red;5:361385;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wassermelone \/ XL","offer_id":44489439281420,"sku":"14:365458#red;5:100014065;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wassermelone \/ 2XL","offer_id":44489456156940,"sku":"Wassermelone2XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Leoparde \/ S","offer_id":44489438822668,"sku":"14:350852#black;5:100014064;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Leoparde \/ M","offer_id":44489438986508,"sku":"14:350852#black;5:361386;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Leoparde \/ L","offer_id":44489439150348,"sku":"14:350852#black;5:361385;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Leoparde \/ XL","offer_id":44489439314188,"sku":"14:350852#black;5:100014065;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Leoparde \/ 2XL","offer_id":44489456189708,"sku":"Leopard2XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Honigmelone \/ S","offer_id":44489438855436,"sku":"14:366#yellow;5:100014064;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Honigmelone \/ M","offer_id":44489439019276,"sku":"14:366#yellow;5:361386;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Honigmelone \/ L","offer_id":44489439183116,"sku":"14:366#yellow;5:361385;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Honigmelone \/ XL","offer_id":44489439346956,"sku":"14:366#yellow;5:100014065;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Honigmelone \/ 2XL","offer_id":44489456222476,"sku":"Honigmelone2XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig bunt \/ S","offer_id":44489438888204,"sku":"14:1254#striped;5:100014064;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig bunt \/ M","offer_id":44489439052044,"sku":"14:1254#striped;5:361386;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig bunt \/ L","offer_id":44489439215884,"sku":"14:1254#striped;5:361385;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig bunt \/ XL","offer_id":44489439379724,"sku":"14:1254#striped;5:100014065;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig bunt \/ 2XL","offer_id":44489456255244,"sku":"Weilligbunt2XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig gelb \/ S","offer_id":44489438920972,"sku":"14:200004891#yellow;5:100014064;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig gelb \/ M","offer_id":44489439084812,"sku":"14:200004891#yellow;5:361386;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig gelb \/ L","offer_id":44489439248652,"sku":"14:200004891#yellow;5:361385;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig gelb \/ XL","offer_id":44489439412492,"sku":"14:200004891#yellow;5:100014065;200007763:201336100","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Wellig gelb \/ 2XL","offer_id":44489456288012,"sku":"Welliggelb2XL","price":25.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/products\/Hb29d579058b749d3934f67fe54ec6e115.jpg?v=1753460804"},{"product_id":"bikini-damen-punkte","title":"schwarzer Bikini mit Punkten","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der schlicht genug bleibt – und trotzdem mehr als nichts sagt?\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eBikini schwarz mit Punkten – für See, Strand und ruhige Sommertage\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin klassischer Schnitt mit weißem Punktemuster auf schwarzem Grund – dezent gemustert, gut kombinierbar, aus 78 % Polyamid und 22 % Elasthan mit leicht anliegender Wirkung.\u003c\/p\u003e\n\u003cp\u003eSchwarze Bikinis verschwinden manchmal in der Masse – dieser hier hat durch die weißen Punkte etwas, das auffällt, ohne zu dominieren. Das Muster ist klein und regelmäßig gestreut, sodass das Schwarz die Grundwirkung bestimmt. Am Bodenseeufer, wo das Licht oft flach über das Wasser fällt, trägt sich genau dieses Zusammenspiel angenehm – nicht zu viel, nicht zu wenig.\u003c\/p\u003e\n\u003cp\u003eDie Punkte geben dem Bikini mehr visuelle Struktur als ein reines Uni-Schwarz, bleiben aber zurückhaltend genug, um mit einem weißen Strandtuch, einem hellen Leinenhemd oder schlichten Sandalen zu funktionieren. Wer gern ein Basisstück sucht, das sich saisonal weitertragen lässt, findet hier einen klaren, unaufgeregten Look – polka dot, aber ohne Retro-Übertreibung.\u003c\/p\u003e\n\u003cp\u003eAm Nachmittag auf dem Steg, wenn man gerade aus dem Wasser gestiegen ist und sich in der Sonne niederlässt – da zeigt sich, ob ein Bikini wirklich passt. Dieser wirkt in solchen Momenten ruhig, ohne dass man daran denkt. Auch auf Reisen als leicht zu packendes Set geeignet, das sich mit verschiedenen Sarongs oder Strandtaschen kombinieren lässt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne die schwarze Basis zu verdrängen – schlicht, aber nicht unsichtbar.\u003cbr\u003e• Das Material passt sich der Bewegung an – beim Hinsetzen auf dem Handtuch, beim Aufstehen am Ufer.\u003cbr\u003e• Der Look lässt sich weiterdenken – über den Strand hinaus, für Reisen mit wenig Gepäck.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du ein Bikini-Set suchst, das ruhig bleibt und sich nicht aufdrängt – schau dir die verfügbaren Größen an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 86.0, \"hip_max\": 91.0}, {\"name\": \"M\", \"hip_min\": 91.0, \"hip_max\": 96.0}, {\"name\": \"L\", \"hip_min\": 96.0, \"hip_max\": 101.0}, {\"name\": \"XL\", \"hip_min\": 101.0, \"hip_max\": 106.0}, {\"name\": \"2XL\", \"hip_min\": 106.0, \"hip_max\": 111.0}, {\"name\": \"3XL\", \"hip_min\": 111.0, \"hip_max\": 116.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e✔ Muster: weiße Punkte auf schwarzem Grund\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Bikini mit Punkten sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini sich den ganzen Tag ruhig verhält\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Muster, Materialgefühl – was wirklich entscheidet.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Bikini verrutscht beim Schwimmen oder Hinsetzen\u003c\/li\u003e\n\u003cli\u003eDas Muster wirkt auf Fotos anders als in Wirklichkeit\u003c\/li\u003e\n\u003cli\u003eUnsicher, ob ein gepunktetes Muster zum eigenen Stil passt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManche Bikinis sitzen beim Anziehen gut – und verschieben sich dann beim ersten Sprung ins Wasser. Das ist kein Komfort-Vorwurf, sondern einfach eine Frage des Schnitts und des Materials. Bei Bademode mit Elasthan-Anteil kann der Stoff bei Bewegung mitgehen, ohne sofort nachzugeben – ob das bei diesem Modell so ist, lässt sich am besten am eigenen Körper einschätzen.\u003c\/p\u003e\n\u003cp\u003e78 % Polyamid und 22 % Elasthan ist eine Mischung, die in der Bademode häufig für Dehnbarkeit und einen anliegenden Sitz verwendet wird. Das bedeutet nicht, dass er bei jedem Körper gleich sitzt – Schnitt und persönliche Passform spielen immer eine Rolle. Wichtig ist auch die Pflege: Feinwäsche bei 30 °C, nicht im Trockner, kurz mit klarem Wasser ausspülen nach dem Tragen. Das kann dazu beitragen, dass Form und Elastizität länger erhalten bleiben.\u003c\/p\u003e\n\u003cp\u003eDieses Modell eignet sich eher für Trägerinnen, die einen klassischen Bikini-Look mit Muster suchen – kein Push-up, kein starker Shaping-Effekt, kein explizit sportorientiertes Material. Wenn du ein Modell mit ausgeprägter sportlicher Funktion oder komplett unifarbenem Design suchst, ist das möglicherweise nicht der richtige Ausgangspunkt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMagst du ein Bikini-Set, das sich dezent zeigt – oder soll es mehr Struktur und Funktion mitbringen?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Bauch-, Hüft- und Brustumfang ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du dir bei der Größe unsicher bist: Bei Bademode empfiehlt es sich, im Zweifel etwas mehr Spielraum einzuplanen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Am Strand oder Pool als klassischer Freizeit-Bikini getragen\u003c\/li\u003e\n\u003cli\u003e→ Auf Reisen als leicht kombinierbares Bademoden-Basic genutzt\u003c\/li\u003e\n\u003cli\u003e→ Beim Sonnenbaden oder Schwimmen als unkompliziertes Set eingesetzt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Bikini mit Punkten\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikinis verrutschen beim Schwimmen oder bei Bewegung\u003c\/td\u003e\n\u003ctd\u003eDie Materialmischung mit Elasthan kann einen anliegenden Sitz unterstützen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDrucke wirken schnell billig oder zu auffällig\u003c\/td\u003e\n\u003ctd\u003eDas Punktmuster kann den schwarzen Grund dezent akzentuieren, statt dominant zu wirken\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMaterial fühlt sich nach kurzer Zeit steif an oder trocknet schlecht\u003c\/td\u003e\n\u003ctd\u003ePolyamid mit Elasthan wird oft für ein flexibles Tragegefühl verwendet und kann pflegeleicht sein, wenn die Waschhinweise beachtet werden\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchwarze Bademode verliert optisch schnell an Spannung\u003c\/td\u003e\n\u003ctd\u003eDie Punkte können dem dunklen Look mehr visuelle Struktur geben\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Bikini mit Punkten mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Bikini mit Punkten im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarzer Bikini mit Punkten\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Bikini mit Punkten\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze den Größenrechner – Körpergröße und Gewicht reichen für eine erste Einschätzung. Bei Unsicherheit eine Größe größer wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer hohe Hüftbund liegt flach auf der Hüfte. Bei Unsicherheit eine Größe größer wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich Bikini-Stoffe richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug\"\u003eInnovative Badeanzüge für Damen: Trends, Passform und Stil\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/innovative-badeanzuge-fur-damen-trends-passform-und-selbstbewusstsein\"\u003eInnovative Badeanzüge für Damen: Trends, Passform und Selbstbewusstsein\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/das-ultimative-ziel-fur-passform-und-komfort-bei-plus-size-bademode\"\u003eDas Ultimative Ziel für Passform und Komfort bei Plus-Size Bademode\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"schwarzer bikini mit punkten damen\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"bikini schwarz weiß punkte look\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Bikini mit Punkten eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Bikini mit Punkten\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.94\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Bikini mit Punkten dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Bikini mit Punkten\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/bikini5.png?v=1753460524\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.94\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Default Title","offer_id":44490902012172,"sku":"","price":29.94,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/bikini5.png?v=1753460524"},{"product_id":"badeanzug-damen-schulter-bedeckt","title":"schwarzer Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der den ganzen Tag ruhig sitzt – am See wie auf der Liege?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses entspannte Gefühl, wenn du aus dem Wasser steigst und nichts nachziehen oder richten musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim ersten Anziehen, sondern erst nach ein paar Stunden am Wasser – wenn der Badeanzug einfach mitgemacht hat.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen schwarz – schlichter Einteiler für See, Pool und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin unifarbener Einteiler in Schwarz – ohne Muster, ohne Ablenkung, mit klarer Linie. Der Schnitt ist auf Alltagstauglichkeit ausgelegt: ruhig genug für den Badetag am Bodensee, zurückhaltend genug für Therme oder Schwimmbad.\u003c\/p\u003e\n\u003cp\u003eSchwarz ist keine Verlegenheitslösung. Die Farbe funktioniert, weil sie nichts behauptet – und deshalb zu fast allem passt. Du ziehst ein leichtes Strandkleid darüber, nimmst es am Ufer ab, gehst ins Wasser: Der Übergang ist fließend, ohne dass das Outfit dabei zur Frage wird. Ein schwarzer Badeanzug wie dieser lässt sich über die Saison hinweg tragen, ohne dass er sich abnutzt – weder optisch noch im Zusammenspiel mit anderen Teilen.\u003c\/p\u003e\n\u003cp\u003eDie schlichte Silhouette ergibt sich aus dem, was weggelassen wurde: kein Druck-Motiv, kein Farbverlauf, kein Statement. Was bleibt, ist eine Form, die auf den Körper wirkt, ohne ihn zu kommentieren. Am Wasser, wenn das Licht fällt und du aufstehst, um zur Liege zu gehen, bleibt der Look ruhig und in sich geschlossen. Wer schwarze Bademode sucht, die sich mit einem floralen Pareo, einem weißen Leinenshirt oder schlichten Shorts verbindet, findet hier eine unkomplizierte Basis.\u003c\/p\u003e\n\u003cp\u003eDrei Momente, in denen dieser Badeanzug Damen schwarz einfach funktioniert: auf dem Weg zum Seeufer, wenn noch Sandalen und Sonnenbrille dazukommen – im Schwimmbad, wo ein ruhiger Look angenehm unauffällig bleibt – oder im Urlaub, wenn der Koffer klein ist und ein Teil viele Situationen abdecken soll.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du nimmst ihn heraus, und er braucht keine Erklärung – die Farbe spricht für sich.\u003cbr\u003e• Im Wasser und danach bleibt der Sitz ruhig, ohne dass du dich darum kümmern musst.\u003cbr\u003e• Beim Einpacken für den nächsten Trip landet er als Erstes im Koffer, weil er sich mit allem verträgt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du dir bei der Größe unsicher bist: Unser Größenrechner hilft dir, anhand von Brust-, Taille- und Hüftumfang eine erste Orientierung zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 86.0, \"bust_max\": 89.0, \"waist_min\": 66.0, \"waist_max\": 69.0, \"hip_min\": 93.0, \"hip_max\": 95.0}, {\"name\": \"M\", \"bust_min\": 91.0, \"bust_max\": 94.0, \"waist_min\": 71.0, \"waist_max\": 74.0, \"hip_min\": 98.0, \"hip_max\": 100.0}, {\"name\": \"L\", \"bust_min\": 98.0, \"bust_max\": 101.5, \"waist_min\": 77.0, \"waist_max\": 81.0, \"hip_min\": 100.0, \"hip_max\": 104.0}, {\"name\": \"XL\", \"bust_min\": 101.5, \"bust_max\": 109.0, \"waist_min\": 84.0, \"waist_max\": 89.0, \"hip_min\": 111.0, \"hip_max\": 115.0}, {\"name\": \"2XL\", \"bust_min\": 111.0, \"bust_max\": 117.0, \"waist_min\": 91.0, \"waist_max\": 97.0, \"hip_min\": 120.0, \"hip_max\": 126.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Farbe: Schwarz\u003c\/li\u003e\n\u003cli\u003e✔ Muster: Uni (kein Motiv)\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Alltag einfach funktionieren soll\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eRuhiger Sitz, klare Farbe, wenig Aufwand – ein schwarzer Einteiler für den Badetag.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug sitzt anders als erwartet, sobald man sich bewegt\u003c\/li\u003e\n\u003cli\u003eSchwarz wirkt schnell zu schlicht für einen Sommertag am See\u003c\/li\u003e\n\u003cli\u003eNach dem Baden ist die Pflege unklarer als gedacht\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManchen Tagen am Wasser fehlt nur eines: ein Badeanzug, der kein eigenes Thema wird. Du bist am Bodensee, gehst ins Wasser, kommst zurück zur Liege, unterhältst dich, isst etwas – und der Badeanzug sitzt dabei still und ruhig. Kein Verrutschen beim Aufstehen, kein Unbehagen, wenn du dich bewegst. Das ist kein Versprechen, aber eine Auslegung, die bei normaler Belastung in der Regel aufgeht.\u003c\/p\u003e\n\u003cp\u003eWas dabei hilft: ein klarer Schnitt ohne unnötige Details und ein Material, das für Bademode ausgelegt ist. Wer online einen Badeanzug kauft, hat oft Unsicherheiten – Passform, Deckkraft, Sitz im nassen Zustand. Diese Fragen lassen sich nicht vollständig aus der Ferne beantworten, aber Material- und Pflegeangaben sowie eine klare Schnittbeschreibung können als erster Anhaltspunkt dienen.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Einteiler richtet sich an alle, die eine ruhige, vielseitige Basis suchen – ohne starken Shaping-Effekt, ohne auffälliges Muster. Wenn du ein Modell mit ausgeprägter Formwirkung oder technischen Spezifikationen wie strukturiertem Innenfutter suchst, könnte ein anderes Modell besser passen. Wer hingegen dezente Bademode für See, Pool oder Therme sucht, findet hier einen unkomplizierten Ausgangspunkt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMagst du ruhige, unifarbene Bademode – oder bevorzugst du lieber Muster und mehr Farbe?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Brust-, Taille- und Hüftumfang ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Größe aus und leg den Badeanzug in den Warenkorb, wenn er zu dem passt, was du suchst.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Als unkomplizierte Basis für den Urlaubskoffer getragen\u003c\/li\u003e\n\u003cli\u003e→ Im Schwimmbad und am See als ruhige Alternative zu gemusterten Modellen genutzt\u003c\/li\u003e\n\u003cli\u003e→ Mit Cover-ups und Strandkleidung kombiniert für einen reduzierten Look\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Unifarbenes Schwarz – vielseitig kombinierbar mit Strandkleidung und Accessoires\u003c\/li\u003e\n\u003cli\u003e✅ Klarer, ruhiger Schnitt – ausgelegt für Alltagssituationen am Wasser\u003c\/li\u003e\n\u003cli\u003e✅ Feinwäsche 30 °C – Pflegehinweis vorhanden für eine orientierte Behandlung\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ideal, wenn du ein Modell mit ausgeprägtem Shaping- oder Stützeffekt suchst\u003c\/li\u003e\n\u003cli\u003e⚠️ Weniger geeignet, wenn du auffällige Muster oder kräftige Trendfarben bevorzugst\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht die erste Wahl, wenn du ausschließlich Trockner-geeignete Bademode möchtest\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eViele Badeanzüge werden online als optisch ansprechend beschrieben, sitzen aber bei Bewegung anders als erwartet\u003c\/td\u003e\n\u003ctd\u003eKlarer Schnitt ohne Zierelement – kann bei normaler Belastung zu einem ruhigeren Sitz beitragen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eUnifarbene schwarze Modelle wirken bei manchen Käuferinnen zu schlicht oder wenig sommerlich\u003c\/td\u003e\n\u003ctd\u003eSchwarz lässt sich mit nahezu jeder Strandkleidung kombinieren – Pareo, Leinenshirt, florale Shorts\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePflegehinweise bei Bademode sind oft unklar oder fehlen\u003c\/td\u003e\n\u003ctd\u003ePflegeempfehlung vorhanden: Ausspülen nach dem Tragen, Feinwäsche 30 °C, kein Trockner\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnlinekauf von Badeanzügen ist unsicher, weil Passform schwer einzuschätzen ist\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Brust-, Taille- und Hüftumfang als Orientierungshilfe verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 30 Sekunden\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der schwarze Badeanzug bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Badeanzug ist als schlichter Einteiler für Alltagsbelastungen am See, im Pool oder in der Therme ausgelegt. Bei normaler Bewegung – Schwimmen, Gehen, Aufstehen – bleibt er in der Regel ruhig sitzen. Ein verbindlicher Aussage über jede Tragesituation lässt sich jedoch nicht treffen, da Passform immer auch vom individuellen Körperbau abhängt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen schwarzen Badeanzug?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner und gib deinen Brust-, Taille- und Hüftumfang ein. So bekommst du eine erste Einschätzung, welche Größe am besten passen könnte. Bei Unsicherheit kann es sinnvoll sein, die nächstgrößere Variante zu wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen schwarzen Badeanzug nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen den Badeanzug kurz mit klarem, kaltem Wasser ausspülen, um Salz, Chlor oder Sand zu entfernen. Danach Feinwäsche bei 30 °C, nicht im Trockner trocknen. Diese Pflege kann dazu beitragen, Form und Farbe länger zu erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eEignet sich dieser schlichte schwarze Badeanzug für See und Strand?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Badeanzug ist für verschiedene Umgebungen ausgelegt – See, Pool, Strand oder Therme. Das unifarbene Design ohne Muster lässt sich leicht mit unterschiedlicher Strandkleidung kombinieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der schwarze Einteiler auch für das Schwimmbad geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Badeanzug kann für den Schwimmbadbesuch getragen werden. Spezifische Angaben zu Chlorbeständigkeit liegen nicht vor – die empfohlene Pflege (Ausspülen nach dem Tragen, Feinwäsche 30 °C) gilt entsprechend auch hier.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWirkt ein schwarzer Badeanzug ohne Muster zu schlicht?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas kommt auf den persönlichen Geschmack an. Schwarz ist eine vielseitige, ruhige Farbe, die sich mit fast allem kombinieren lässt – von floralen Pareos bis zu schlichten Leinenshirts. Wer auffällige Muster oder starke Trendfarben bevorzugt, findet bei gemusterten Modellen womöglich mehr Auswahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-mit-bauchweg-effekt-im-sale\"\u003eBadeanzüge mit Bauchweg-Effekt im Sale\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-die-den-bauch-kaschieren\"\u003eBadeanzüge, die den Bauch kaschieren\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-ausgefallen\"\u003eBadeanzüge ausgefallen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer Einteiler am Bodenseeufer – klare Silhouette, ruhiges Licht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Badeanzug auf der Liege, leichtes Strandkleid daneben – unkomplizierter Übergang\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.92\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1.png?v=1753460164\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.92\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ S","offer_id":44528772481292,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":44528772514060,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ L","offer_id":44528772546828,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XL","offer_id":44528916693260,"sku":"5","price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XXL","offer_id":49273838862604,"sku":"","price":34.92,"currency_code":"EUR","in_stock":false},{"title":"Kirschrot \/ S","offer_id":44528772874508,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ M","offer_id":44528772907276,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ L","offer_id":44528772940044,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XL","offer_id":44528916758796,"sku":"3","price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XXL","offer_id":49273838928140,"sku":"","price":34.92,"currency_code":"EUR","in_stock":false},{"title":"Bunte Blumen \/ S","offer_id":44528773071116,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Bunte Blumen \/ M","offer_id":44528773103884,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Bunte Blumen \/ L","offer_id":44528773136652,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Bunte Blumen \/ XL","offer_id":44528916791564,"sku":"2","price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Bunte Blumen \/ XXL","offer_id":49273838960908,"sku":"","price":34.92,"currency_code":"EUR","in_stock":false},{"title":"Schwarz\u0026Blau \/ S","offer_id":44528773267724,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Blau \/ M","offer_id":44528773300492,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Blau \/ L","offer_id":44528773333260,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Blau \/ XL","offer_id":44528916824332,"sku":"1","price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Blau \/ XXL","offer_id":49273838993676,"sku":"","price":34.92,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1.png?v=1753460164"},{"product_id":"badeanzug-damen-coteazur","title":"türkiser Badeanzug Zitronenmuster","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der im Wasser sitzt – und sich dabei noch angenehm anfühlt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Badeanzug einfach passt – vom ersten Moment im Wasser bis zum Abend auf der Liege.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht sofort, sondern dann, wenn sie sich das erste Mal entspannt im Wasser bewegen – ohne nachzukorrigieren.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen Zitronen mit Bauchkontrolle – für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einteiliger Schnitt für Bewegung im Wasser – mit einem Zitronen-Muster auf türkisem Grund, das klar und sommerlich wirkt, ohne laut zu sein. Material aus 78 % recyceltem Polyamid und 22 % Elasthan, leicht und eng anliegend auch nass.\u003c\/p\u003e\n\u003cp\u003eDas Zitronen-Muster auf türkisem Hintergrund ist eine dieser Bildwelten, die sich sofort richtig anfühlen – frisch, aber nicht aufdringlich. Die illustrierten Zitronen sind gleichmäßig über den Stoff verteilt, der türkise Grund wirkt dabei wie ein ruhiges Gegenstück: klar genug, um aufzufallen, dezent genug, um sich nie zu viel anzufühlen. Ein Badeanzug mit Zitronenmuster für Damen, der Sommer-Assoziationen weckt – am Bodensee genauso wie am Mittelmeer.\u003c\/p\u003e\n\u003cp\u003eAm Wasser sieht man solche Designs in einem bestimmten Licht: Der türkise Ton spiegelt sich ins Wasser, die Zitronenillustration wirkt im Sonnenlicht fast wie ein Druck auf feinem Papier. Auf dem Weg von der Liege ins Wasser fällt das Muster auf, ohne dass man es erklären müsste – es trägt sich einfach, ob beim ersten Sprung ins kühle Wasser oder beim Gehen am Ufer. Wer sommerliche Muster mit ruhigem Auftreten verbinden mag, findet hier einen Badeanzug Damen türkis, der beides nicht übertreibt.\u003c\/p\u003e\n\u003cp\u003eDieser türkise Badeanzug mit Zitronenmuster eignet sich für entspannte Badetage am See, für den Urlaubs-Pool, für den Sommer, der sich leicht anfühlen soll. Er passt zu einem hellen Leinenpareo auf dem Weg zur Liege, zu einer weißen Shorts danach – und er wirkt auch dann noch frisch, wenn der Tag schon lang war.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne zu dominieren – ruhig und trotzdem erkennbar.\u003cbr\u003e• Der türkise Ton wirkt klar im Sonnenlicht und bleibt auch nass angenehm anzusehen.\u003cbr\u003e• Das Design passt zu dem Gefühl, im Sommer einfach angekommen zu sein – ohne viel darüber nachdenken zu müssen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du Größe und Schnitt einschätzen möchtest: Unser Größenrechner hilft dir weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 114.6, \"waist_max\": 137.1, \"hip_min\": 86.0, \"hip_max\": 91.0, \"bust_min\": 81.0, \"bust_max\": 86.0}, {\"name\": \"M\", \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 91.0, \"hip_max\": 97.0, \"bust_min\": 86.0, \"bust_max\": 91.0}, {\"name\": \"L\", \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 97.0, \"hip_max\": 102.0, \"bust_min\": 91.0, \"bust_max\": 97.0}, {\"name\": \"XL\", \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 102.0, \"hip_max\": 107.0, \"bust_min\": 97.0, \"bust_max\": 102.0}, {\"name\": \"2XL\", \"waist_min\": 76.0, \"waist_max\": 81.0, \"hip_min\": 107.0, \"hip_max\": 112.0, \"bust_min\": 102.0, \"bust_max\": 107.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Passform: Einteilig, auf Beweglichkeit im Wasser ausgelegt\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann türkiser Badeanzug Zitronenmuster sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Wasser nicht ruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSchnitt und Material können dazu beitragen, dass er es tut – bei normaler Belastung.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDas Material fühlt sich nass unangenehm an\u003c\/li\u003e\n\u003cli\u003eDie Größe ist online schwer einzuschätzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst ein paar Züge – und bemerkst, dass du ständig nachziehst. Am Träger, am Ausschnitt, am Bein. Das ist kein dramatisches Problem, aber es zieht sich durch den ganzen Badetag. Irgendwann denkt man weniger ans Schwimmen als ans Korrigieren.\u003c\/p\u003e\n\u003cp\u003eIn vielen Fällen liegt das am Schnitt: Badeanzüge, die für statisches Stehen bemessen sind, folgen der Bewegung im Wasser weniger gut. Hinzu kommt ein Material, das sich nass anders verhält als trocken – und dann klebt oder zieht. Beides zusammen kann dazu beitragen, dass ein Badeanzug im Wasser mehr Aufmerksamkeit bekommt als er sollte.\u003c\/p\u003e\n\u003cp\u003eDieser Badeanzug ist aus 78 % recyceltem Polyamid und 22 % Elasthan gefertigt – ein Materialverhältnis, das auf Beweglichkeit und Rückformung ausgelegt ist, bei normaler Belastung. Der Schnitt soll bei Schwimmbewegungen ruhig mitsitzen, ohne zu spannen oder zu rutschen. Wenn du allerdings einen Badeanzug für tägliches Leistungsschwimmen oder intensive Trainingseinheiten suchst, könnte ein technischer Sportschnitt besser passen – das ist ehrlich gemeint.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der Schnitt zu deiner Körperform und deiner Art, das Wasser zu nutzen?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte und Brust ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe, falls er doch nicht so sitzt wie erwartet.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Ufer ruhig\u003c\/li\u003e\n\u003cli\u003e→ Zitronen-Muster wirkt klar und frisch – nicht überladen\u003c\/li\u003e\n\u003cli\u003e→ Pflegeleicht und angenehm auch nach einem langen Badetag\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einteiliger Schnitt, auf Beweglichkeit im Wasser ausgelegt – bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Zitronen-Muster auf türkisem Grund – sommerlich, klar, unaufdringlich\u003c\/li\u003e\n\u003cli\u003e✅ 78 % recyceltes Polyamid + 22 % Elasthan – leicht und formstabilisierend\u003c\/li\u003e\n\u003cli\u003e✅ 30 Tage Rückgabe bei Größenproblemen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ausgelegt für tägliche intensive Trainingseinheiten oder Leistungssport im Wasser\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer unifarbene Bademode bevorzugt, findet das Zitronenmuster möglicherweise zu gemustert\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ türkiser Badeanzug Zitronenmuster\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eEinteiliger Schnitt aus Polyamid\/Elasthan – auf stabilen Sitz bei Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm an\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil kann dazu beitragen, dass der Stoff auch nass angenehm anliegt – bei normaler Belastung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einschätzbar\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Taille, Hüfte, Brust – und 30 Tage Rückgabe als Orientierung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei türkiser Badeanzug Zitronenmuster mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich türkiser Badeanzug Zitronenmuster im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu türkiser Badeanzug Zitronenmuster\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der türkise Badeanzug mit Zitronenmuster bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Schnitt ist auf Beweglichkeit ausgelegt – das Materialverhältnis aus recyceltem Polyamid und Elasthan kann bei normaler Belastung dazu beitragen, dass der Badeanzug beim Schwimmen ruhiger sitzt. Für intensives tägliches Sporttraining ist er weniger ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Badeanzug Damen türkis?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner und gib Taille, Hüfte und Brust ein – so kannst du den Schnitt besser einschätzen. Bei Unsicherheit kann es helfen, eine Größe größer zu wählen, da Badeanzüge im nassen Zustand etwas mehr anliegen. 30 Tage Rückgabe, falls die Größe nicht passt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das schont das Elasthan und die Farbe des Musters.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist der schlichter Badeanzug mit Zitronenprint weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer einen Badeanzug speziell für tägliche intensive Schwimmeinheiten oder Leistungssport im Wasser sucht, findet in einem technischen Sportbadeanzug in der Regel eine besser angepasste Option.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelches Material wird beim türkisen Badeanzug Damen gemustert verwendet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003e78 % Polyamid (recycelt), 22 % Elasthan. Das Material ist leicht, dehnbar und legt sich auch nass eng an, ohne zu spannen – bei normaler Beanspruchung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Gleichmäßig verteilte Zitronen-Illustration auf türkisem Grund im Sonnenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Einteiliger Schnitt, der am Wasser wie auf der Liege stimmig wirkt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann türkiser Badeanzug Zitronenmuster eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003etürkiser Badeanzug Zitronenmuster\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.94\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass türkiser Badeanzug Zitronenmuster dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"türkiser Badeanzug Zitronenmuster\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240603-WA0006.png?v=1753459932\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.94\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blauezitronen \/ S","offer_id":44528774643980,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blauezitronen \/ M","offer_id":44528774676748,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blauezitronen \/ L","offer_id":44528774709516,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blauezitronen \/ XL","offer_id":45695388549388,"sku":"","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Blauezitronen \/ 2XL","offer_id":45695388582156,"sku":"","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Weißezitronen \/ S","offer_id":44528774545676,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Weißezitronen \/ M","offer_id":44528774578444,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Weißezitronen \/ L","offer_id":44528774611212,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Weißezitronen \/ XL","offer_id":45695388680460,"sku":"","price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Weißezitronen \/ 2XL","offer_id":45695388713228,"sku":"","price":29.94,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240603-WA0006.png?v=1753459932"},{"product_id":"bikini-damen-schwarz-weiss","title":"Zebra Bikini schwarz weiß","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Strand einfach sitzt – und sich auch nach Stunden noch richtig anfühlt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini sich nicht mehr anfühlt wie etwas, das man tragen muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau im Laufe eines langen Badetages merkt man den Unterschied – nicht beim ersten Anziehen, sondern beim dritten Mal ins Wasser gehen.\u003c\/p\u003e\n  \u003ch2\u003eZebra Bikini schwarz weiß – klares Muster für See, Strand und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nZweiteiliger Schnitt mit Zebramuster in Schwarz-Weiß – für ruhige Tage am Wasser, bei denen das Muster für sich spricht, ohne zu viel Aufmerksamkeit einzufordern.\u003c\/p\u003e\n\u003cp\u003eDas Zebramuster ist eines der wenigen grafischen Muster, das sich selbst reguliert: Es wirkt markant, ohne laut zu sein. Schwarz und Weiß, klare Linien – und trotzdem nie starr. Am Bodenseeufer, wo das Licht sich anders verhält als am Meer, setzt dieses Muster einen ruhigen Kontrast zum Grün und Blau des Wassers.\u003c\/p\u003e\n\u003cp\u003eDer Zebra Bikini schwarz weiß funktioniert als Set – Oberteil und Unterteil können aber separat gewählt werden, was bei unterschiedlichen Konfektionsgrößen oben und unten hilfreich sein kann. Das Muster ist durchgehend, Saumnähte und Kanten sind klar gehalten. Kein zusätzliches Detail, das vom Gesamtbild ablenkt. Wer reduzierten Bademode-Stil mag und gleichzeitig kein einfarbiges Stück sucht, findet hier eine ruhige Mitte.\u003c\/p\u003e\n\u003cp\u003eAuf einem Handtuch am Seeufer liegend, beim Aufstehen und ins Wasser waten, beim Pause machen am Ufer mit Kaffee in der Hand – das Muster bleibt konsistent, wirkt nicht aufgesetzt. Für Tage, an denen man sich keine Gedanken mehr über den Bikini machen möchte, kann dieses Stück eine unkomplizierte Wahl sein.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster zieht Blicke auf sich, ohne dass du etwas dafür tun musst – ruhige Präsenz statt Inszenierung.\u003cbr\u003e• Schwarz-Weiß kombiniert sich reibungslos mit Strandtüchern, Sonnenbrillen und Umhängetaschen in vielen Farben.\u003cbr\u003e• Das Design ist weder retro noch modisch überladen – es bleibt in den nächsten Sommern genauso lesbar wie jetzt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du dir bei Oberteil- und Unterteigröße unsicher bist, hilft unser Größenrechner weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 66.0, \"waist_max\": 96.0, \"hip_min\": 90.0, \"hip_max\": 94.0, \"bust_min\": 86.0, \"bust_max\": 90.0}, {\"name\": \"M\", \"waist_min\": 70.0, \"waist_max\": 73.0, \"hip_min\": 94.0, \"hip_max\": 98.0, \"bust_min\": 90.0, \"bust_max\": 94.0}, {\"name\": \"L\", \"waist_min\": 74.0, \"waist_max\": 77.0, \"hip_min\": 98.0, \"hip_max\": 102.0, \"bust_min\": 94.0, \"bust_max\": 98.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Taille, Hüfte, Brust – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Zebra Bikini schwarz weiß sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Bikinis beim Bewegen mehr Aufmerksamkeit brauchen als der Tag selbst\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitzt er noch – oder justierst du schon wieder nach.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil verrutscht schon beim ersten Sprung ins Wasser\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Stunde an der falschen Stelle\u003c\/li\u003e\n\u003cli\u003eOnline-Größen stimmen bei Bikinis selten mit der Realität überein\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eMan liegt am Ufer, steht auf, geht ein paar Schritte ins Wasser – und merkt, dass man nachzieht. Oben. Oder unten. Oder beides. Das passiert nicht bei jedem Bikini, aber oft genug, dass man es kennt.\u003c\/p\u003e\n\u003cp\u003eOft liegt es am Material oder am Schnitt: Wenn Stoff und Körper nicht gut zusammenpassen, reagiert das Stück auf jede Bewegung. 78 % Polyamid und 22 % Elasthan sind auf Flexibilität ausgelegt – der Stoff gibt mit und zieht sich bei normaler Belastung in der Regel zurück. Ein Versprechen ist das nicht, aber ein Anhaltspunkt für das Verhalten im Alltag am Wasser.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini kann für dich passen, wenn du einen ruhigen Sitz schätzt und kein intensiv sportliches Programm im Wasser planst. Für Leistungsschwimmen oder sehr intensive Wasseraktivitäten ist er nicht ausgelegt – und das ist keine Schwäche, sondern eine Frage des Verwendungszwecks. Wer eher gemütliche Strand- und Seetage mag, für den könnte dieser Schnitt gut funktionieren. Wer dagegen ein technisches Schwimmstück sucht, schaut sich besser woanders um.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie sieht dein typischer Tag am Wasser aus – eher entspannt oder aktiv?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte und Brust ein, um eine Orientierung zu bekommen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du unsicher bist: Ober- und Unterteil sind separat wählbar, was bei unterschiedlichen Maßen oben und unten helfen kann.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Strandtag noch wie beim ersten Anziehen\u003c\/li\u003e\n\u003cli\u003e→ Oberteil bleibt auch beim Schwimmen ruhig – kein ständiges Nachziehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Grafisches Zebramuster in Schwarz-Weiß – zeitlos kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – bei unterschiedlichen Maßen hilfreich\u003c\/li\u003e\n\u003cli\u003e✅ Elasthan-Anteil für Bewegungsfreiheit bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Reduzierter Schnitt ohne überflüssige Details\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für Leistungsschwimmen oder intensive Wassersportaktivitäten konzipiert\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer einfarbige Bademode bevorzugt, findet hier ein gemustertes Stück – das ist Geschmackssache\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein technischer Schwimmschnitt – eher für entspannte Tage am Wasser\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Zebra Bikini schwarz weiß\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen und muss ständig nachgezogen werden\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil ist auf Rückstellvermögen bei Bewegung ausgelegt – bleibt bei normaler Belastung meist ruhig sitzen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bikinis stimmen selten – man kauft die falsche Größe\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner mit Taille, Hüfte und Brust als Orientierung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt im Laden anders als zu Hause oder am Wasser\u003c\/td\u003e\n\u003ctd\u003eSchwarz-Weiß-Zebramuster ist lichtunabhängig klar lesbar – kein Farbversatz durch Tageslicht\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBademode verblasst nach einer Saison deutlich\u003c\/td\u003e\n\u003ctd\u003eSchonende Pflege (Feinwäsche 30 °C, kein Trockner) kann dazu beitragen, Form und Farbe länger zu erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Zebra Bikini schwarz weiß mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Zebra Bikini schwarz weiß im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eZebra Bikini schwarz weiß\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Zebra Bikini schwarz weiß\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen Zebra Bikini schwarz weiß?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür diesen Bikini empfehlen wir, Taille, Hüfte und Brust zu messen und in unseren Größenrechner einzugeben. Da Ober- und Unterteil separat gewählt werden können, lässt sich die Größe oben und unten unabhängig voneinander anpassen – hilfreich, wenn die Maße oben und unten unterschiedlichen Konfektionsgrößen entsprechen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Stoff (78 % Polyamid, 22 % Elasthan) ist auf Flexibilität ausgelegt und gibt bei Bewegung mit. Bei normaler Belastung – Gehen, Schwimmen, Hinsetzen – bleibt der Bund in der Regel ruhig sitzen. Für intensive Wassersportaktivitäten ist dieser Bikini nicht konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – hängend oder liegend an der Luft trocknen lassen. So bleibt Form und Elastizität länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini mit Zebramuster auch für kleine Brust geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil lässt sich separat in der passenden Größe wählen. Über unseren Größenrechner mit Brustmaß-Eingabe bekommst du eine Orientierung, welche Größe für dich in Frage kommen könnte. Das grafische Zebramuster verteilt sich gleichmäßig und ist nicht auf eine bestimmte Oberweite ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eVerblasst das Zebramuster nach mehreren Wäschen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003ePolyamid-Elasthan-Mischgewebe ist in der Regel farbstabil, wenn es nach Pflegehinweis gewaschen wird. Ein kein Versprechen auf dauerhafte Farbintensität lässt sich nicht geben – schonende Pflege (Feinwäsche 30 °C, kein Trockner) kann dazu beitragen, dass Farbe und Form länger erhalten bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich diesen Bikini als Zebra Bikini Set kaufen oder nur einzeln?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOberteil und Unterteil sind separat wählbar – du kannst also beide Teile zusammen als Set konfigurieren oder nur eines der beiden Teile bestellen, wenn du ein passendes Gegenstück bereits hast.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Klares Schwarz-Weiß-Zebramuster im Sonnenlicht am Seeufer\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini liegt auf einem Leinentuch neben einer Sonnenbrille – reduziertes Gesamtbild\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Zebra Bikini schwarz weiß eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eZebra Bikini schwarz weiß\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Zebra Bikini schwarz weiß dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Zebra Bikini schwarz weiß\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1_814b098c-8ae8-40fa-82cf-4f54c06ac7cd.png?v=1753459637\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Weiß\u0026Schwarz \/ S","offer_id":44528775594252,"sku":null,"price":34.95,"currency_code":"EUR","in_stock":true},{"title":"Weiß\u0026Schwarz \/ M","offer_id":44528775627020,"sku":null,"price":34.95,"currency_code":"EUR","in_stock":true},{"title":"Weiß\u0026Schwarz \/ L","offer_id":44528775659788,"sku":null,"price":34.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1_814b098c-8ae8-40fa-82cf-4f54c06ac7cd.png?v=1753459637"},{"product_id":"badeanzug-damen-einteilig-schulter-ruckenfrei","title":"schwarzer Badeanzug Damen einteilig","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Badeanzug aus, der den ganzen Tag sitzt – am See, im Wasser, auf der Liege?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Einteiler einfach da bleibt, wo er hingehört – ohne Nachziehen, ohne Korrigieren.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau im Laufe eines Badetages merken viele den Unterschied – nicht beim ersten Anziehen, sondern beim zweiten Ins-Wasser-Gehen.\u003c\/p\u003e\n  \u003ch2\u003eSchwarzer Badeanzug Damen einteilig – schlicht, ruhig, für See und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin klarer Schnitt ohne Muster oder Aufdruck – der schwarze Einteiler ist auf ruhiges Auftreten ausgelegt, nicht auf Aufmerksamkeit. Der Stoff aus 78 % recyceltem Polyamid und 22 % Elasthan liegt nass wie trocken angenehm an der Haut.\u003c\/p\u003e\n\u003cp\u003eSchwarz ist hier keine Verlegenheitslösung, sondern eine Haltung. Der einfarbige Look wirkt am Bodenseeufer genauso stimmig wie am Pool im Urlaub – ohne dass man groß über Kombinierbarkeit nachdenken müsste. Das Uni-Design lässt sich über ein Sarong-Tuch werfen, unter eine offene Bluse schieben oder einfach so tragen, wie er ist.\u003c\/p\u003e\n\u003cp\u003eDie gerade, reduzierte Form betont keine bestimmte Silhouette, sondern lässt Spielraum. Wer Muster, Prints oder auffällige Schnitte bevorzugt, wird hier wenig Aufregung finden – das ist beabsichtigt. Dieser Badeanzug richtet sich an alle, die ihren Look lieber leise als laut gestalten. Am Morgen beim ersten Sprung ins kühle Wasser, am Nachmittag auf der Liege im Schatten – er macht beides mit, ohne dabei in den Vordergrund zu drängen.\u003c\/p\u003e\n\u003cp\u003eMögliche Momente für diesen Einteiler: ein langer Tag am See, bei dem man mehrmals ins Wasser geht und danach in der Sonne liegt. Ein Hotelpool, bei dem man sich zwischen Schwimmen und Kaffeetrinken hin- und herbewegt. Oder der erste Badetag nach einer langen Arbeitswoche, bei dem man einfach anziehen und loslaufen möchte, ohne zweimal hinschauen zu müssen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff fühlt sich auch nass nicht schwer oder klebrig an – er liegt ruhig an.\u003cbr\u003e• Das Schwarz bleibt tief und klar, ohne dass der Einteiler dabei steif wirkt.\u003cbr\u003e• Du greifst morgens danach, ohne lange zu überlegen – das ist das Zeichen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du weißt, dass du eher zu schlichten Schnitten neigst: Schau dir die Größentabelle an und wähle über Taille, Hüfte oder Brust.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 66.0, \"waist_max\": 96.0, \"hip_min\": 90.0, \"hip_max\": 94.0, \"bust_min\": 86.0, \"bust_max\": 90.0}, {\"name\": \"M\", \"waist_min\": 70.0, \"waist_max\": 73.0, \"hip_min\": 94.0, \"hip_max\": 98.0, \"bust_min\": 90.0, \"bust_max\": 94.0}, {\"name\": \"L\", \"waist_min\": 74.0, \"waist_max\": 77.0, \"hip_min\": 98.0, \"hip_max\": 102.0, \"bust_min\": 94.0, \"bust_max\": 98.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: nach Taille, Hüfte oder Brust\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Badeanzug Damen einteilig sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Wasser seinen Platz nicht hält\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitzt er wirklich noch – nach dem dritten Sprung ins Wasser?\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDas Nass-Gefühl nach dem Baden sitzt unangenehm auf der Haut\u003c\/li\u003e\n\u003cli\u003eDie Größe online einschätzen ist bei Bademode schwierig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man steigt aus dem Wasser, und bevor man zur Liege geht, muss erst zurechtgezogen werden. Nicht dramatisch – aber spürbar. Besonders bei einteiligen Modellen, die nicht auf Bewegung im Wasser ausgelegt sind, passiert das öfter als nötig.\u003c\/p\u003e\n\u003cp\u003eDer Grund liegt meist im Zusammenspiel aus Schnitt und Material. Wenn der Stoff wenig Elastizität hat oder der Schnitt nicht auf Bewegung ausgerichtet ist, verschiebt sich der Sitz beim Schwimmen. Das ist kein Qualitätsproblem im engeren Sinn – sondern eine Frage der Auslegung.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Badeanzug ist aus 78 % recyceltem Polyamid und 22 % Elasthan gefertigt – ein Materialmix, der auf Beweglichkeit ausgelegt ist und bei normaler Belastung im Wasser meist ruhig sitzen bleibt. Er eignet sich für Tage am See oder Pool, für gelegentliches Schwimmen, für Urlaub. Wenn du täglich intensive Schwimmeinheiten machst oder Bademode für den Leistungssport suchst, ist ein spezialisiertes Wettkampfmodell vermutlich passender für dich. Magst du außerdem Prints oder strukturierte Schnitte, wirst du hier wenig Abwechslung finden – dieser Einteiler ist bewusst reduziert gehalten.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das zu dem, was du suchst – ein schwarzer Einteiler, der ohne viel Aufmerksamkeit einfach mitgeht?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte oder Brust ein und schau, welche Angabe am besten zu deiner Figur passt.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe – falls die Größe nicht stimmt oder der Schnitt doch nicht passt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Schwarz bleibt klar und tief – auch nach mehreren Trageeinheiten\u003c\/li\u003e\n\u003cli\u003e→ Schlicht genug für jeden Badetag, ohne lange darüber nachzudenken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Schlichter, einfarbiger Schnitt – kein Muster, kein Aufdruck, zeitlos kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Materialmix aus recyceltem Polyamid und Elasthan – auf Beweglichkeit im Wasser ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Größenwahl nach Taille, Hüfte oder Brust für individuelle Passform\u003c\/li\u003e\n\u003cli\u003e✅ Feinwäsche 30 °C – unkomplizierte Pflege\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für tägliche intensive Schwimmeinheiten oder Leistungssport ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer Muster, Prints oder strukturierte Schnitte bevorzugt, findet hier wenig Abwechslung\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein spezieller Chlor- oder Salzwasserschutz deklariert – regelmäßiges Ausspülen empfohlen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Badeanzug Damen einteilig\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen und muss ständig korrigiert werden\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil legt den Schnitt auf Bewegung im Wasser aus – bleibt bei normaler Belastung meist ruhig sitzen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass schwer und klebrig an\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Mix liegt auch nass leicht an – kein schweres Nass-Gefühl beim Bewegen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenwahl nach Taille, Hüfte oder Brust + 30 Tage Rückgabe als Anhaltspunkt bei Unsicherheit\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Badeanzug Damen einteilig mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Badeanzug Damen einteilig im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Badeanzug Damen einteilig\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der schwarze Badeanzug Damen einteilig beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Schnitt ist auf Bewegung im Wasser ausgelegt. Durch den Elasthan-Anteil passt sich der Stoff an und bleibt bei normaler Belastung meist ruhig sitzen – beim Schwimmen wie beim Gehen am Strand. Für sehr intensive tägliche Schwimmeinheiten ist ein spezialisiertes Wettkampfmodell besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim einteiligen schwarzen Badeanzug?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie Größenwahl erfolgt über Taille, Hüfte oder Brust. Unser Größenrechner hilft dir einzuschätzen, welche Angabe für deinen Schnitt am besten passt. Bei Unsicherheit zwischen zwei Maßen lohnt es sich, beide Maße einzugeben und zu vergleichen. 30 Tage Rückgabe sind möglich, falls die Größe nicht stimmt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den schlichter Badeanzug Damen schwarz nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann in der Feinwäsche bei 30 °C waschen. Nicht im Trockner trocknen – das schont das Material und erhält die Elastizität länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der einteilige schwarze Badeanzug für Damen auch für den Pool geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Badeanzug ist für den alltäglichen Einsatz am See, Pool und im Urlaub ausgelegt. Bei regelmäßigem Kontakt mit Chlor- oder Salzwasser empfiehlt es sich, ihn nach jedem Tragen mit klarem Wasser auszuspülen, um das Material zu schonen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelche Rückgabemöglichkeiten gibt es?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eRückgabe ist innerhalb von 30 Tagen möglich – falls die Größe nicht passt oder der Schnitt nicht das ist, was du erwartet hast.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer einfarbiger Einteiler am Bodenseeufer – ruhig, klar, ohne Ablenkung\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Aus dem Wasser steigen, zur Liege gehen – kein Nachziehen nötig\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Badeanzug Damen einteilig eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Badeanzug Damen einteilig\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.92\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Badeanzug Damen einteilig dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Badeanzug Damen einteilig\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/WhatsAppBild2023-07-19um07.48.08.jpg?v=1753458742\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.92\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ S","offer_id":44528776511756,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":44528776544524,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ L","offer_id":44528776577292,"sku":null,"price":34.92,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/WhatsAppBild2023-07-19um07.48.08.jpg?v=1753458742"},{"product_id":"badeanzug-damen-einfarbig","title":"schwarzer Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Badeanzug aus, der den ganzen Tag ruhig sitzt – im Wasser und danach?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Badeanzug einfach mitgeht – ohne Nachziehen, ohne Nachdenken.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau da merken viele den Unterschied: nicht beim ersten Anziehen, sondern wenn man sich bewegt.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen schwarz – schlicht, einteilig, für See und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einteiliger schwarzer Schnitt ohne Muster – ausgelegt für Tage am Wasser, an denen man wenig nachdenken möchte. Unifarben in Tiefschwarz, der Stoff liegt eng genug, um nicht zu flattern, und gibt bei Bewegung nach.\u003c\/p\u003e\n\u003cp\u003eSchwarz ist selten eine auffällige Wahl – und das ist hier der Punkt. Dieser Badeanzug Damen schwarz setzt auf eine reduzierte Linie, die am Bodenseeufer genauso funktioniert wie am Hotelpool. Keine Prints, keine Grafiken, nichts, das nach zwei Saisons veraltet aussieht. Nur eine klare Form, die sich in den Hintergrund stellt – und genau dadurch trägt.\u003c\/p\u003e\n\u003cp\u003eDas unifarbene Schwarz lässt sich leicht kombinieren: ein leichtes Leinenhemd drüber, ein Pareo um die Hüfte, oder einfach pur. Du gehst vom Wasser zur Liege, trägst eine Strandtasche in der einen, ein Getränk in der anderen Hand – und das Outfit braucht keine weitere Aufmerksamkeit. Der ruhige Look kann dazu beitragen, dass man sich weniger Gedanken macht, was gerade passt und was nicht.\u003c\/p\u003e\n\u003cp\u003eAuf der Liege beim Lesen, beim Sprung ins kühle Wasser, beim langsamen Zurückgehen zum Handtuch: Das reduzierte Design bleibt im Hintergrund, während der Tag im Vordergrund steht. Wer gerne kombinierbares Schwarz am Wasser trägt und nicht jede Saison ein neues Muster möchte, könnte hier etwas finden, das langfristig funktioniert.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Schwarz wirkt auch nass ruhig – kein Muster, das sich verändert oder unruhig wird.\u003cbr\u003e• Du ziehst nichts nach, wenn du aus dem Wasser steigst – der Stoff gibt nach und kehrt zurück.\u003cbr\u003e• Du kombinierts ihn mit einem Strandkleid, das du ohnehin magst – ohne Farbabstimmung.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSchau dir die Größenoptionen an und prüf, ob Schnitt und Maße zu dir passen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 78.0, \"waist_max\": 84.0, \"hip_min\": 90.0, \"hip_max\": 96.0, \"bust_min\": 83.0, \"bust_max\": 89.0}, {\"name\": \"M\", \"waist_min\": 83.0, \"waist_max\": 89.0, \"hip_min\": 96.0, \"hip_max\": 102.0, \"bust_min\": 88.0, \"bust_max\": 94.0}, {\"name\": \"L\", \"waist_min\": 88.0, \"waist_max\": 94.0, \"hip_min\": 101.0, \"hip_max\": 107.0, \"bust_min\": 93.0, \"bust_max\": 99.0}, {\"name\": \"XL\", \"waist_min\": 96.0, \"waist_max\": 102.0, \"hip_min\": 108.0, \"hip_max\": 114.0, \"bust_min\": 101.0, \"bust_max\": 107.0}, {\"name\": \"2XL\", \"waist_min\": 103.0, \"waist_max\": 109.0, \"hip_min\": 116.0, \"hip_max\": 122.0, \"bust_min\": 108.0, \"bust_max\": 114.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: Schwarz, einfarbig ohne Muster\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug beim Bewegen unruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003ePassform und Material können zusammenspielen – oder nicht.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug sitzt gut beim Anziehen, aber nicht mehr beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDas Material gibt nach, kehrt aber nicht zur Form zurück\u003c\/li\u003e\n\u003cli\u003eSchlicht sollte nicht gleichbedeutend sein mit beliebig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu bist im Wasser, streckst die Arme aus – und irgendwas zieht. Am Träger, am Beinausschnitt, irgendwo. Nicht dramatisch, aber präsent. Bei Bademode ist dieser Moment oft die eigentliche Probe: nicht das erste Anziehen, sondern die erste Bewegung.\u003c\/p\u003e\n\u003cp\u003eEin Teil davon hängt am Material: Stoffe mit wenig Elasthan können bei Bewegung nachgeben, aber nicht vollständig zurückkommen. Der 22-%-Elasthan-Anteil hier ist ausgelegt dafür, Dehnung abzufedern und den Sitz bei normaler Belastung im Wasser zu unterstützen – kein Versprechen, aber ein Anhaltspunkt. Entscheidend bleibt der konkrete Schnitt, den du über die Maßtabelle einschätzen kannst.\u003c\/p\u003e\n\u003cp\u003eWer einen schlichten schwarzen Badeanzug Damen sucht, der ruhig kombinierbar ist und am Wasser funktioniert, ohne aufzufallen – für den kann dieses Modell passen. Wenn du hingegen starke formende Wirkung oder besondere Schnittdetails wie Rüschen oder gepolsterte Cups erwartest, findest du das hier nicht. Dieser Badeanzug ist auf Zurückhaltung ausgerichtet, nicht auf Modellierung.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst dir ein schlichter, einteiliger Schnitt ohne viel Drum und Dran – oder suchst du eher ein Modell mit mehr Details?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte und Brust ein, um die passende Größe zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Größe und sieh nach, ob das Modell verfügbar ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz beim Schwimmen und beim Gehen vom Wasser zur Liege\u003c\/li\u003e\n\u003cli\u003e→ Schlicht genug, um mit jedem Strand-Outfit zu funktionieren\u003c\/li\u003e\n\u003cli\u003e→ Unifarbenes Schwarz, das auch nach dem Baden optisch ruhig bleibt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einteiliger Schnitt ohne Muster – vielseitig kombinierbar an See, Pool und Strand\u003c\/li\u003e\n\u003cli\u003e✅ 22 % Elasthan – ausgelegt für flexiblen Sitz bei Bewegung im Wasser\u003c\/li\u003e\n\u003cli\u003e✅ Pflegehinweise auf schonenden Umgang ausgerichtet: Feinwäsche 30 °C, kein Trockner\u003c\/li\u003e\n\u003cli\u003e✅ Schwarze Unifarbe – bleibt auch über mehrere Saisons optisch ruhig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Wer auffällige Muster, Prints oder Trendfarben sucht, findet das hier nicht\u003c\/li\u003e\n\u003cli\u003e⚠️ Für starke formende Funktionen oder gepolsterte Cups ist dieses Modell nicht ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Häufige Maschinenwäsche oder Trocknernutzung ist laut Pflegehinweis nicht vorgesehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eViele Badeanzüge rutschen an Trägern oder Beinausschnitt bei Bewegung\u003c\/td\u003e\n\u003ctd\u003e22 % Elasthan kann einen flexibleren Sitz bei normaler Belastung unterstützen – Schnitt über Maßtabelle prüfen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGlänzende Stoffe oder Prints wirken schnell unruhig oder veralten optisch\u003c\/td\u003e\n\u003ctd\u003eUnifarbenes Schwarz ohne Muster bleibt optisch ruhig und lässt sich über Saisons hinweg kombinieren\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eManche Bademoden verlieren bei falscher Pflege schneller Elastizität oder Form\u003c\/td\u003e\n\u003ctd\u003eFeinwäsche 30 °C ohne Trockner kann dazu beitragen, Material und Passform schonender zu behandeln\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchwarze Bademode wirkt auf manchen Fotos oder bei Nass-Kontakt ungewollt transparent\u003c\/td\u003e\n\u003ctd\u003eÜber den konkreten Schnitt und Materialstärke gibt die Größentabelle Orientierung – Sitz vor Ort prüfen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eEignet sich dieser schwarze Badeanzug für See und Freibad?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der einteilige schwarze Badeanzug ist für typische Badesituationen wie See, Freibad oder Hotelpool ausgelegt. Der Materialmix aus 78 % recyceltem Polyamid und 22 % Elasthan ist auf Bewegung im Wasser ausgerichtet. Für spezielle Anforderungen wie intensives Streckenschwimmen über längere Zeit solltest du den konkreten Schnitt und Sitz über die Maßtabelle prüfen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Badeanzug?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eMiss Taille, Hüfte und Brust und vergleiche deine Maße mit der Größentabelle. Bei Badeanzügen empfiehlt es sich, bei Werten zwischen zwei Größen eher die größere zu wählen, damit der Schnitt bei Bewegung nicht einschneidet. Der Größenrechner auf der Seite hilft dir beim Einschätzen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen, um Rückstände zu entfernen. Anschließend Feinwäsche bei 30 °C. Nicht im Trockner trocknen – an der Luft trocknen lassen. Dieses Vorgehen kann dazu beitragen, Material und Form länger zu erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eHat dieser schwarze Badeanzug formende oder stützende Eigenschaften?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Badeanzug ist auf einen schlichten, reduzierten Schnitt ausgelegt. Der Elasthan-Anteil kann einen flexiblen Sitz unterstützen. Starke formende Wirkung, Bügel oder gepolsterte Cups sind in diesem Modell nicht vorgesehen – dafür wäre ein speziell darauf ausgerichtetes Modell besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBleibt Schwarz bei diesem Badeanzug auch nach mehreren Wäschen kräftig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBei schonender Pflege – Feinwäsche 30 °C, kein Trockner – kann die Farbe länger erhalten bleiben. Ein kein Versprechen ist das nicht, aber die angegebenen Pflegehinweise sind darauf ausgerichtet, Material und Optik schonend zu behandeln. Direktes Sonnenlicht beim Trocknen kann Farben auf Dauer ausbleichen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie lässt sich ein schwarzer Badeanzug am Strand kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnifarbenes Schwarz lässt sich mit den meisten Strandoutfits kombinieren: ein leichtes Leinenhemd, ein Pareo, ein Strandkleid oder Shorts in Erdtönen passen gut dazu. Weil das Modell ohne Muster und Prints auskommt, braucht es keine aufwändige Farbabstimmung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer Badeanzug am Bodenseeufer – Wasser im Hintergrund, klare Linie im Vordergrund\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Vom Wasser zur Liege: Badeanzug pur, Leinenhemd locker drübergeworfen\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.94\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1_7bb5245c-3a65-4706-9703-7e432ee2d1db.png?v=1753459380\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.94\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ S","offer_id":44528777101580,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":44528777134348,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ L","offer_id":44528777167116,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XL","offer_id":44529135321356,"sku":"","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Dunkellila \/ S","offer_id":44528777199884,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Dunkellila \/ M","offer_id":44528777232652,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Dunkellila \/ L","offer_id":44528777265420,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Dunkellila \/ XL","offer_id":44529135386892,"sku":"","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Marineblau \/ S","offer_id":44528777298188,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ M","offer_id":44528777330956,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ L","offer_id":44528777363724,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ XL","offer_id":44529135419660,"sku":"","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Pink \/ S","offer_id":44528777396492,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":44528777429260,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":44528777462028,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ XL","offer_id":44529135452428,"sku":"","price":29.94,"currency_code":"EUR","in_stock":false},{"title":"Türkis \/ S","offer_id":44528777494796,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Türkis \/ M","offer_id":44528777527564,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Türkis \/ L","offer_id":44528777560332,"sku":null,"price":29.94,"currency_code":"EUR","in_stock":true},{"title":"Türkis \/ XL","offer_id":44529135485196,"sku":"","price":29.94,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/Bild1_7bb5245c-3a65-4706-9703-7e432ee2d1db.png?v=1753459380"},{"product_id":"high-waist-angelina-bikini-set","title":"Bikini ethnisches Muster Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der auch nach einem langen Strandtag noch ruhig sitzt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da bleibt – ohne dass du nachziehen oder nachdenken musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau im Laufe eines Badetages merken viele den Unterschied – beim Aufstehen aus dem Wasser, beim Hinsetzen im Sand, beim Gehen entlang des Ufers.\u003c\/p\u003e\n  \u003ch2\u003eBikini Set Damen mit ethnischem Muster – ruhiger Sitz für See und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Bikini Set für Damen, das auf stabilen Sitz bei Bewegung ausgelegt ist – getragen von einem ethnischen Muster mit geometrischen Formen und Gesichts-Design, das auffällt, ohne zu lärmen. Der Stoff aus 78 % Polyamid und 22 % Elasthan legt sich weich an, gibt nach und kehrt zurück.\u003c\/p\u003e\n\u003cp\u003eDas ethnische Muster auf diesem Bikini hat eine ruhige Eigenständigkeit: geometrische Linien, die sich zu Gesichtszügen fügen – eine Bildsprache, die in vielen Kulturen Verbindung und Erinnerung bedeutet. Kein greller Print, kein Saisonmotiv. Eher ein Muster, das man nach Jahren noch gerne trägt – weil es erzählt, ohne zu erklären.\u003c\/p\u003e\n\u003cp\u003eDie Farbgebung bleibt zurückhaltend, der Schnitt klar. Wer ethnische Prints kennt und schätzt, wird hier die Abstimmung von Form und Motiv bemerken: Das Muster ist so platziert, dass es am Körper wirkt – nicht trotz des Schnitts, sondern mit ihm. Kombinierbar mit einem einfachen Sarong, einem Leinenhemd oder einem schlichten Strandtuch, ohne dass eines davon zu viel wird.\u003c\/p\u003e\n\u003cp\u003eOb du morgens das erste Mal ins kühle Wasser des Sees gehst, nachmittags auf dem Handtuch liegst und die Sonne auf der Haut spürst, oder abends noch einmal kurz ins Wasser – dieser Bikini macht in all diesen Momenten mit, ohne dass du ihn vergisst oder an ihm zupfst. Ein Strandtag am Bodensee, ein Urlaub am Mittelmeer, ein Poolnachmittag: Das ethnische Muster wirkt in vielen Lichtern unterschiedlich – mal kräftiger, mal ruhiger.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du gehst ins Wasser und das Oberteil bleibt, wo es war – kein Nachgreifen.\u003cbr\u003e• Du sitzt im Sand und der Bund drückt sich nicht in die Haut.\u003cbr\u003e• Du ziehst den Bikini an und das Muster fühlt sich an wie eine Entscheidung, nicht wie ein Zufall.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du in der richtigen Größe bist, kann dieser Bikini ein unkomplizierter Begleiter für die Saison sein – schau dir die Größentabelle in Ruhe an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"waist_min\": 104.1, \"waist_max\": 126.6, \"hip_min\": 81.0, \"hip_max\": 86.0, \"bust_min\": 76.0, \"bust_max\": 81.0, \"height_min\": 27.0, \"height_max\": 37.0}, {\"name\": \"S\", \"waist_min\": 114.6, \"waist_max\": 137.1, \"hip_min\": 86.0, \"hip_max\": 91.0, \"bust_min\": 81.0, \"bust_max\": 86.0, \"height_min\": 29.0, \"height_max\": 39.0}, {\"name\": \"M\", \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 91.0, \"hip_max\": 97.0, \"bust_min\": 86.0, \"bust_max\": 91.0, \"height_min\": 33.0, \"height_max\": 43.0}, {\"name\": \"L\", \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 97.0, \"hip_max\": 102.0, \"bust_min\": 91.0, \"bust_max\": 97.0, \"height_min\": 37.0, \"height_max\": 47.0}, {\"name\": \"XL\", \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 102.0, \"hip_max\": 107.0, \"bust_min\": 97.0, \"bust_max\": 102.0, \"height_min\": 41.0, \"height_max\": 51.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Taille, Hüfte, Brust, EU Größe – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini ethnisches Muster Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser seinen Platz nicht hält\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Muster, Stoff – drei Dinge, die zusammenpassen sollten.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verrutscht beim ersten Sprung ins Wasser\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Stunde am Strand\u003c\/li\u003e\n\u003cli\u003eDie Größe ist online schwer einzuschätzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu springst ins Wasser, tauchst auf – und das Erste, was du tust, ist nachziehen. Das ist kein seltenes Erlebnis, und es liegt meist nicht an dir, sondern an einem Schnitt, der für Bewegung nicht wirklich ausgelegt ist.\u003c\/p\u003e\n\u003cp\u003eBikini-Stoffe mit hohem Elasthan-Anteil sind auf Dehnung und Rückformung ausgelegt. Dieser Bikini besteht aus 78 % Polyamid und 22 % Elasthan – eine Mischung, die bei normaler Belastung Halt gibt und sich wieder in Form bringt. Kein Stoff der nachgibt und bleibt.\u003c\/p\u003e\n\u003cp\u003eWenn du einen Bikini suchst, der bei ruhigen bis moderaten Wassermomenten sicher sitzt – Schwimmen am See, Tauchen vom Steg, entspanntes Planschen – kann dieser Bikini Set für Damen eine ruhige Wahl sein. Wenn du dagegen intensiven Wassersport planst oder lange Schwimmrunden ziehst, wäre ein Sportbadeanzug mit festerer Konstruktion die passendere Option. Das ist kein Nachteil – nur ein anderer Einsatzbereich.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst dieses Verhältnis aus Muster, Schnitt und Tragegefühl zu dem, was du dir für den Sommer vorstellst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, und wähle Taille, Hüfte, Brust oder EU Größe als Grundlage.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau die Größentabelle in Ruhe durch – Ober- und Unterteil lassen sich separat wählen, falls du oben und unten unterschiedliche Größen brauchst.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz beim Schwimmen am See – kein Nachziehen\u003c\/li\u003e\n\u003cli\u003e→ Ethnisches Muster, das in verschiedenen Lichtern unterschiedlich wirkt\u003c\/li\u003e\n\u003cli\u003e→ Ober- und Unterteil in der eigenen Größe – auch wenn oben und unten nicht gleich sind\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Ethnisches Muster mit geometrischen Formen – ruhig im Gesamtbild, eigenständig im Detail\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – auf Dehnung und Rückformung bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar nach Taille, Hüfte, Brust oder EU Größe\u003c\/li\u003e\n\u003cli\u003e✅ Feinwäsche 30 °C – pflegeleicht über die Saison\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder lange Schwimmeinheiten ist ein Sportbadeanzug besser geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer einfarbige, unifarbene Bademode bevorzugt, wird mit dem ethnischen Muster weniger Freude haben\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegten Angaben zu UV-Schutz oder Chlorbeständigkeit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini ethnisches Muster Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim ersten Eintauchen ins Wasser\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Bewegung ausgelegt – 22 % Elasthan gibt Halt und kehrt zurück\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt nach kurzer Tragezeit am Strand\u003c\/td\u003e\n\u003ctd\u003eWeiche Polyamid-Elasthan-Mischung passt sich bei normaler Belastung an, ohne einzuschneiden\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße schwer einzuschätzen beim Online-Kauf\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar – Größenrechner nach Taille, Hüfte, Brust und EU Größe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt schnell überladen oder touristisch\u003c\/td\u003e\n\u003ctd\u003eGeometrisches Ethno-Muster in zurückhaltender Farbgebung – eigenständig ohne zu dominieren\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini ethnisches Muster Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini ethnisches Muster Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini ethnisches Muster Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini ethnisches Muster Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelcher Bikini mit Muster passt zu meiner Figur?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eEin Bikini mit ethnischem Muster und klarem Schnitt kann für viele Figurtypen funktionieren – entscheidend ist die Größenwahl. Nutze Taille, Hüfte und Brust als Ausgangspunkt und wähle Ober- und Unterteil separat, falls du oben und unten unterschiedliche Größen trägst. Bei Unsicherheit: eine Größe mehr gibt in der Regel mehr Spielraum.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – zum Beispiel beim Schwimmen oder Aufstehen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist aus 78 % Polyamid und 22 % Elasthan gefertigt – eine Kombination, die bei normaler Belastung Halt gibt und sich wieder in Form bringt. Bei ruhigen Wassermomenten wie Schwimmen am See oder Planschen sitzt er in der Regel ruhig. Für intensive Schwimmeinheiten oder Wassersport ist ein Sportbadeanzug mit festerer Konstruktion besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – das schont Stoff und Form über die Saison.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil in unterschiedlichen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Ober- und Unterteil sind separat wählbar. Als Orientierung dienen Taille, Hüfte, Brust und EU Größe. So kannst du die Passform individuell abstimmen, wenn du oben und unten unterschiedliche Größen brauchst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eVerblasst das ethnische Muster nach mehrmaligem Tragen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003ePolyamid-Elasthan-Stoffe sind für Bademode üblich und halten bei richtiger Pflege in der Regel gut. Um das Muster langfristig frisch zu halten: nach dem Tragen mit klarem Wasser abspülen, bei 30 °C in der Feinwäsche waschen und an der Luft trocknen lassen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für den Bodensee oder See-Urlaub geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – der Bikini ist auf entspannte Wassertage ausgelegt, ob See, Pool oder Strand. Bei ruhigem bis moderatem Schwimmen sitzt er in der Regel stabil. Für längere Schwimmstrecken oder intensiven Wassersport ist ein Sportbadeanzug die passendere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Geometrisches Gesichts-Design auf dem Stoff – erkennbar, aber ruhig im Gesamtbild\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini liegt flach am Körper – kein Verziehen oder Aufstehen der Kanten\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini ethnisches Muster Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini ethnisches Muster Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€28.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini ethnisches Muster Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini ethnisches Muster Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1619849020834.jpg?v=1753458249\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"28.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blau S","offer_id":45166027079948,"sku":"CJNSSYTZ00271-Blue S","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Blau M","offer_id":45166027047180,"sku":"CJNSSYTZ00271-Blue M","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Blau L","offer_id":45166027014412,"sku":"CJNSSYTZ00271-Blue L","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Blau XL","offer_id":45166027112716,"sku":"CJNSSYTZ00271-Blue XL","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Grün S","offer_id":45166027211020,"sku":"CJNSSYTZ00271-Green S","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Grün M","offer_id":45166027178252,"sku":"CJNSSYTZ00271-Green M","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Grün L","offer_id":45166027145484,"sku":"CJNSSYTZ00271-Green L","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Grün XL","offer_id":45166027243788,"sku":"CJNSSYTZ00271-Green XL","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Lila S","offer_id":45166027342092,"sku":"CJNSSYTZ00271-Purple S","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Lila M","offer_id":45166027309324,"sku":"CJNSSYTZ00271-Purple M","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Lila L","offer_id":45166027276556,"sku":"CJNSSYTZ00271-Purple L","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Lila XL","offer_id":45166027374860,"sku":"CJNSSYTZ00271-Purple XL","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rot S","offer_id":45166027473164,"sku":"CJNSSYTZ00271-Red S","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rot M","offer_id":45166027440396,"sku":"CJNSSYTZ00271-Red M","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rot L","offer_id":45166027407628,"sku":"CJNSSYTZ00271-Red L","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rot XL","offer_id":45166027505932,"sku":"CJNSSYTZ00271-Red XL","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rosarot S","offer_id":45166027604236,"sku":"CJNSSYTZ00271-Rose Red S","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rosarot M","offer_id":45166027571468,"sku":"CJNSSYTZ00271-Rose Red M","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rosarot L","offer_id":45166027538700,"sku":"CJNSSYTZ00271-Rose Red L","price":28.99,"currency_code":"EUR","in_stock":true},{"title":"Rosarot XL","offer_id":45166027637004,"sku":"CJNSSYTZ00271-Rose Red XL","price":28.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1619849020834.jpg?v=1753458249"},{"product_id":"bikini-patchwork","title":"schwarz weißer Colorblock Bikini","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Strand genauso sitzt wie im ersten Moment?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da bleibt – ohne Nachziehen, ohne Korrigieren.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau dort merken viele den Unterschied – nicht beim Anziehen, sondern wenn der Tag am See länger wird als geplant.\u003c\/p\u003e\n  \u003ch2\u003eColorblock Bikini Damen in Schwarz-Weiß – klarer Schnitt für Strand und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003eEin zweiteiliges Set im Schwarz-Weiß-Colorblock – grafisch reduziert, leicht kombinierbar, aus 78 % Polyamid und 22 % Elasthan mit Bewegungsspielraum.\u003c\/p\u003e\n\u003cp\u003eDer Kontrast ist klar gesetzt: Schwarz trifft Weiß, ohne Muster, ohne Dekoration. Das Farbkonzept folgt einer ruhigen Logik – zwei Flächen, eine klare Linie dazwischen. Am Bodenseeufer, wo der Morgennebel langsam zieht und das Licht noch flach liegt, wirkt genau dieser Look am stärksten: nicht laut, aber sichtbar. Ein Colorblock Bikini Damen, der keine Aufmerksamkeit einfordert, aber trotzdem einen eigenen Auftritt hat.\u003c\/p\u003e\n\u003cp\u003eDie Farbkombination arbeitet mit dem, was da ist – heller Sand, dunkles Wasser, ein weißes Handtuch. Das Schwarz-Weiß legt sich ruhig daneben, ohne zu konkurrieren. Du sitzt am Beckenrand, die Beine ins Wasser getaucht, und der Bikini sitzt still. Kein Muster, das sich mit der Umgebung beißt. Keine Farbe, die nach einer Stunde Sonne seltsam aussieht. Stattdessen: ein grafischer Ruhepunkt in einem sommerlichen Setting.\u003c\/p\u003e\n\u003cp\u003eWenn du morgens zum Schwimmen gehst und danach noch am Strand bleibst – Handtuch ausgebreitet, Buch in der Hand – dann ist das der Moment, in dem ein reduzierter Bikini seine Stärke zeigt. Er lässt sich mit einem weißen Leinenshirt überziehen, mit schlichten Sandalen kombinieren, ohne dass der Look zerfällt. Kein aufwendiges Styling. Das Set macht einfach mit, ohne selbst das Thema zu werden.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst morgens etwas Weißes drüber – es passt.\u003cbr\u003e• Am Pool wirkt das Set ruhig und klar, nicht beliebig.\u003cbr\u003e• Beim Aufstehen vom Handtuch brauchst du nicht nachzukorrigieren – das Set bleibt in der Regel dort, wo es hingehört.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du wissen möchtest, welche Größe passt – der Größenrechner hilft dir weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 86.0, \"hip_max\": 91.0, \"height_min\": 32.0, \"height_max\": 34.0}, {\"name\": \"M\", \"hip_min\": 91.0, \"hip_max\": 96.0, \"height_min\": 34.0, \"height_max\": 36.0}, {\"name\": \"L\", \"hip_min\": 96.0, \"hip_max\": 101.0, \"height_min\": 36.0, \"height_max\": 38.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Design: Colorblock Schwarz-Weiß, kein Muster\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarz weißer Colorblock Bikini sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Laufe des Badetages unruhig wird\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin reduziertes Schwarz-Weiß-Set, das sich einfach kombinieren lässt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eBikini sitzt beim Anziehen gut, verrutscht aber im Wasser\u003c\/li\u003e\n\u003cli\u003eSchwarz-Weiß wirkt online klar, aber am Körper anders als erwartet\u003c\/li\u003e\n\u003cli\u003eElasthan-Bikinis verlieren nach falscher Pflege früh ihre Form\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst ein paar Bahnen, kommst zurück ans Ufer – und merkst erst dann, dass das Oberteil leicht verrutscht ist. Das passiert häufiger als man denkt, besonders bei Bikinis, deren Schnitt mehr auf Optik als auf Bewegungsfreiheit ausgelegt ist. Kein dramatisches Problem, aber ein Moment, der das Tragen bewusst macht.\u003c\/p\u003e\n\u003cp\u003eBeim Materialmix aus Polyamid und Elasthan spielt die Pflege eine Rolle: Zu hohe Temperaturen oder der Trockner können den Elasthan-Anteil mit der Zeit beeinflussen. Der Pflegehinweis – Feinwäsche 30 °C, kein Trockner – ist kein Hinweis für Ausnahmen, sondern ein Anhaltspunkt für den normalen Umgang mit dem Set.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist auf einen ruhigen, grafischen Look ausgelegt – kein starker Brusthalt, keine Bügel, kein Sportfunktion. Wenn du eher einen Bikini mit strukturierter Stützfunktion suchst oder kräftige Farben und Prints bevorzugst, könnte dieses Set weniger zu dir passen. Wenn dir ein schlichtes, leicht kombinierbares Set für Strand, See und Pool wichtig ist, ist es einen Blick wert.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWas erwartest du von einem Bikini, den du mehrmals pro Woche trägst – Stil, Komfort oder beides?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Bauch-, Hüft- und Brustmaß sowie deine EU-Größe ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Maße über den Größenrechner – ohne Druck, ohne Abschluss.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Als unkompliziertes Set für Strand und Pool getragen\u003c\/li\u003e\n\u003cli\u003e→ Mit weißem Leinenshirt als Beach-Look kombiniert\u003c\/li\u003e\n\u003cli\u003e→ Beim Schwimmen und Sonnenbaden als ruhiges Sommer-Set genutzt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Grafisches Schwarz-Weiß-Design – klar kombinierbar bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – gibt Bewegungsspielraum bei Strand und Pool\u003c\/li\u003e\n\u003cli\u003e✅ Reduzierter Look ohne Muster – lässt sich mit schlichten Beach-Outfits abstimmen\u003c\/li\u003e\n\u003cli\u003e✅ Klarer Pflegehinweis – Feinwäsche 30 °C, kein Trockner\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Kein strukturierter Brusthalt oder Bügel – für starken Support nicht ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Muster, keine Farbe außer Schwarz-Weiß – für verspielte oder florale Looks nicht geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht für intensiven Wassersport konzipiert\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarz weißer Colorblock Bikini\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eViele Bikinis wirken im Foto gut, verlieren bei Bewegung aber an Sitzstabilität\u003c\/td\u003e\n\u003ctd\u003eDer Elasthan-Anteil kann bei normaler Belastung zu einem ruhigeren Sitz beitragen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eColorblock-Modelle werden teils als schwer kombinierbar empfunden\u003c\/td\u003e\n\u003ctd\u003eDie reduzierte Schwarz-Weiß-Palette dürfte sich mit schlichten Cover-ups und neutralem Strand-Styling leichter abstimmen lassen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikinis aus Elasthan-Mischungen verlieren nach falscher Pflege früher ihre Form\u003c\/td\u003e\n\u003ctd\u003eDer Pflegehinweis auf Feinwäsche 30 °C und keinen Trockner ist ein Anhaltspunkt für längere Formstabilität bei schonender Behandlung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBei hellen Bikini-Teilen wird oft Transparenz bemängelt\u003c\/td\u003e\n\u003ctd\u003eDas Schwarz-Weiß-Design kann optisch mehr Struktur geben – die tatsächliche Deckkraft hängt vom Stoff und der Verarbeitung ab\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarz weißer Colorblock Bikini mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarz weißer Colorblock Bikini im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarz weißer Colorblock Bikini\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarz weißer Colorblock Bikini\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Colorblock Bikini Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze den Größenrechner mit deinen Maßen für Bauch, Hüfte, Brust und deiner EU-Größe. Wenn du zwischen zwei Größen liegst, kann es helfen, eine Größe größer zu wählen – besonders wenn du beim Oberteil mehr Spielraum bevorzugst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der schwarz-weiße Bikini bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Elasthan-Anteil von 22 % gibt dem Set Beweglichkeit. Bei normaler Belastung – Schwimmen, Bewegen am Strand – bleibt das Set in der Regel ruhig sitzen. Starke sportliche Belastung oder Wassersport ist nicht der primäre Verwendungskontext dieses Modells.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen zweiteiliger Bikini in Schwarz-Weiß richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann Feinwäsche bei 30 °C. Nicht im Trockner trocknen – das kann den Elasthan-Anteil mit der Zeit beeinflussen. Auf links gewaschen bleibt das Material länger formstabil.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eLässt sich ein schlichter Colorblock Bikini gut mit anderen Beachwear-Teilen kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie reduzierte Farbpalette in Schwarz und Weiß lässt sich in der Regel unkompliziert mit schlichten Cover-ups, Leinenshirts, hellen Shorts oder neutralen Sandalen kombinieren. Auffällige Muster oder kräftige Farben können optisch mit dem Colorblock konkurrieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWenn du einen Bikini mit starkem Brusthalt, Bügeln oder Sportfunktion suchst, ist dieses Set dafür nicht ausgelegt. Auch wer kräftige Farben, florale Muster oder verspielte Details bevorzugt, findet hier eher nicht das Richtige.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-damen-finden-sie-den-perfekten-badeanzug-fur-den-sommer-2024\"\u003eBadeanzüge für Damen: Finden Sie den perfekten Badeanzug für den Sommer 2024\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/wie-man-den-perfekten-bikini-fur-seine-korperform-findet\"\u003eWie man den perfekten Bikini für seine Körperform findet\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarz-weiße Farbflächen mit klarer Trennlinie – grafisch, ohne Muster\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Ruhiger Look am Bodenseeufer – passt zum hellen Sand und dunklen Wasser\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarz weißer Colorblock Bikini eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarz weißer Colorblock Bikini\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarz weißer Colorblock Bikini dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarz weißer Colorblock Bikini\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/6ad065fe-158e-46ec-9fe5-3cdd4c01bd87.jpg?v=1753456471\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ L","offer_id":45166067056908,"sku":"CJBJ144124025YB","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":45166067089676,"sku":"CJBJ144124026ZA","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":45166067122444,"sku":"CJBJ144124027AZ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ L","offer_id":45166067155212,"sku":"CJBJ144124007GT","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":45166067187980,"sku":"CJBJ144124006FU","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ S","offer_id":45166067220748,"sku":"CJBJ144124005EV","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Kaffebraun \/ L","offer_id":45166067253516,"sku":"CJBJ144124003CX","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Kaffebraun \/ M","offer_id":45166067286284,"sku":"CJBJ144124002BY","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Kaffebraun \/ S","offer_id":45166067319052,"sku":"CJBJ144124001AZ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ L","offer_id":45166067351820,"sku":"CJBJ144124029CX","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ M","offer_id":45166067384588,"sku":"CJBJ144124030DW","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ S","offer_id":45166067417356,"sku":"CJBJ144124031EV","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Lagunengrün \/ L","offer_id":45166067450124,"sku":"CJBJ144124021UF","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Lagunengrün \/ M","offer_id":45166067482892,"sku":"CJBJ144124022VE","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Lagunengrün \/ S","offer_id":45166067515660,"sku":"CJBJ144124023WD","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Grasgrün \/ L","offer_id":45166067548428,"sku":"CJBJ144124015OL","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Grasgrün \/ M","offer_id":45166067581196,"sku":"CJBJ144124014NM","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Grasgrün \/ S","offer_id":45166067613964,"sku":"CJBJ144124013MN","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Mahoganyfarbe \/ L","offer_id":45166067646732,"sku":"CJBJ144124017QJ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Mahoganyfarbe \/ M","offer_id":45166067679500,"sku":"CJBJ144124018RI","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Mahoganyfarbe \/ S","offer_id":45166067712268,"sku":"CJBJ144124019SH","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Roserot \/ L","offer_id":45166067745036,"sku":"CJBJ144124011KP","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Roserot \/ M","offer_id":45166067777804,"sku":"CJBJ144124010JQ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Roserot \/ S","offer_id":45166067810572,"sku":"CJBJ144124009IR","price":29.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/6ad065fe-158e-46ec-9fe5-3cdd4c01bd87.jpg?v=1753456471"},{"product_id":"bikini-damen-flora-hoher-huftbund","title":"tropischer Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Seeufer genauso sitzt wie beim Schwimmen?\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eBikini Damen tropisch – mit Blätter- und Blütenprint für See, Strand und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin tropischer Bikini für Damen, der durch sein dezentes Blätter- und Blütenmuster Sommerstimmung erzeugt – ohne laut zu wirken. Ruhige Ästhetik, angenehm auf der Haut, ausgelegt für entspannte Tage am Wasser.\u003c\/p\u003e\n\u003cp\u003eDas Motiv zeigt ein fein gezeichnetes Arrangement aus Blättern und Blüten – in einer Farbigkeit, die zum Licht am Bodensee passt. Nicht grell, nicht überladen. Das Muster wirkt, wenn du am Seeufer sitzt und das Wasser im Hintergrund ruhig liegt – als hätte das Design genau für diesen Moment Farbe aufgenommen.\u003c\/p\u003e\n\u003cp\u003eDie Blätterformen wirken durch ihre klaren Konturen strukturiert, ohne steif zu sein. Am Strand, wenn du aus dem Wasser kommst und dich kurz in die Sonne legst, bleibt das Muster ruhig präsent – es fällt auf, ohne sich aufzudrängen. Kombiniert mit einem einfarbigen Sarong oder einem weißen Leinenshirt lässt es sich unkompliziert weitertragen, über das Wasser hinaus.\u003c\/p\u003e\n\u003cp\u003eDieser tropische Bikini eignet sich für Tage, an denen man nicht viel überlegen möchte – Packen, Hinfahren, Wohlfühlen. Er passt zu einem Ausflug an den See genauso wie zu einer Urlaubswoche am Meer. Und wenn du ihn als Geschenk überlegst: Das Muster sagt „Sommer\" auf eine ruhige, bleibende Art.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Blätter- und Blütenmuster wirkt auf den ersten Blick frisch – ohne Aufsehen zu erregen.\u003cbr\u003e• Am Seeufer oder Strandbad bleibt der Look stimmig, auch wenn der Tag länger wird.\u003cbr\u003e• Wer Prints mag, die nicht schreien, findet hier eine ruhige Sommersprache.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du Interesse hast, kannst du weiter unten Größe und Schnitt prüfen – ohne Zeitdruck.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 90.0, \"hip_max\": 96.0}, {\"name\": \"M\", \"hip_min\": 96.0, \"hip_max\": 102.0}, {\"name\": \"L\", \"hip_min\": 102.0, \"hip_max\": 108.0}, {\"name\": \"XL\", \"hip_min\": 108.0, \"hip_max\": 114.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Muster: Tropisches Blätter- und Blütenmuster\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Bauch, Hüfte und Brust separat wählbar\u003c\/li\u003e\n\u003cli\u003e✔ Anwendung: Strand, See, Urlaub – für ruhige Badetage ausgelegt\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann tropischer Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser seinen Platz verliert\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Schnitt und ein Muster, das ruhig bleibt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verschiebt sich beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach kurzer Zeit\u003c\/li\u003e\n\u003cli\u003eDie Größe lässt sich online schwer einschätzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer kennt das nicht: Man geht ins Wasser, taucht kurz unter – und zieht danach nach. Am Oberteil, am Unterteil, irgendwo. Nicht dramatisch, aber präsent. Dieser kleine Moment, in dem man merkt, dass man den Bikini trägt – statt einfach im Wasser zu sein.\u003c\/p\u003e\n\u003cp\u003eOft liegt es weniger am Produkt selbst als an der Passform. Ober- und Unterteil aus einer Konfektionsgröße passen selten beiden Körperbereichen gleichzeitig gut. Der Bund sitzt zu eng oder zu weit, das Oberteil gibt nach – nicht weil es schlecht verarbeitet ist, sondern weil die Proportionen nicht stimmen.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist so angelegt, dass Ober- und Unterteil separat gewählt werden können – nach Brust-, Bauch- und Hüftmaß. Das kann dazu beitragen, dass der Sitz ruhiger bleibt, auch wenn man sich bewegt. Für intensive Wassersportarten oder Leistungsschwimmen ist er nicht ausgelegt – dafür gibt es Sporttextilien mit anderem Fokus. Wenn du eher ruhige Badetage am See oder Strand bevorzugst, könnte dieser Schnitt passen.\u003cbr\u003e\u003cstrong\u003eWie ist das bei dir – suchst du etwas für entspannte Tage am Wasser, oder eher für aktive Stunden im Pool?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt \u0026amp; Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Größenoptionen in Ruhe an – Bauch, Hüfte und Brust lassen sich unabhängig voneinander wählen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt auch nach längerem Badetag noch ruhig\u003c\/li\u003e\n\u003cli\u003e→ Ober- und Unterteil passen nach Maßen deutlich besser als Einheitsgrößen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat nach Brust, Bauch und Hüfte wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Tropisches Blätter- und Blütenmuster – dezent und ruhig in der Wirkung\u003c\/li\u003e\n\u003cli\u003e✅ Ausgelegt für entspannte Badetage an See, Strand und im Urlaub\u003c\/li\u003e\n\u003cli\u003e✅ Separat wählbare Größen können bei normaler Belastung zu ruhigem Sitz beitragen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für Leistungsschwimmen oder intensive Wassersportaktivitäten ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer klare Uni-Bademode bevorzugt, findet das Blättermuster möglicherweise zu viel\u003c\/li\u003e\n\u003cli\u003e⚠️ Für sehr sportliche Poolnutzung gibt es besser geeignete Funktionsmodelle\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ tropischer Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verschiebt sich beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eSchnitt auf stabilen Sitz bei normaler Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eKonfektionsgrößen passen selten gleichzeitig an Brust und Hüfte\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat nach Brust-, Bauch- und Hüftmaß wählbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bikinis schwer einschätzbar\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpermaßen als Orientierungshilfe verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt am Foto anders als in der Realität\u003c\/td\u003e\n\u003ctd\u003eDezentes Blätter- und Blütenmuster – ruhige Farbigkeit, kombinierbar mit Einfarbigem\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei tropischer Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich tropischer Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 30 Sekunden\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003etropischer Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu tropischer Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim tropischen Bikini Damen die richtige Größe für Brust, Bauch und Hüfte?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil sind separat nach Brust-, Bauch- und Hüftmaß wählbar. Unser Größenrechner hilft dir dabei – du gibst deine Körpermaße ein und bekommst eine Orientierung. Bei Unsicherheit empfehlen wir, bei der Brust eher auf die größere Option zu gehen, wenn du mehr Halt bevorzugst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund dieses tropischen Bikinis bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Unterteil ist auf einen ruhigen Sitz bei normaler Bewegung im Wasser ausgelegt – etwa beim Schwimmen, Aufstehen oder Hinsetzen am Strand. Für intensive Wassersportarten wie Tauchen oder schnelle Schwimmeinheiten ist dieser Bikini weniger gedacht.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist der tropische Bikini Damen mit Blätter- und Blütenprint nicht geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer einen Bikini für Leistungsschwimmen, sportliche Wasseraktivitäten oder häufige Poolnutzung sucht, ist mit einem Sport-Badeanzug oder einem Funktionsbikini besser beraten. Dieser Bikini ist auf entspannte Badetage ausgelegt, nicht auf maximale Bewegungsintensität.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen. Maschinenwäsche im Feinwaschgang bei 30 °C ist in der Regel geeignet. Nicht im Trockner trocknen – an der Luft trocknen schont Form und Material länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst das Blättermuster zu anderen Strandsachen oder ist es sehr auffällig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Muster ist in seiner Farbigkeit eher zurückhaltend gehalten – florale Details ohne grelle Kontraste. Es lässt sich gut mit einfarbigen Strandtüchern, Sarongs oder Leinenshirts kombinieren. Wer sehr klare Uni-Looks bevorzugt, empfindet einen Print möglicherweise als zu viel – das ist Geschmackssache.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann man den Bikini Damen mit tropischem Muster auch als Geschenk kaufen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – durch die separate Größenwahl nach Brust, Bauch und Hüfte lässt sich der Bikini besser auf eine bestimmte Person abstimmen als ein Einheitsgröße-Modell. Wenn du die ungefähren Maße der Person kennst, gibt dir der Größenrechner eine Orientierung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-mit-bauchweg-effekt-im-sale\"\u003eBadeanzüge mit Bauchweg-Effekt im Sale\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-die-den-bauch-kaschieren\"\u003eBadeanzüge, die den Bauch kaschieren\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bauchweg-bademode-fur-einen-selbstbewussten-sommer\"\u003eDie perfekte Bauchweg Bademode für einen selbstbewussten Sommer\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Blätter- und Blütenmuster in ruhiger Sommerpalette – nah betrachtet klar strukturiert\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Getragen am Seeufer: das Muster nimmt das Grün der Umgebung auf\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann tropischer Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003etropischer Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass tropischer Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"tropischer Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/2496416977496.jpg?v=1771873495\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Grüne Palme \/ L","offer_id":45166089863436,"sku":"CJYDYYBJ00564-Green pattern-L","price":34.95,"currency_code":"EUR","in_stock":true},{"title":"Grüne Palme \/ M","offer_id":45166089896204,"sku":"CJYDYYBJ00564-Green pattern-M","price":34.95,"currency_code":"EUR","in_stock":true},{"title":"Grüne Palme \/ S","offer_id":45166089928972,"sku":"CJYDYYBJ00564-Green pattern-S","price":34.95,"currency_code":"EUR","in_stock":true},{"title":"Grüne Palme \/ XL","offer_id":45166089961740,"sku":"CJYDYYBJ00564-Green pattern-XL","price":34.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/2496416977496.jpg?v=1771873495"},{"product_id":"bikini-hot-style","title":"schwarzer Bikini Neon Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Bikini aus, der den ganzen Tag sitzt – ohne einmal nachzuziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini morgens angezogen wird und abends noch genauso sitzt wie am Anfang.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau da zeigt sich der Unterschied – nicht beim ersten Anziehen, sondern nach dem dritten Mal ins Wasser gehen.\u003c\/p\u003e\n  \u003ch2\u003eSchwarzer Bikini Damen mit Neon-Akzenten – für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nKlares Schwarz mit gezielten Neon-Akzenten – ein Bikini Set, das ohne viel Aufwand auffällt, dabei ruhig wirkt und sich dem Körper anpasst.\u003c\/p\u003e\n\u003cp\u003eSchwarz ist selten langweilig, wenn die Details stimmen. Die Neon-Akzente setzen hier keine lauten Statements – sie markieren eher eine klare Haltung: präsent, ohne zu drängen. Am Bodenseeufer, wo das Licht flach über das Wasser fällt, wirkt der Kontrast zwischen dem tiefen Schwarz und den hellen Akzenten besonders ruhig und gleichzeitig lebendig. Ein Design, das sich weder versteckt noch aufdrängt.\u003c\/p\u003e\n\u003cp\u003eWenn du mittags vom Wasser zurückkommst, dich auf ein Handtuch legst und kurz die Augen schließt – in diesem Moment ist dieser Bikini einfach da. Die Neon-Linie am Rand fängt das Licht ein, der Rest bleibt schwarz und still. Abends, beim Spaziergang am Ufer mit einem Sommerkleid drüber, erinnert nur noch die Träger-Linie daran, was darunter liegt. Beides passt.\u003c\/p\u003e\n\u003cp\u003eAls Geschenk zum Sommer ist dieser Bikini für all jene gedacht, die klare Linien mögen, aber einen kleinen Farb-Moment nicht scheuen. Er lässt sich mit einem weißen oder schwarzen Wickelrock kombinieren, passt zur Strandtasche genauso wie zur Poolanlage im Urlaub – und braucht kein lautes Auftreten, um wahrgenommen zu werden.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst ihn an und musst nichts richten – der Schnitt lässt Raum, ohne zu verrutschen.\u003cbr\u003e• Der Neon-Akzent fällt dir im Spiegel auf, ohne dass du es erwartet hattest – angenehm überrascht.\u003cbr\u003e• Du trägst ihn den ganzen Tag und denkst kaum daran – das ist das Ziel.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du wissen möchtest, welche Größe zu dir passt: Unser Größenrechner hilft dir mit Bauch-, Hüft- und Brustmaß sowie EU-Größe weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 86.0, \"hip_max\": 91.0, \"height_min\": 32.0, \"height_max\": 34.0}, {\"name\": \"M\", \"hip_min\": 91.0, \"hip_max\": 96.0, \"height_min\": 34.0, \"height_max\": 36.0}, {\"name\": \"L\", \"hip_min\": 96.0, \"hip_max\": 101.0, \"height_min\": 36.0, \"height_max\": 38.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003cli\u003e✔ Verfügbare Maße: Bauch, Hüfte, Brust, EU Größe\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Bikini Neon Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser nicht ruhig bleibt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Schnitt und Material – was wirklich zählt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verrutscht beim Schwimmen und muss ständig korrigiert werden\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bikinis stimmen selten mit der Realität überein\u003c\/li\u003e\n\u003cli\u003eDer Stoff fühlt sich nass unangenehm an oder drückt am Bund\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu kennst das vielleicht: Du springst einmal ins Wasser, schwimmst ein paar Züge – und danach sitzt das Oberteil nicht mehr so, wie es sollte. Nicht dramatisch, aber lästig genug, um den Moment zu unterbrechen. Bei Bikinis passiert das häufiger als nötig, weil Schnitt und Materialzug nicht aufeinander abgestimmt sind.\u003c\/p\u003e\n\u003cp\u003e78 % Polyamid und 22 % Elasthan – diese Mischung ist auf Beweglichkeit ausgelegt. Der Stoff dehnt sich mit, gibt aber auch zurück. Das bedeutet: Bei normaler Belastung im Wasser, beim Aufstehen vom Handtuch oder beim Gehen am Strand kann der Bikini ruhig sitzen bleiben, ohne dass du nachjustieren musst. Das ist kein Versprechen – aber eine Eigenschaft des Materials, die sich im Alltag zeigt.\u003c\/p\u003e\n\u003cp\u003eWenn du eher ruhige Badetage magst – See, Pool, gelegentlich ins Wasser – kann dieser Bikini eine passende Option sein. Wer intensive Wassersportarten oder Leistungsschwimmen plant, ist mit einem speziell dafür ausgelegten Schwimmanzug besser bedient. Und wenn dir ein sehr hoher Bund wichtig ist: Schau dir die Bundform im Bild genau an, bevor du entscheidest.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eStellt sich die Frage: Ist ein ruhig sitzender, schlicht gehaltener Bikini mit einem kleinen Neon-Moment genau das, was du dir für den Sommer vorstellst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt \u0026amp; Größe einzuschätzen – gib Bauch-, Hüft- und Brustmaß sowie deine EU-Größe ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eGröße auswählen und passend bestellen – ohne Druck, mit 30 Tagen Rückgabe.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Badetag noch ruhig – kein Nachziehen nötig\u003c\/li\u003e\n\u003cli\u003e→ Neon-Akzent fällt auf, ohne zu dominieren – genau das richtige Maß\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Klares Schwarz mit Neon-Akzenten – dezent auffällig, kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – auf Beweglichkeit und stabilen Sitz ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – Größe individuell abstimmbar\u003c\/li\u003e\n\u003cli\u003e✅ Größenrechner mit Bauch-, Hüft- und Brustmaß sowie EU-Größe verfügbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für Leistungsschwimmen oder intensiven Wassersport weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer einen sehr hohen Bund sucht, sollte die Bundform im Produktbild genau prüfen\u003c\/li\u003e\n\u003cli\u003e⚠️ Wenn du ein gemustertes oder mehrfarbiges Design bevorzugst, ist dieses Modell möglicherweise nicht dein Stil\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Bikini Neon Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach wenigen Schwimmzügen\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil ist auf stabilen Sitz bei moderater Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bikinis schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner mit Bauch-, Hüft- und Brustmaß\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm an\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Mischung ist auf angenehmes Tragegefühl auch im nassen Zustand ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße schwer zu finden ohne Anprobieren\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpermaßen reduziert die Unsicherheit bei der Bestellung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Bikini Neon Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Bikini Neon Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarzer Bikini Neon Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Bikini Neon Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen schwarzen Bikini mit Neon-Akzenten?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner unterstützt dich mit deinem Bauch-, Hüft- und Brustmaß sowie der EU-Größe. Da Ober- und Unterteil separat gewählt werden können, lässt sich die Passform individuell abstimmen. Bei Unsicherheit zwischen zwei Größen hilft ein Blick auf die Maßtabelle weiter.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyamid und Elasthan richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, damit Salz oder Chlor nicht im Stoff verbleiben. Anschließend bei 30 °C im Feinwaschgang waschen, nicht im Trockner trocknen. So behält das Material bei normaler Pflege seine Elastizität länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser schwarze Bikini für Strand und See geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Bikini ist auf ruhige bis moderate Wassersituationen ausgelegt – Strand, See, Pool oder Urlaub. Für intensiven Wassersport oder Leistungsschwimmen ist ein speziell dafür entwickelter Schwimmanzug in der Regel die bessere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Material aus 78 % Polyamid und 22 % Elasthan ist auf Beweglichkeit ausgelegt und gibt bei normaler Belastung gut zurück. Das kann dazu beitragen, dass der Sitz beim Schwimmen oder Aufstehen ruhig bleibt – wie er sich konkret anfühlt, hängt auch von der gewählten Größe ab.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich diesen schwarzen Bikini Neon Damen für den Bodensee-Urlaub verwenden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Design – klares Schwarz mit Neon-Akzenten – ist auf alltagstaugliche Badetage ausgelegt und passt gut zu Strand, See und Urlaub, auch am Bodensee. Der Schnitt ist auf ruhige Tragekomfort-Situationen abgestimmt, nicht auf intensive sportliche Aktivitäten im Wasser.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eHält das Oberteil beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf einen stabilen Sitz bei moderater Bewegung im Wasser ausgelegt. Das Oberteil kann bei normaler Belastung meist ruhig sitzen bleiben. Die richtige Größenwahl spielt dabei eine wichtige Rolle – nutze dafür den Größenrechner mit deinen Körpermaßen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tiefes Schwarz mit klarer Neon-Linie im Gegenlicht am Wasser\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Sitz am Handtuch: Stoff liegt ruhig an, kein Bund der drückt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Bikini Neon Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Bikini Neon Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Bikini Neon Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Bikini Neon Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/db0d8dde-d2d0-475d-9708-07034100bf3e.jpg?v=1753453410\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ L","offer_id":45166096449804,"sku":"CJBJ120882206FU","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":45166096482572,"sku":"CJBJ120882205EV","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":45166096515340,"sku":"CJBJ120882204DW","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ L","offer_id":45166096548108,"sku":"CJBJ120882209IR","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ M","offer_id":45166096580876,"sku":"CJBJ120882208HS","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ S","offer_id":45166096613644,"sku":"CJBJ120882207GT","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Tulpenpink \/ L","offer_id":45166096646412,"sku":"CJBJ120882203CX","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Tulpenpink \/ M","offer_id":45166096679180,"sku":"CJBJ120882202BY","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Tulpenpink \/ S","offer_id":45166096711948,"sku":"CJBJ120882201AZ","price":25.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/db0d8dde-d2d0-475d-9708-07034100bf3e.jpg?v=1753453410"},{"product_id":"bikini-damen-triangel-print","title":"Bikini Damen Palmblätter","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am See sitzt – und beim Schwimmen einfach mitmacht?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini den ganzen Tag sitzt, ohne dass du einmal nachziehen musstest.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau da merken viele den Unterschied – nicht beim ersten Anziehen, sondern nach der zweiten Stunde am Wasser.\u003c\/p\u003e\n  \u003ch2\u003eTriangel Bikini Damen mit Palmblatt-Muster – für See, Strand und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nTriangel-Schnitt mit verstellbaren Trägern – auf ruhigen Sitz bei Bewegung ausgelegt, tropisches Palmblatt-Muster mit feinen Quasten, Stoff liegt weich und angenehm auf der Haut an.\u003c\/p\u003e\n\u003cp\u003eDas Palmblatt-Muster greift etwas auf, das man am Wasser oft spürt: dieses leichte Abschweifen, wenn das Licht durch Blätter fällt und alles einen Moment lang ruhiger wirkt. Die Zeichnung ist nicht aufdringlich – die Blätter liegen in ruhigen, satt-dunklen Tönen auf dem Stoff, ohne zu laut zu sein. Für einen Triangel Bikini Damen, der nicht sofort auffällt, aber beim zweiten Blick bleibt.\u003c\/p\u003e\n\u003cp\u003eAm Bodenseeufer, wenn du vom Wasser zurückkommst und dich auf das Handtuch setzt: Das Muster wirkt auch nass noch klar und nicht verwaschen. Beim Frühstück auf der Terrasse des Ferienhauses, schnell ein Tuch übergeworfen – der Bikini passt dazu, ohne zu fordern. Die Quasten am Oberteil setzen einen kleinen Akzent, der das Design belebt, ohne es zu überladen.\u003c\/p\u003e\n\u003cp\u003eAls Mitbringsel aus dem Sommerurlaub, als Geburtstags-Idee für jemanden, die ruhige Muster liebt – oder einfach für sich selbst, wenn du etwas suchst, das sich nach Sommer anfühlt, ohne Aufsehen zu erregen. Drei Kaufanlässe, ein Impuls: Das Palmblatt-Muster hält sich aus allem raus, das es nicht angeht.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du greifst nicht nach dem Oberteil, wenn du aus dem Wasser steigst\u003cbr\u003e• Das Muster wirkt am Strand genauso ruhig wie auf dem Balkon\u003cbr\u003e• Die Quasten fallen auf – aber das Gesamtbild bleibt still\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSchau, ob Schnitt und Muster zu dir passen – der Größenrechner hilft bei der Auswahl.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 114.6, \"waist_max\": 137.1, \"hip_min\": 86.0, \"hip_max\": 91.0, \"bust_min\": 81.0, \"bust_max\": 86.0, \"height_min\": 34.0, \"height_max\": 36.0}, {\"name\": \"M\", \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 91.0, \"hip_max\": 97.0, \"bust_min\": 86.0, \"bust_max\": 91.0, \"height_min\": 38.0, \"height_max\": 40.0}, {\"name\": \"L\", \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 97.0, \"hip_max\": 102.0, \"bust_min\": 91.0, \"bust_max\": 97.0, \"height_min\": 42.0, \"height_max\": 44.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größen: nach Taille, Hüfte, Brust und EU-Größe wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Damen Palmblätter sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser nicht mitspielt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Schnitt und ein Muster, das ruhig bleibt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil rutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eGröße online schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eFarben verblassen nach einer Saison\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu schwimmst eine Runde, steigst wieder raus – und das erste, was du tust, ist nachziehen. Am Oberteil, am Unterteil, beides. Das ist kein Einzelfall: Viele Bikinis sind für den Strandspaziergang gemacht, nicht für den Moment, in dem du wirklich ins Wasser gehst.\u003c\/p\u003e\n\u003cp\u003eDer Triangel-Schnitt dieses Bikinis ist mit verstellbaren Trägern ausgelegt, die sich an unterschiedliche Proportionen anpassen lassen. Der Stoff – 78 % Polyamid, 22 % Elasthan – hat Rückstellvermögen, das bei normaler Belastung dazu beitragen kann, dass der Sitz auch nach dem Schwimmen noch angenehm bleibt. Kein Versprechen für jede Situation, aber ein Anhaltspunkt.\u003c\/p\u003e\n\u003cp\u003eWenn du eher ruhige Wassersportarten magst – Schwimmen, Schnorcheln, Paddeln – kann dieser Bikini passen. Wenn du intensivere Wasseraktivitäten oder Leistungsschwimmen planst, wäre ein sportnäherer Schnitt evtl. die bessere Wahl. Ober- und Unterteil lassen sich separat in der passenden Größe wählen, was besonders dann hilft, wenn Brust und Hüfte unterschiedliche Größen haben.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst ein Triangel-Schnitt mit ruhigem Muster zu dem, was du am Wasser meist machst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle Ober- und Unterteil in deiner Größe – nach Taille, Hüfte, Brust oder EU-Größe.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt beim Schwimmen meist ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt am Strand genauso ruhig wie nach dem Waschen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Triangel-Schnitt mit verstellbaren Trägern – auf stabilen Sitz bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – hilfreich bei unterschiedlichen Proportionen\u003c\/li\u003e\n\u003cli\u003e✅ Ruhiges Palmblatt-Muster mit Quasten – dezent genug für Strand und Terrasse\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – gibt nach und zieht sich bei normaler Nutzung zurück\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für Leistungsschwimmen oder intensiven Wassersport eher nicht geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer auffällige, großflächige Prints bevorzugt, findet das Muster möglicherweise zu ruhig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Damen Palmblätter\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eVerstellbare Träger für stabilen Sitz bei normaler Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen bei Bikinis\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar – Größenrechner nach Taille, Hüfte und Brust\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt nass verwaschen oder verblasst\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Stoff behält bei normaler Nutzung in der Regel seine Form und Farbtiefe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt bei längerem Tragen\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil kann dazu beitragen, dass der Sitz auch nach längerer Tragedauer angenehm bleibt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Damen Palmblätter mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Damen Palmblätter im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Damen Palmblätter\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Damen Palmblätter\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Bikini Damen Palmblätter die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil sind separat wählbar – nach Taille, Hüfte, Brust oder EU-Größe. Unser Größenrechner hilft dir, beide Teile passend einzuschätzen. Bei Unsicherheit zwischen zwei Größen kann es sinnvoll sein, bei Ober- und Unterteil jeweils unterschiedliche Größen zu wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eHält das Oberteil beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Triangel-Schnitt ist mit verstellbaren Trägern ausgelegt. Bei normaler Belastung – Schwimmen, Schnorcheln, Paddeln – bleibt das Oberteil in der Regel ruhig sitzen. Für intensivere Wasseraktivitäten oder Leistungsschwimmen ist ein sportlicherer Schnitt möglicherweise besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBikini Damen Palmblätter Triangel mit Quasten – wie wird der Bikini gepflegt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – das schont den Stoff und die Form bei normaler Nutzung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Unterteil ist für ruhigen Sitz bei alltäglicher Bewegung am Wasser ausgelegt – Gehen, Hinsetzen, ins Wasser gehen. Der Stoff mit Elasthan-Anteil gibt nach und zieht sich zurück. Kein absolutes Versprechen, aber ein Anhaltspunkt für normale Strandaktivitäten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst der Triangel Bikini Damen Palmblätter auch zu einem Strand-Outfit?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas ruhige Palmblatt-Muster in gedämpften Farbtönen lässt sich unkompliziert mit einfarbigen Sarongs, Leinenshorts oder schlichten Strandkleidern kombinieren. Es hält sich optisch im Hintergrund, wenn du es überlagern möchtest.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Aktivitäten ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür Leistungsschwimmen oder sehr sportliche Wasseraktivitäten wie Surfen oder Wassersport mit starken Bewegungen ist ein sportnäherer Schnitt in der Regel besser geeignet. Dieser Triangel Bikini ist auf ruhigen Alltag am Wasser ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tropisches Palmblatt-Muster in gedämpften, satten Tönen auf weißem oder hellem Grund\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Feine Quasten am Oberteil als dezentes Designdetail\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Damen Palmblätter eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Damen Palmblätter\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€22.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Damen Palmblätter dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Damen Palmblätter\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/27954017934.jpg?v=1752911223\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"22.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Rosa\u0026Balu \/ L","offer_id":45166103658764,"sku":"CJYDYYLJ00199-C05-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa\u0026Balu \/ M","offer_id":45166103691532,"sku":"CJYDYYLJ00199-C05-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa\u0026Balu \/ S","offer_id":45166103724300,"sku":"CJYDYYLJ00199-C05-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rosa \/ L","offer_id":45166103757068,"sku":"CJYDYYLJ00199-K01-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rosa \/ M","offer_id":45166103789836,"sku":"CJYDYYLJ00199-K01-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rosa \/ S","offer_id":45166103822604,"sku":"CJYDYYLJ00199-K01-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Türkis \/ L","offer_id":45166103855372,"sku":"CJYDYYLJ00199-K04-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Türkis \/ M","offer_id":45166103888140,"sku":"CJYDYYLJ00199-K04-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Türkis \/ S","offer_id":45166103920908,"sku":"CJYDYYLJ00199-K04-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa\u0026Hellblau \/ L","offer_id":45166103953676,"sku":"CJYDYYLJ00199-K05-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa\u0026Hellblau \/ M","offer_id":45166103986444,"sku":"CJYDYYLJ00199-K05-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa\u0026Hellblau \/ S","offer_id":45166104019212,"sku":"CJYDYYLJ00199-K05-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rot \/ L","offer_id":45166104051980,"sku":"CJYDYYLJ00199-K07-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rot \/ M","offer_id":45166104084748,"sku":"CJYDYYLJ00199-K07-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Rot \/ S","offer_id":45166104117516,"sku":"CJYDYYLJ00199-K07-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Pink\u0026Weiß \/ L","offer_id":45166104150284,"sku":"CJYDYYLJ00199-Pink white-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Pink\u0026Weiß \/ M","offer_id":45166104183052,"sku":"CJYDYYLJ00199-Pink white-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Pink\u0026Weiß \/ S","offer_id":45166104215820,"sku":"CJYDYYLJ00199-Pink white-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Palme \/ L","offer_id":45166104248588,"sku":"CJYDYYLJ00199-Q01-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Palme \/ M","offer_id":45166104281356,"sku":"CJYDYYLJ00199-Q01-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Palme \/ S","offer_id":45166104314124,"sku":"CJYDYYLJ00199-Q01-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarzepalme \/ L","offer_id":45166104346892,"sku":"CJYDYYLJ00199-Q02-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarzepalme \/ M","offer_id":45166104379660,"sku":"CJYDYYLJ00199-Q02-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Schwarzepalme \/ S","offer_id":45166104412428,"sku":"CJYDYYLJ00199-Q02-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard \/ L","offer_id":45166104445196,"sku":"CJYDYYLJ00199-Q03-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard \/ M","offer_id":45166104477964,"sku":"CJYDYYLJ00199-Q03-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard \/ S","offer_id":45166104510732,"sku":"CJYDYYLJ00199-Q03-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ L","offer_id":45166104543500,"sku":"CJYDYYLJ00199-Q04-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ M","offer_id":45166104576268,"sku":"CJYDYYLJ00199-Q04-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ S","offer_id":45166104609036,"sku":"CJYDYYLJ00199-Q04-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Schwarz \/ L","offer_id":45166104641804,"sku":"CJYDYYLJ00199-Red black-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Schwarz \/ M","offer_id":45166104674572,"sku":"CJYDYYLJ00199-Red black-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Schwarz \/ S","offer_id":45166104707340,"sku":"CJYDYYLJ00199-Red black-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Weiß \/ L","offer_id":45166104740108,"sku":"CJYDYYLJ00199-Red white-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Weiß \/ M","offer_id":45166104772876,"sku":"CJYDYYLJ00199-Red white-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Rot\u0026Weiß \/ S","offer_id":45166104805644,"sku":"CJYDYYLJ00199-Red white-S","price":22.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/27954017934.jpg?v=1752911223"},{"product_id":"bikini-coquillage-damen-muschel-design","title":"Muschel Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Muschel-Bikini aus, der auffällt – und trotzdem angenehm zu tragen bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du das ruhige Gefühl, wenn ein Bikini-Detail genau das trifft, was du dir vorgestellt hast – ohne sich aufzudrängen.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eDekorative Bademode wirkt auf dem Bügel anders als am Körper – und genau das merkt man meist erst am Wasser.\u003c\/p\u003e\n  \u003ch2\u003eMuschel Bikini Damen mit rosa-blau Farbverlauf – für See, Strand und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Muschel-Motiv mit zartem rosa-blauem Farbverlauf – gedacht für Tage, an denen das Design sprechen soll, ohne den Rest zu übertönen. Weiche Elastizität durch 78 % Polyamid und 22 % Elasthan, angenehm eng anliegend ohne einzuschneiden.\u003c\/p\u003e\n\u003cp\u003eDas Muschel-Design greift ein Motiv auf, das seit Langem mit Küste und Sommerlicht verbunden wird. Der Farbverlauf von Rosa nach Blau erinnert an die Stunde am frühen Morgen, wenn Himmel und Wasser noch dieselbe Farbe haben. Es ist kein lautes Muster – eher ein stiller Blickfang, der am Wasser seine eigene Wirkung entfaltet. Wer am Bodenseeufer ins Wasser geht und kurz innehält, bevor die Füße das kühle Nass berühren, trägt diesen Farbwechsel plötzlich mit sich.\u003c\/p\u003e\n\u003cp\u003eDie Muschelform gibt dem Oberteil eine klare Silhouette ohne aufgesetzte Strukturen. Zwischen rosa und blau spielt das Licht je nach Sonnenstand unterschiedlich – beim Sitzen auf dem Handtuch wirkt er anders als wenn man aufsteht und ins Wasser läuft. Dazu kombiniert er sich unkompliziert: ein weißes Strandkleid, eine helle Leinenshorts oder einfach ein Baumwollschal darüber – der Bikini braucht keine aufwendige Ergänzung.\u003c\/p\u003e\n\u003cp\u003eFür einen Urlaubstag am See, wenn man das Handtuch ausbreitet und die ersten Sonnenstunden einfach zulässt. Für Pool-Nachmittage, an denen man nicht im Hintergrund bleiben, aber auch nicht auffallen will wie ein Kostüm. Für Fotos, bei denen das Motiv mehr erzählt als ein einfarbiger Bikini – ohne dass man darüber nachdenken muss.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Farbverlauf verändert sich je nach Licht – im Schatten kühl, in der Sonne warm.\u003cbr\u003e• Das Muschel-Motiv bleibt auch nach dem Trocknen klar erkennbar – kein Verlaufen, kein Verwaschen.\u003cbr\u003e• Es fühlt sich nach einer bewussten Wahl an – nicht nach dem erstbesten Bikini im Ständer.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du eine Größe auswählst, hilft der Größenrechner unten weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 68.0, \"waist_max\": 72.0, \"hip_min\": 89.0, \"hip_max\": 93.0}, {\"name\": \"M\", \"waist_min\": 73.0, \"waist_max\": 77.0, \"hip_min\": 94.0, \"hip_max\": 98.0}, {\"name\": \"L\", \"waist_min\": 78.0, \"waist_max\": 82.0, \"hip_min\": 99.0, \"hip_max\": 103.0}, {\"name\": \"XL\", \"waist_min\": 83.0, \"waist_max\": 87.0, \"hip_min\": 104.0, \"hip_max\": 108.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenauswahl nach Taille, Hüfte und Brust\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Muschel Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Detail anders aussieht als erwartet\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eForm, Sitz und Optik lassen sich erst am Körper einschätzen – nicht auf dem Bügel.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDekorative Details wirken im Laden anders als am Strand\u003c\/li\u003e\n\u003cli\u003eDer Elasthan-Anteil gibt Spielraum – aber der Sitz hängt auch vom Schnitt ab\u003c\/li\u003e\n\u003cli\u003eMuscheln und Verzierungen können scheuern, wenn die Größe nicht stimmt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDekorative Bikinis wirken im ersten Moment oft anders als im zweiten. Man zieht sie an, dreht sich einmal, und merkt: Der Sitz stimmt – oder eben nicht ganz. Besonders bei Motiven mit plastischen Elementen liegt die Frage nahe, ob sie auf der Haut drücken oder sich nach ein paar Schritten am Strand anders anfühlen als beim ersten Anziehen.\u003c\/p\u003e\n\u003cp\u003eDas hat weniger mit dem Design selbst zu tun als mit der Kombination aus Schnitt und Größe. Der Materialmix aus Polyamid und Elasthan ist in der Regel auf Bewegung ausgelegt – er gibt nach, passt sich an und kehrt in der Regel zur Form zurück. Wie eng oder weit das in der Praxis ist, hängt von den eigenen Maßen ab. Wer an empfindlichen Stellen leicht reagiert, sollte den Sitz beim ersten Tragen gezielt prüfen.\u003c\/p\u003e\n\u003cp\u003eDieser Muschel Bikini Damen richtet sich an Käuferinnen, die ein klar dekoratives Stück suchen – für Urlaubstage, Strandmomente oder Pool-Nachmittage, bei denen das Aussehen mehr zählt als sportliche Funktion. Wenn du einen Bikini für intensive Wassereinheiten oder sehr zurückhaltendes Styling suchst, ist dieses Modell mit seinem markanten Farbverlauf vielleicht nicht die erste Wahl.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das, was du hier siehst, zu dem, wie du einen Badetag verbringst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eDer Größenrechner unten hilft dir, anhand von Taille, Hüfte und Brust einzuschätzen, welche Größe für dich in Frage kommt.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Größenübersicht an – und entscheide dann in Ruhe.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Getragen an Strandtagen am Bodensee oder im Urlaub als bewusst gewählter Sommerlook\u003c\/li\u003e\n\u003cli\u003e→ Ausgewählt für Pool-Nachmittage, bei denen das Design stärker zählt als sportliche Funktion\u003c\/li\u003e\n\u003cli\u003e→ Kombiniert mit hellem Strandkleid oder Leinenshorts für einen ruhigen, stimmigen Auftritt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dekoratives Muschel-Motiv mit rosa-blauem Farbverlauf – klar erkennbares Stilmerkmal\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – bei normaler Belastung flexibel und formgebend\u003c\/li\u003e\n\u003cli\u003e✅ Dezentes Design, das sich zu hellen Strand-Outfits kombinieren lässt\u003c\/li\u003e\n\u003cli\u003e✅ Klare Pflegeangaben – Feinwäsche 30 °C, lufttrocknen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Weniger geeignet für sehr minimalistisches oder sportliches Styling\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht ideal für intensive Schwimmeinheiten oder Wasseraktivitäten mit hoher Belastung\u003c\/li\u003e\n\u003cli\u003e⚠️ Erfordert Schonwäsche – wer pflegeleichte Bademode ohne Handwäsche sucht, sollte das einplanen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Muschel Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDekorative Details bei Bikinis wirken oft billig oder fallen nach wenigen Wäschen ab\u003c\/td\u003e\n\u003ctd\u003eDas Muschel-Motiv ist ins Design eingearbeitet – kein aufgesetztes Element, das sich lösen kann\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Oberteile verlieren bei Bewegung Halt oder sitzen nur im Stehen gut\u003c\/td\u003e\n\u003ctd\u003e22 % Elasthan kann auf elastischen Sitz ausgelegt sein – der konkrete Halt hängt vom gewählten Schnitt und der Größe ab\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarbverläufe verblassen nach dem ersten Sommer oder sehen nach dem Waschen stumpf aus\u003c\/td\u003e\n\u003ctd\u003eBei Pflege nach Angabe – Feinwäsche 30 °C, kein Trockner – bleibt der Farbverlauf in der Regel stabil\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eEmpfindliche Bademode ist schwer zu pflegen und verliert schnell die Form\u003c\/td\u003e\n\u003ctd\u003eFeinwäsche 30 °C und Lufttrocknung sind als Pflegeweg angegeben – kein aufwendiges Handwäsche-Ritual nötig\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Muschel Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Muschel Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eMuschel Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Muschel Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Muschel Bikini Damen die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie Größe wird anhand von Taille, Hüfte und Brust bestimmt. Trage deine aktuellen Maße in den Größenrechner ein – bei Werten zwischen zwei Größen empfiehlt es sich in der Regel, die größere Variante zu wählen, damit der Sitz an Hüfte und Brust angenehm bleibt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Muschel Bikini Damen richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen, um Sand und Rückstände zu lösen. Anschließend bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – liegend an der Luft trocknen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eScheuern die Muschel-Details beim Tragen auf der Haut?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Muschel-Motiv ist Teil des Designs, keine aufgesetzte dreidimensionale Verzierung. Trotzdem empfiehlt es sich, beim ersten Tragen zu prüfen, wie der Sitz an empfindlichen Stellen ist – besonders wenn die Größe knapp ausfällt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Situationen eignet sich dieser Muschel Bikini Damen Set?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf dekorative Wirkung ausgelegt – er passt gut zu Urlaubstagen am See oder Strand, Pool-Nachmittagen und Momenten, bei denen das Design sichtbar sein soll. Für intensives Schwimmen oder sehr sportliche Aktivitäten gibt es funktional ausgerichtete Alternativen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – beim Gehen oder Hinsetzen am Strand?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Materialmix aus Polyamid und Elasthan ist auf Beweglichkeit ausgelegt und gibt bei normaler Belastung mit. Ob der Bund ruhig sitzt, hängt von der gewählten Größe und dem eigenen Schnitt ab – eine sorgfältige Größenwahl anhand der Maße ist hier der verlässlichste Anhaltspunkt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBleibt der rosa-blaue Farbverlauf nach dem Waschen erhalten?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBei Pflege nach Angabe – Feinwäsche 30 °C, kein Trockner – bleibt der Farbverlauf in der Regel stabil. Intensiver Kontakt mit Chlor oder direktes Auswringen kann die Farbe auf Dauer beeinflussen; kurzes Ausspülen mit klarem Wasser nach dem Tragen wird empfohlen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/mix-match-so-kombinieren-sie-bikini-teile-richtig\"\u003eMix \u0026amp; Match: So kombinieren Sie Bikini-Teile richtig\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/papa-geschenke\/die-schonsten-vatertagsgeschenke-2025-mit-liebe-ausgewahlt\"\u003eDie schönsten Vatertagsgeschenke 2025 - Mit Liebe ausgewählt\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug\"\u003eInnovative Badeanzüge für Damen: Trends, Passform und Stil\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Rosa-blauer Farbverlauf im Sonnenlicht am Wasser – warme und kühle Töne wechseln sich je nach Lichteinfall ab\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Muschel-Motiv klar erkennbar auch nach dem Trocknen – kein Verlaufen der Form\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Muschel Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eMuschel Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€32.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Muschel Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Muschel Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/193072510384.jpg?v=1752911021\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"32.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"A \/ S","offer_id":45166120042764,"sku":"CJYDYYBJ00272-A-S","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"A \/ M","offer_id":45166120009996,"sku":"CJYDYYBJ00272-A-M","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"A \/ L","offer_id":45166119977228,"sku":"CJYDYYBJ00272-A-L","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"A \/ XL","offer_id":45166120075532,"sku":"CJYDYYBJ00272-A-XL","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"B \/ S","offer_id":45166120173836,"sku":"CJYDYYBJ00272-B-S","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"B \/ M","offer_id":45166120141068,"sku":"CJYDYYBJ00272-B-M","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"B \/ L","offer_id":45166120108300,"sku":"CJYDYYBJ00272-B-L","price":32.99,"currency_code":"EUR","in_stock":true},{"title":"B \/ XL","offer_id":45166120206604,"sku":"CJYDYYBJ00272-B-XL","price":32.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/193072510384.jpg?v=1752911021"},{"product_id":"bikini-ruffle-shorts-damen","title":"tie dye bikini damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Tie-Dye-Bikini aus, der den ganzen Tag angenehm sitzt – ohne Nachziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach mitgeht – beim Schwimmen, beim Aufstehen, beim Hinsetzen auf dem Steg.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau das merkt man oft erst nach einigen Stunden am See – ob ein Bikini wirklich sitzt oder nur anfangs gut aussieht.\u003c\/p\u003e\n  \u003ch2\u003eTie Dye Bikini Damen mit Regenbogen-Farbverlauf – Off-Shoulder-Schnitt für See und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nOff-Shoulder-Oberteil mit fließendem Tie-Dye-Regenbogenverlauf – für entspannte Tage am Wasser, die keine Aufmerksamkeit brauchen, um aufzufallen. Das Milk-Silk-Gewebe liegt sanft auf der Haut an.\u003c\/p\u003e\n\u003cp\u003eTie-Dye lebt von Unvollkommenheit – jeder Verlauf ist ein bisschen anders, kein Muster exakt wie das andere. Bei diesem Bikini bewegt sich das Farbspiel vom warmen Gelbton über ein sanftes Grün bis ins kühle Violett. Das wirkt am Bodenseeufer genauso stimmig wie am Mittelmeer-Strand: dezent genug für einen langen Badetag, aber mit dieser ruhigen Farbtiefe, die man sonst eher auf analogen Fotografien findet.\u003c\/p\u003e\n\u003cp\u003eDas Off-Shoulder-Oberteil lässt die Schultern frei – was auf Fotos interessant aussieht, zeigt sich im Alltag vor allem beim Hinlegen auf dem Handtuch oder beim Schlendern am Ufer: kein Träger, der einschneidet, keine harten Kanten. Der Regenbogen-Farbverlauf wirkt im Tageslicht anders als im Schatten eines Sonnenschirms – mal wärmer, mal kühler. Kombinierbar mit einem einfachen Leinenrock oder direkt mit einer Shorts – der Schnitt hält sich zurück, ohne unsichtbar zu sein.\u003c\/p\u003e\n\u003cp\u003eDieser tie dye bikini damen eignet sich für Tage, an denen man morgens ans Wasser fährt und erst abends wieder geht: Kaffee am Bootssteg, ein paar Schwimmzüge, Mittagspause im Schatten. Das Muster braucht kein Drumherum – es funktioniert allein. Als Geschenk sagt er: ich habe dir etwas mitgebracht, das zu dir passt, ohne dass ich es erklären muss.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff liegt direkt nach dem Anziehen ruhig an – kein Anpassungsgefühl nötig.\u003cbr\u003e• Die Farben wirken je nach Licht unterschiedlich – morgens anders als am Nachmittag.\u003cbr\u003e• Das Off-Shoulder-Design fühlt sich am Schulterbereich frei an, nicht ausgeschnitten.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle unten deine Maße – oder lies weiter, was das Gewebe im Wasser macht.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 75.0, \"hip_max\": 81.0, \"bust_min\": 79.0, \"bust_max\": 85.0}, {\"name\": \"M\", \"hip_min\": 80.0, \"hip_max\": 86.0, \"bust_min\": 84.0, \"bust_max\": 90.0}, {\"name\": \"L\", \"hip_min\": 85.0, \"hip_max\": 91.0, \"bust_min\": 89.0, \"bust_max\": 95.0}, {\"name\": \"XL\", \"hip_min\": 90.0, \"hip_max\": 96.0, \"bust_min\": 94.0, \"bust_max\": 100.0}, {\"name\": \"2XL\", \"hip_min\": 95.0, \"hip_max\": 101.0, \"bust_min\": 99.0, \"bust_max\": 105.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Milk Silk, 70 % Elasthan – weich und anschmiegsam\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: Off-Shoulder-Oberteil, Tie-Dye-Regenbogenverlauf\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: separat nach Brust, Bauch und Hüfte\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann tie dye bikini damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser unruhig wird\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Stoff und Schnitt – was sich nach ein paar Stunden zeigt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil hält beim Schwimmen nicht richtig\u003c\/li\u003e\n\u003cli\u003eDie Größe online ist schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eDer Stoff fühlt sich nass unangenehm an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer kennt das: Man geht einmal ins Wasser, kommt raus – und zieht nach. Oberteil sitzt nicht mehr, Unterteil hat sich verschoben. Das ist nicht zwangsläufig eine Frage der Größe, sondern oft eine des Materials und des Schnitts.\u003c\/p\u003e\n\u003cp\u003eViele Bikini-Stoffe verlieren im nassen Zustand ihre Spannung oder nehmen Wasser auf, das dann beim Bewegen drückt. Das Milk-Silk-Gewebe dieses Modells ist auf Elastizität bei Bewegung ausgelegt – es gibt nach und kehrt in der Regel in seine Form zurück. Kein Versprechen für jeden Einzelfall, aber ein Anhaltspunkt dafür, wie das Material reagiert.\u003c\/p\u003e\n\u003cp\u003eDas Off-Shoulder-Oberteil ist für entspannte Bewegung im Wasser gedacht – nicht für intensives Leistungsschwimmen oder sportliche Wasseraktivitäten, bei denen ein Rücken-Verschluss oder Träger mehr Halt bieten. Wenn du eher lange Schwimmstrecken planst, ist ein Sportbikini mit Trägern evtl. passender für dich. Für Tage am See, gelegentliche Schwimmzüge und viel Strandleben ist dieser Schnitt ausgelegt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das zu dem, was du am Wasser machst – oder brauchst du mehr Halt für Bewegung?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil können separat nach Maß gewählt werden – nach Brust, Bauch und Hüfte – damit beides passt, auch wenn deine Maße nicht immer in dieselbe Konfektionsgröße fallen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt beim gelegentlichen Schwimmen meist ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Regenbogen-Farbverlauf wirkt je nach Licht anders – morgens warm, nachmittags kühler\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Off-Shoulder-Schnitt – frei an den Schultern, bei normaler Strandbewegung ruhig sitzend\u003c\/li\u003e\n\u003cli\u003e✅ Tie-Dye-Regenbogenverlauf – jedes Stück ein bisschen anders, kein identisches Muster\u003c\/li\u003e\n\u003cli\u003e✅ Separat wählbar nach Brust, Bauch und Hüfte – für unterschiedliche Maße an Ober- und Unterteil\u003c\/li\u003e\n\u003cli\u003e✅ Milk-Silk-Gewebe – weich und anschmiegsam, auch direkt nach dem Schwimmen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ausgelegt für Leistungsschwimmen oder intensive sportliche Wasseraktivitäten\u003c\/li\u003e\n\u003cli\u003e⚠️ Off-Shoulder ohne Träger – wer bei Bewegung viel Halt benötigt, greift besser zu einem Träger-Modell\u003c\/li\u003e\n\u003cli\u003e⚠️ Tie-Dye-Muster: wer klare Uni-Farben oder geometrische Muster bevorzugt, liegt hier evtl. nicht richtig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ tie dye bikini damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach dem ersten Sprung ins Wasser\u003c\/td\u003e\n\u003ctd\u003eOff-Shoulder-Schnitt mit elastischem Milk-Silk – auf ruhigen Sitz bei entspannter Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Größe online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar nach Brust, Bauch und Hüfte – Größenrechner verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm steif an\u003c\/td\u003e\n\u003ctd\u003eMilk-Silk-Gewebe mit 70 % Elasthan – weich und anschmiegsam, auch im nassen Zustand\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTie-Dye-Farben verblassen nach der ersten Saison\u003c\/td\u003e\n\u003ctd\u003ePflege bei niedrigen Temperaturen und Ausspülen nach dem Tragen kann die Farbintensität länger erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei tie dye bikini damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich tie dye bikini damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Hochwertiges Milk Silk mit 70 % Elasthan – superweich, anschmiegsam und besonders sanft zu empfindlicher Haut. Das innovative Gewebe fühlt sich luxuriös an und trocknet blitzschnell nach dem Schwimmen.\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen, sondern lufttrocknen lassen – das schont Material und Umwelt gleichermaßen.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003etie dye bikini damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu tie dye bikini damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Tie-Dye-Bikini die richtige Größe für Ober- und Unterteil?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil werden separat gewählt – nach Brust, Bauch und Hüfte. Wenn deine Maße auseinandergehen, kannst du beide Teile unabhängig voneinander in der passenden Größe bestellen. Unser Größenrechner hilft dir dabei, Körpergröße und Gewicht einzuordnen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt das Off-Shoulder-Oberteil beim Bewegen und Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil ist auf Bewegung bei entspanntem Badespaß ausgelegt – Schwimmen, Aufstehen, Hinlegen. Bei sehr intensivem Schwimmen oder sportlichen Wasseraktivitäten bieten Bikini-Tops mit Trägern in der Regel mehr Halt. Das Milk-Silk-Gewebe gibt nach und kehrt bei normaler Belastung meist in seine Form zurück.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Tie-Dye-Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – flach liegend trocknen lassen, damit Form und Farben möglichst lange erhalten bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eVerblassen die Regenbogenfarben beim Tie-Dye-Bikini schnell?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas lässt sich pauschal nicht versprechen – Intensität und Haltbarkeit hängen von Pflege, Wasserkontakt und Sonneneinstrahlung ab. Als Anhaltspunkt: Ausspülen nach dem Tragen und Waschen bei niedrigen Temperaturen kann dazu beitragen, dass die Farben länger frisch bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist ein Off-Shoulder-Bikini mit Tie-Dye-Look weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWenn du viel Halt beim Schwimmen oder sportliche Wasseraktivitäten planst, ist ein Bikini mit Trägern oder Rückenverschluss evtl. die passendere Wahl. Dieses Modell ist eher für entspannte Strandtage und gelegentliche Schwimmzüge ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWo wird dieser Bikini der Bodenseemarke hergestellt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eInformationen zur Herstellung findest du direkt auf der Produktseite oder im Kontakt mit unserem Team. Wir geben auf Anfrage gern Auskunft.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-mit-bauchweg-effekt-im-sale\"\u003eBadeanzüge mit Bauchweg-Effekt im Sale\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-die-den-bauch-kaschieren\"\u003eBadeanzüge, die den Bauch kaschieren\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bauchweg-bademode-fur-einen-selbstbewussten-sommer\"\u003eDie perfekte Bauchweg Bademode für einen selbstbewussten Sommer\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tie-Dye-Farbverlauf in Regenbogenfarben – von Gelb über Grün bis Violett\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Off-Shoulder-Oberteil am Bodenseeufer, Schultern frei, Stoff liegt sanft an\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann tie dye bikini damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003etie dye bikini damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€28.90\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass tie dye bikini damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"tie dye bikini damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1858453949043.jpg?v=1752910512\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"28.90\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen, sondern lufttrocknen lassen – das schont Material und Umwelt gleichermaßen.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Grün \/ S","offer_id":45166126301452,"sku":"CJNSSYTZ03422-Blue-S","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Grün \/ M","offer_id":45166126268684,"sku":"CJNSSYTZ03422-Blue-M","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Grün \/ L","offer_id":45166126235916,"sku":"CJNSSYTZ03422-Blue-L","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Grün \/ XL","offer_id":45166126334220,"sku":"CJNSSYTZ03422-Blue-XL","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Grün \/ XXL","offer_id":45166126366988,"sku":"CJNSSYTZ03422-Blue-XXL","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ S","offer_id":45166126465292,"sku":"CJNSSYTZ03422-Orange-S","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ M","offer_id":45166126432524,"sku":"CJNSSYTZ03422-Orange-M","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ L","offer_id":45166126399756,"sku":"CJNSSYTZ03422-Orange-L","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ XL","offer_id":45166126498060,"sku":"CJNSSYTZ03422-Orange-XL","price":28.9,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ XXL","offer_id":45166126530828,"sku":"CJNSSYTZ03422-Orange-XXL","price":28.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1858453949043.jpg?v=1752910512"},{"product_id":"bikini-damen-trendfarben","title":"olivgrüner Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der den ganzen Tag ruhig sitzt – und dabei einfach gut aussieht?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Bikini von morgens bis abends einfach da ist – ohne dass du groß daran denken musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau dabei merken viele, dass es weniger um Details geht als um das Zusammenspiel aus Schnitt, Stoff und Farbe.\u003c\/p\u003e\n  \u003ch2\u003eOlivgrüner Bikini Damen – einfarbig, schlicht, für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einfarbiges Bikini-Set in Olivgrün – der Ton liegt zwischen Grün und Grau, ruhig und dabei klar genug, um zu wirken. Das Oberteil und das Unterteil sind in derselben Farbe gehalten, der Stoff aus 78 % Polyamid und 22 % Elasthan passt sich der Bewegung an.\u003c\/p\u003e\n\u003cp\u003eOlivgrün ist ein Ton, der am Wasser besonders ruhig wirkt – weder aufdringlich noch blass. Wenn du morgens am Bodenseeufer oder an einem Strandabschnitt ins Wasser gehst, fällt die Farbe in natürlichem Licht warm und zurückhaltend zugleich aus. Kein Muster lenkt ab, keine Applikation stört das Bild. Das einfarbige Design macht es einfacher, den genauen Farbton zu beurteilen – was bei Online-Bestellungen oft hilft.\u003c\/p\u003e\n\u003cp\u003eEinfarbige Bademoden in ruhigen Grüntönen passen 2026 gut zu dem, was viele gerade suchen: weniger Lautstärke, mehr Kombinierbarkeit. Über einem beigefarbenen Leinenshirt oder mit einem olivfarbenen Sarong zusammen verschwindet der Bikini nicht – er wird zum Teil eines stimmigen Looks. Wer am Pool sitzt und einfach da ist, ohne nachzujustieren, merkt, wie angenehm das sein kann.\u003c\/p\u003e\n\u003cp\u003eDieser olivgrüne Bikini für Damen passt zu einem Tag am See, einem Urlaub am Mittelmeer oder einem ruhigen Nachmittag am Pool. Er eignet sich als unkomplizierter Bikini für den Sommer, der sich ohne viel Aufwand in verschiedene Urlaubsoutfits einfügt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du greifst morgens zum Bikini und brauchst nicht lange zu überlegen, was dazu passt.\u003cbr\u003e• Am Ufer, wenn du aufstehst und ins Wasser gehst, sitzt der Stoff durch den Elasthan-Anteil meist ruhig mit.\u003cbr\u003e• Abends über dem Bikini-Unterteil eine Leinenhose – und der Look trägt sich ohne großen Wechsel weiter.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWähl Brust- und Bauchumfang über die Größenauswahl – Top und Hose können separat bestellt werden.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenauswahl: separat nach Brust- und Bauchumfang\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann olivgrüner Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Alltag unruhig sitzt oder online anders wirkt als gedacht\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEinfarbige Bademode kann helfen, beides besser einzuschätzen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDie Farbe wirkt im Foto anders als dann am Körper\u003c\/li\u003e\n\u003cli\u003eDas Oberteil zieht beim Schwimmen oder Aufstehen weg\u003c\/li\u003e\n\u003cli\u003eEin schlichter Bikini wirkt schnell zu unscheinbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Ein Bikini sieht im Shop gut aus, wirkt dann aber in einem anderen Licht dunkler, greller oder schlicht anders als erwartet. Bei Mustern kommt noch die Frage dazu, ob der Print auf dem Foto wirklich das ist, was man sich vorgestellt hat. Das führt dazu, dass man bestellt, zweifelt und häufiger zurückschickt, als nötig wäre.\u003c\/p\u003e\n\u003cp\u003eEin Teil der Unsicherheit liegt schlicht an der Komplexität – Muster, Farbverläufe und Dekoration machen es schwerer, den genauen Look vorauszusehen. Ein einfarbiger Bikini in Olivgrün macht diesen Schritt etwas konkreter: Der Ton ist klar, die Farbwirkung bei Tageslicht auf den Produktfotos gibt einen realistischeren Anhaltspunkt. Das löst nicht alle Fragen, kann aber eine Entscheidung erleichtern.\u003c\/p\u003e\n\u003cp\u003eWenn du einen schlichten Bikini suchst, der sich gut kombinieren lässt und keinen Auftritt braucht, könnte dieser einfarbige Zweiteiler in Olivgrün passen. Wenn du dagegen einen Bikini mit auffälligem Print, Bandeau-Schnitt oder starker Formunterstützung suchst, ist dieses Modell wahrscheinlich nicht das Richtige – es setzt auf Reduktion, nicht auf Effekt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst ein ruhiger, einfarbiger Look zu dem, wie du am Strand oder See auftreten möchtest?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähl deine Größe nach Brust- und Bauchumfang – Top und Hose lassen sich separat auswählen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Am Bodenseeufer oder Strand – ruhiger Sitz beim Gehen und ins Wasser gehen\u003c\/li\u003e\n\u003cli\u003e→ Kombination mit Leinenhose oder Sarong für den Weg vom Wasser zum Café\u003c\/li\u003e\n\u003cli\u003e→ Als unkomplizierter Sommer-Bikini, der Urlaub für Urlaub funktioniert\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einfarbiges Design in Olivgrün – Farbwirkung online leichter einzuschätzen als bei Mustern\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – bei normaler Belastung dehnbar und formgebend\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar nach Brust- und Bauchumfang\u003c\/li\u003e\n\u003cli\u003e✅ Ruhiger Ton, der sich mit neutralen Strandoutfits gut kombinieren lässt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ideal, wenn du auffällige Prints oder starke Dekoration suchst\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Trockner geeignet – Feinwäsche 30 °C ist erforderlich\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Modell mit ausgewiesenem Bandeau-Schnitt oder integrierter Formunterstützung\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ olivgrüner Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarbe wirkt online oft uneinheitlich oder zu grell\u003c\/td\u003e\n\u003ctd\u003eEinfarbiges Olivgrün – die Farbwirkung auf Tageslichtfotos gibt einen realistischeren Anhaltspunkt als gemusterte Modelle\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eElastische Bikinis verlieren nach wenigen Wäschen schneller Form\u003c\/td\u003e\n\u003ctd\u003eFeinwäsche bei 30 °C ist auf schonendere Behandlung ausgelegt; der Elasthan-Anteil kann bei richtiger Pflege länger stabil bleiben\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchlichte Modelle wirken manchmal wenig modisch\u003c\/td\u003e\n\u003ctd\u003eOlivgrün ist 2026 ein relevanter Grünton – reduziertes Design kann zusammen mit der Farbe als eigenständiger Look wirken\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBademode fühlt sich bei Bewegung schnell unsicher an\u003c\/td\u003e\n\u003ctd\u003e22 % Elasthan kann für mehr Bewegungsfreiheit sorgen; für stabilen Sitz ist die richtige Größe nach Bauchumfang entscheidend\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei olivgrüner Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich olivgrüner Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eolivgrüner Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu olivgrüner Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim olivgrünen Bikini die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil können separat nach Brustumfang und Bauchumfang gewählt werden. Wenn du dir unsicher bist, hilft unser Größenrechner mit Körpergröße und Gewicht als Orientierung. Bei Bademode mit Elasthan-Anteil ist in der Regel die enganliegendere Größe die bessere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt Olivgrün am Körper – sieht die Farbe online anders aus?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOlivgrün liegt zwischen Grün und Grau und wirkt je nach Licht unterschiedlich warm oder kühl. Die Produktfotos bei Tageslicht geben einen guten Anhaltspunkt. Da das Design einfarbig ist, fällt die Einschätzung leichter als bei gemusterten Modellen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen einfarbigen Bikini in Olive richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann als Feinwäsche bei 30 °C waschen. Nicht im Trockner trocknen – das schont Elasthan-Anteil und hilft, Form und Farbe länger stabil zu halten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Anlässe eignet sich ein schlichter grüner Bikini für Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist für Strand, See und Pool ausgelegt – überall dort, wo ein ruhiger, kombinierbarerer Look gefragt ist. Er passt gut zu Leinenshirts, Shorts oder einem neutralen Cover-up.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund beim Schwimmen und bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Elasthan-Anteil (22 %) ermöglicht eine gewisse Dehnbarkeit, sodass das Unterteil bei normaler Bewegung – Gehen, Hinsetzen, ins Wasser gehen – meist ruhig sitzt. Die genaue Passform hängt vom gewählten Schnitt und der Größe ab; für die beste Einschätzung empfiehlt sich die Größenwahl nach Bauchumfang.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eLässt sich der Bodensee-Bikini in Olivgrün mit anderen Teilen kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eEin einfarbiges Design in Olivgrün lässt sich gut mit neutralen Farben kombinieren – Beige, Weiß, Sand oder Khaki passen besonders gut. Über eine Leinenhose oder unter einem weißen Oversized-Shirt trägt sich das Set auch abseits des Wassers unauffällig.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/trendige-bademode-fur-damen-2025-stilvoll-am-strand\"\u003eTrendige Bademode für Damen 2025: Stilvoll am Strand\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bademode-fur-frauen\"\u003eBademode für Frauen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Olivgrüner Ton im Tageslicht – warm, ruhig, mit leichtem Grauanteil\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Einfarbiges Set – Oberteil und Unterteil in einer Farbe, kein Mustermix\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann olivgrüner Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eolivgrüner Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€22.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass olivgrüner Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"olivgrüner Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/7717468035728.png?v=1752908619\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"22.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"S \/ Olivengrün","offer_id":45166133674252,"sku":"CJYDYYBJ00431-S-Green","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"S \/ Himmelblau","offer_id":45166133707020,"sku":"CJYDYYBJ00431-S-Light Blue","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"S \/ Tulpenpink","offer_id":45166133739788,"sku":"CJYDYYBJ00431-S-Pink","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"S \/ Lila","offer_id":45166133772556,"sku":"CJYDYYBJ00431-S-Purple","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"S \/ Kirschrot","offer_id":45166133805324,"sku":"CJYDYYBJ00431-S-Red","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"S \/ Sonnengelb","offer_id":45166133838092,"sku":"CJYDYYBJ00431-S-Yellow","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Olivengrün","offer_id":45166133477644,"sku":"CJYDYYBJ00431-M-Green","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Himmelblau","offer_id":45166133510412,"sku":"CJYDYYBJ00431-M-Light Blue","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Tulpenpink","offer_id":45166133543180,"sku":"CJYDYYBJ00431-M-Pink","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Lila","offer_id":45166133575948,"sku":"CJYDYYBJ00431-M-Purple","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Kirschrot","offer_id":45166133608716,"sku":"CJYDYYBJ00431-M-Red","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"M \/ Sonnengelb","offer_id":45166133641484,"sku":"CJYDYYBJ00431-M-Yellow","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Olivengrün","offer_id":45166133281036,"sku":"CJYDYYBJ00431-L-Green","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Himmelblau","offer_id":45166133313804,"sku":"CJYDYYBJ00431-L-Light Blue","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Tulpenpink","offer_id":45166133346572,"sku":"CJYDYYBJ00431-L-Pink","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Lila","offer_id":45166133379340,"sku":"CJYDYYBJ00431-L-Purple","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Kirschrot","offer_id":45166133412108,"sku":"CJYDYYBJ00431-L-Red","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"L \/ Sonnengelb","offer_id":45166133444876,"sku":"CJYDYYBJ00431-L-Yellow","price":22.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/7717468035728.png?v=1752908619"},{"product_id":"bandeau-bikini-damen","title":"lila Palmenprint Bikini","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der beim Schwimmen ruhig sitzt – und auch nach Stunden am See noch so?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini passt, ohne dass du ständig daran denkst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied erst im Laufe des Tages – beim Aufstehen aus dem Wasser, beim Hinlegen auf dem Handtuch, beim nächsten Bad.\u003c\/p\u003e\n  \u003ch2\u003eLila Bandeau Bikini mit Palmenprint – für See, Strand und ruhige Sommertage\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nBandeau-Schnitt ohne Träger – für Tage, an denen du einfach ins Wasser gehst und dich nicht um den Sitz kümmern möchtest. Palmen und geometrische Muster in blau-lila-pink Tönen, dezent und kombinierbar. Der Stoff aus 78 % Polyamid und 22 % Elasthan liegt eng an und gibt dabei mit.\u003c\/p\u003e\n\u003cp\u003eDas Palmenmotiv dieses lila Bandeau Bikinis arbeitet mit Lila, Blau und leichten Pink-Tönen – eine Farbwelt, die am Bodenseeufer genauso wirkt wie am Mittelmeer. Die geometrischen Linien halten das Design ruhig, ohne es flach wirken zu lassen. Wer Muster mag, die auffallen, aber nicht überladen sind, findet hier einen klaren Mittelweg.\u003c\/p\u003e\n\u003cp\u003eAm Seeufer auf dem Handtuch liegend wirkt das Palmen-Print-Motiv leicht und offen. Beim Aufstehen und ins Wasser gehen bleibt das Oberteil ruhig sitzen – der Bandeau-Schnitt ist auf Bewegung ausgelegt, nicht nur fürs Liegen. Das Lila lässt sich gut mit einem hellen Leinentuch oder einem weißen Strand-Shirt kombinieren, wenn der Abend länger wird.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini passt zum Sprung ins kühle Seewasser genauso wie zum ruhigen Nachmittag auf dem Bootssteg. Er ist kein Statement-Piece, das alle Blicke auf sich zieht – er ist eher etwas für Tage, an denen der Tag selbst im Vordergrund steht.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Palmen-Lila wirkt auf Fotos am Wasser anders als im Laden – lebendiger, klarer.\u003cbr\u003e• Der Stoff liegt nach dem Schwimmen eng an, ohne sich schwer anzufühlen.\u003cbr\u003e• Das Muster ist dezent genug, um auch als zweites Set dabei zu sein – ohne zu dominieren.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWähle Bauch- und Brustgröße separat – so passt beides, wie es passen soll.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Bauch und Brust separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann lila Palmenprint Bikini sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn der Bikini im Wasser unruhig wird\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Stoff und Schnitt – was bei einem Bandeau-Bikini den Unterschied macht.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil rutscht beim Schwimmen nach oben\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Weile unangenehm\u003c\/li\u003e\n\u003cli\u003eDie Größe online einzuschätzen ist bei Bikinis schwierig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst eine Runde – und beim Herauskommen sitzt das Oberteil nicht mehr da, wo es war. Oder der Bund zieht nach einer Stunde in der Sonne. Das sind keine großen Probleme, aber sie summieren sich über einen langen Badetag.\u003c\/p\u003e\n\u003cp\u003eBei Bandeau-Bikinis hängt vieles am Zusammenspiel aus Schnitt und Material. Ein zu weicher Stoff gibt zu viel nach, ein zu steifer drückt. Der Elasthan-Anteil in diesem Modell – 22 % – ist darauf ausgelegt, dass das Oberteil bei normaler Bewegung im Wasser ruhig bleibt, ohne einzuengen. Kein Versprechen, aber ein Anhaltspunkt.\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil lassen sich hier separat nach Bauch- und Brustgröße wählen – das kann bei Bikinis den größten Unterschied machen, weil beide Maße selten identisch sind. Wenn du eher einen Bikini mit Trägern bevorzugst oder bei sportlichen Wasseraktivitäten mehr Halt brauchst, ist ein Triangel- oder Sport-Bikini möglicherweise passender für dich.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Bewegung im Wasser bist du gewohnt – und was ist dir dabei am wichtigsten?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Bauch- und Brustgröße separat, wenn du dir unsicher bist.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt auch beim Schwimmen ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt am Wasser lebendiger als auf dem Produktfoto\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Bandeau-Schnitt ohne Träger – kann bei normaler Bewegung im Wasser ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat nach Bauch- und Brustgröße wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Dezentes Palmen-Print-Muster in Lila-Blau-Pink – kombinierbar und nicht überladen\u003c\/li\u003e\n\u003cli\u003e✅ Weicher Stoff mit hohem Elasthan-Anteil – liegt eng an, gibt dabei mit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder Leistungsschwimmen weniger geeignet – hier ist ein Bikini mit Trägern in der Regel besser\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer reine Einfarbigkeit oder sehr ruhige Muster bevorzugt, könnte das Print-Design als zu lebendig empfinden\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ lila Palmenprint Bikini\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBandeau-Oberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eSchnitt und Elasthan-Anteil (22 %) sind auf stabilen Sitz bei normaler Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Größe online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eBrust und Bauch separat wählbar – Größenrechner mit Körpergröße und Gewicht verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt nach längerem Tragen\u003c\/td\u003e\n\u003ctd\u003eElastischer Polyamid-Elasthan-Stoff passt sich bei normaler Belastung an\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei lila Palmenprint Bikini mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich lila Palmenprint Bikini im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003elila Palmenprint Bikini\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu lila Palmenprint Bikini\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen lila Bandeau Bikini mit Palmenprint?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil lassen sich separat nach Brust- und Bauchumfang wählen. Unser Größenrechner hilft dir mit Körpergröße und Gewicht, die passende Kombination einzuschätzen. Bei Unsicherheit zwischen zwei Größen empfiehlt sich in der Regel die etwas größere Wahl für das Oberteil.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt ein Bandeau Bikini ohne Träger bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Elasthan-Anteil (22 %) ist darauf ausgelegt, dass das Oberteil bei normaler Bewegung im Wasser ruhig bleibt. Bei intensiveren Wassersportarten oder Leistungsschwimmen ist ein Bikini mit Trägern oder Sport-Schnitt in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Palmenprint Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen erhält Form und Elastizität länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil des Bandeau Bikinis in verschiedenen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Brust- und Bauchumfang lassen sich separat wählen. Das ist bei Bikinis oft der entscheidende Punkt, weil beide Maße häufig unterschiedlich sind.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Aktivitäten ist dieser lila Palmenprint Bikini Damen geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eEr ist für entspannte Badetage am See, Pool oder Strand ausgelegt – schwimmen, liegen, ins Wasser gehen. Für intensiven Wassersport oder Leistungsschwimmen ist ein Sport-Bikini mit mehr Halt in der Regel die bessere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Lila-Blau-Pink Palmen-Print auf weißem Bodenseewasser-Hintergrund\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bandeau-Oberteil ohne Träger – klare Linie, dezentes Muster\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann lila Palmenprint Bikini eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003elila Palmenprint Bikini\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.90\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass lila Palmenprint Bikini dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"lila Palmenprint Bikini\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/3725643164_1123842909.jpg?v=1717171385\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.90\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ L","offer_id":45166141276428,"sku":"CJYDYYBJ00167-Black-L","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":45166141309196,"sku":"CJYDYYBJ00167-Black-M","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":45166141341964,"sku":"CJYDYYBJ00167-Black-S","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"Lila \/ L","offer_id":45166141374732,"sku":"CJYDYYBJ00167-Purple-L","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"Lila \/ M","offer_id":45166141407500,"sku":"CJYDYYBJ00167-Purple-M","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"Lila \/ S","offer_id":45166141440268,"sku":"CJYDYYBJ00167-Purple-S","price":25.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/3725643164_1123842909.jpg?v=1717171385"},{"product_id":"bikini-damen-surfer","title":"Langarm Bikini Blumenmuster Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Langarm-Bikini aus, der am Wasser einfach mitgeht – und dabei weiblich bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn Bademode sitzt, ohne dass man ständig daran denkt.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd dann merkt man im Laufe des Tages, ob ein Stück wirklich passt – nicht beim ersten Anziehen, sondern beim dritten Sprung ins Wasser.\u003c\/p\u003e\n  \u003ch2\u003eBikini langarm Damen mit Blumenmuster – für See, Strand und entspannte Sommertage\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nLangärmeliges Oberteil mit floralem Print – ein bedeckterer Look, der am Wasser genauso funktioniert wie beim Entspannen am Ufer, Blumenmuster mit Blättern auf türkisem Grund, der Stoff liegt eng an, ohne einzuengen.\u003c\/p\u003e\n\u003cp\u003eDas Muster: Blüten und Blätter auf einem ruhigen Türkiston – nicht laut, aber präsent. Wer am Bodenseeufer im flachen Wasser steht und die Ärmellänge spürt, die leicht im Wasser mitschwingt, versteht, wofür dieser Schnitt gedacht ist. Kein Statement-Print, sondern ein florales Bild, das zur Jahreszeit passt – und zu einem Sommermorgen am See.\u003c\/p\u003e\n\u003cp\u003eDie lange Ärmel-Silhouette gibt dem Oberteil eine eigenständige Form, die sich von klassischen Bikini-Tops unterscheidet. Türkis als Grundton wirkt am Wasser lebendig, bleibt aber im Farbspektrum ruhig genug, um sich mit einfarbigen Hosen oder Pareos zu kombinieren. Das florale Muster ist klar gezeichnet, nicht überladen – für alle, die einen femininen Look mögen, ohne dass das Muster die Hauptrolle übernimmt. Am Pool, beim Bummeln über den Strandmarkt oder beim Kaffee auf dem Bootssteg: Der Look funktioniert in diesen Momenten, weil er weder zu sportlich noch zu festlich wirkt.\u003c\/p\u003e\n\u003cp\u003eKonkrete Situationen, in denen dieser Bikini langarm Damen gut passt: ein Badetag mit frischer Brise, bei dem die Ärmellänge angenehm ist – ein Wellness-Nachmittag am Pool, bei dem der florale Print für etwas Farbe sorgt – oder ein Urlaubsfoto am See, das einen ruhig-sommerlichen Look zeigt, ohne aufgesetzt zu wirken.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff fühlt sich trocken weich an – und nass deutlich weniger schwer als dickere Materialien.\u003cbr\u003e• Das Türkis-Blumenmuster lässt sich mit einfarbigen Bikini-Hosen kombinieren, ohne zu konkurrieren.\u003cbr\u003e• Die Ärmel wirken im ersten Moment ungewohnt – nach einer Weile am Wasser fühlt sich der Schnitt natürlich an.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn dich das Muster anspricht und du einen etwas bedeckteren Bademoment magst – schau dir die verfügbaren Größen an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 83.0, \"hip_max\": 88.0, \"bust_min\": 81.0, \"bust_max\": 86.0}, {\"name\": \"M\", \"hip_min\": 88.0, \"hip_max\": 93.0, \"bust_min\": 86.0, \"bust_max\": 91.0}, {\"name\": \"L\", \"hip_min\": 93.0, \"hip_max\": 98.0, \"bust_min\": 91.0, \"bust_max\": 96.0}, {\"name\": \"XL\", \"hip_min\": 98.0, \"hip_max\": 103.0, \"bust_min\": 96.0, \"bust_max\": 101.0}, {\"name\": \"2XL\", \"hip_min\": 103.0, \"hip_max\": 108.0, \"bust_min\": 101.0, \"bust_max\": 106.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl nach Brust-, Bauch- und Hüftmaß\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Langarm Bikini Blumenmuster Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Bademode mehr bedecken soll, ohne den Sommer zu verstecken\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eLangarm und florale Muster – zwei Dinge, die zusammenpassen können, wenn der Schnitt stimmt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eBikini-Oberteil sitzt am Nachmittag anders als morgens\u003c\/li\u003e\n\u003cli\u003eBlumenmuster wirkt schnell lauter als gedacht\u003c\/li\u003e\n\u003cli\u003eLangarm bei Bademode fühlt sich ungewohnt an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManche Tage am See sind zu kühl für ein klassisches Trägeroberteil – aber zu schön, um nicht ins Wasser zu gehen. In diesen Momenten entscheidet die Wahl der Bademode, ob man sich wohlfühlt oder ständig daran denkt. Ein Langarm-Bikini ist eine Option, die diesen Zwischenraum ausfüllen kann.\u003c\/p\u003e\n\u003cp\u003eDer 22 %-Elasthan-Anteil im Stoff (78 % Polyamid) sorgt dafür, dass der Schnitt in der Regel flexibel genug mitgeht – beim Schwimmen, beim Hinsetzen auf dem Steg, beim Aufstehen aus dem Wasser. Ob das für die eigene Körperform passt, ist individuell; deshalb lohnt es sich, die Maßtabelle vor dem Kauf zu nutzen.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini langarm Damen ist eher für Tage gedacht, an denen man entspannt am Wasser ist – nicht für intensives Wassersport-Training oder Situationen, bei denen Robustheit über Optik geht. Wer sehr schlichte Bademode ohne Muster bevorzugt oder pflegeleichtere Stücke sucht, die in den Trockner dürfen, findet hier möglicherweise nicht das Richtige. Wer aber einen femininen, etwas bedeckteren Look am See mag – und mit Feinwäsche bei 30 °C gut zurechtkommt – kann diesen Schnitt in Betracht ziehen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der floralen Look zu dem, was du am Wasser tragen möchtest – oder suchst du eher etwas Schlichteres?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Brust-, Bauch- und Hüftumfang ein, um die passende Größe zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du dir bei der Größe unsicher bist: Die verfügbaren Größen basieren auf Brust-, Bauch- und Hüftmaßen – ein kurzer Blick auf die Maßtabelle kann helfen, bevor du dich entscheidest.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Entspannte Badetage am See mit floralem Look\u003c\/li\u003e\n\u003cli\u003e→ Pool- oder Wellness-Besuche mit etwas mehr Bedeckung\u003c\/li\u003e\n\u003cli\u003e→ Sommerurlaub mit Bademode, die sich auch am Ufer gut trägt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Langärmeliger Schnitt – kann bei frischer Brise am Wasser angenehm sein\u003c\/li\u003e\n\u003cli\u003e✅ Florales Türkis-Muster – für einen femininen Sommerlook am See oder Pool\u003c\/li\u003e\n\u003cli\u003e✅ 22 % Elasthan – der Stoff passt sich in der Regel flexibel an\u003c\/li\u003e\n\u003cli\u003e✅ Klare Pflegehinweise: Feinwäsche 30 °C, kein Trockner\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ausgelegt für intensiven Wassersport oder sehr sportliche Belastung\u003c\/li\u003e\n\u003cli\u003e⚠️ Feinwäsche erforderlich – nicht für alle, die robustere Pflegeeigenschaften suchen\u003c\/li\u003e\n\u003cli\u003e⚠️ Langarm-Schnitt kann an sehr heißen Tagen wärmer wirken als klassische Tops\u003c\/li\u003e\n\u003cli\u003e⚠️ Florales Muster – weniger geeignet für alle, die schlichte, musterfreie Bademode bevorzugen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Langarm Bikini Blumenmuster Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eViele Bikinis sitzen nach dem Schwimmen locker und verlieren ihre Form\u003c\/td\u003e\n\u003ctd\u003eDer Elasthan-Anteil (22 %) kann dazu beitragen, dass der Schnitt bei normaler Belastung flexibel bleibt und sich wieder anpasst\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFlorale Prints wirken manchmal überladen oder zu bunt\u003c\/td\u003e\n\u003ctd\u003eDas Blumenmuster ist auf ruhigem Türkis gehalten – der Print bleibt lesbar, ohne dominant zu wirken\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFeine Bademode leidet schnell bei falscher Pflege\u003c\/td\u003e\n\u003ctd\u003eFeinwäsche bei 30 °C ohne Trockner ist klar angegeben – so lässt sich das Material schonend behandeln\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLangarm bei Bademode wirkt oft unausgewogen oder zu sportlich\u003c\/td\u003e\n\u003ctd\u003eDer florale Langarm-Schnitt kombiniert mehr Bedeckung mit einem femininen, saisonalen Look\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Langarm Bikini Blumenmuster Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Langarm Bikini Blumenmuster Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eLangarm Bikini Blumenmuster Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Langarm Bikini Blumenmuster Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen eignet sich ein Langarm Bikini mit Blumenmuster für See und Strand?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Schnitt passt eher zu entspannten Badetagen – beim Schwimmen, am Ufer oder am Pool. Wer intensive sportliche Aktivitäten im Wasser plant oder sehr robuste, pflegeleichte Bademode sucht, findet hier möglicherweise nicht das Passende. Das florale Muster spricht an, wenn man einen femininen, etwas bedeckteren Look bevorzugt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim Bikini langarm Damen mit Blumenmuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie Größen basieren auf Brust-, Bauch- und Hüftumfang. Am besten alle drei Maße messen und mit der Maßtabelle abgleichen. Bei Unsicherheit zwischen zwei Größen kann es helfen, die größere Option zu wählen – besonders wenn das Oberteil eng anliegend ist.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyamid und Elasthan richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C in der Feinwäsche waschen. Nicht im Trockner trocknen – das kann die Elastizität des Elasthans beeinträchtigen. Liegend oder hängend an der Luft trocknen lassen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWirkt Langarm bei Bademode nicht zu warm oder ungewohnt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas kann je nach Person und Situation unterschiedlich sein. Langarm-Bikinis sind eher für moderatere Temperaturen am Wasser oder für alle gedacht, die mehr Bedeckung mögen. An sehr heißen Tagen kann der Schnitt wärmer wirken als ein klassisches Trägertop – das ist ein Aspekt, den man vorher abwägen kann.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie kombiniere ich einen türkisen Blumen-Bikini für Damen am Bodensee?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer türkise Grundton lässt sich gut mit einfarbigen Bikini-Hosen in Weiß, Dunkelblau oder Sand kombinieren. Auch ein einfarbiger Pareo oder ein schlichtes Strandtuch in neutralen Tönen passt dazu, ohne mit dem Muster zu konkurrieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBleibt die Form des Bikinis nach dem Waschen erhalten?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBei regelmäßiger Pflege nach Anleitung – Feinwäsche 30 °C, kein Trockner – bleibt die Form in der Regel gut erhalten. Der Elasthan-Anteil kann dazu beitragen, dass der Stoff seine Elastizität behält. Wie lange das anhält, hängt auch von der Häufigkeit des Tragens und der Pflege ab.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-damen-finden-sie-den-perfekten-badeanzug-fur-den-sommer-2024\"\u003eBadeanzüge für Damen: Finden Sie den perfekten Badeanzug für den Sommer 2024\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/wie-man-den-perfekten-bikini-fur-seine-korperform-findet\"\u003eWie man den perfekten Bikini für seine Körperform findet\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Türkisblaues Blumenmuster mit Blättern – lebendig am Wasser, ruhig im Ton\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Langarm-Silhouette, die im flachen Wasser leicht mitschwingt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Langarm Bikini Blumenmuster Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eLangarm Bikini Blumenmuster Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€40.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Langarm Bikini Blumenmuster Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Langarm Bikini Blumenmuster Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1618450463531.jpg?v=1752906786\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"40.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Himmelblau \/ S","offer_id":45166153892108,"sku":"CJYJ108072001AZ","price":40.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":45166153859340,"sku":"CJYJ108072002BY","price":40.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ L","offer_id":45166153826572,"sku":"CJYJ108072003CX","price":40.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ XL","offer_id":45166153924876,"sku":"CJYJ108072004DW","price":40.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ 2XL","offer_id":45166153793804,"sku":"CJYJ108072005EV","price":40.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1618450463531.jpg?v=1752906786"},{"product_id":"badeanzug-damen-plus-grossen","title":"schwarzer Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Badeanzug aus, der den ganzen Tag sitzt – ohne dass man nachdenken muss?\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eBadeanzug Damen schwarz – schlicht geschnitten für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einfarbiges, klar geschnittenes Modell in Schwarz – ausgelegt für Tage, an denen man sich auf das Wesentliche konzentrieren möchte. Kein Muster, kein Aufsehen. Der Stoff aus 78 % Polyamid und 22 % Elasthan passt sich Bewegungen im Wasser an, ohne dass der Sitz verloren geht.\u003c\/p\u003e\n\u003cp\u003eSchwarze Bademode hat etwas Zeitloses – nicht weil Schwarz „immer geht\n\n    \u003c\/p\u003e\n\u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"waist_min\": 61.0, \"waist_max\": 63.0, \"hip_min\": 87.0, \"hip_max\": 90.0, \"bust_min\": 81.0, \"bust_max\": 84.0}, {\"name\": \"S\", \"waist_min\": 66.0, \"waist_max\": 68.0, \"hip_min\": 92.0, \"hip_max\": 95.0, \"bust_min\": 86.0, \"bust_max\": 89.0}, {\"name\": \"M\", \"waist_min\": 71.0, \"waist_max\": 73.0, \"hip_min\": 99.0, \"hip_max\": 105.0, \"bust_min\": 98.0, \"bust_max\": 100.0}, {\"name\": \"L\", \"waist_min\": 77.0, \"waist_max\": 81.0, \"hip_min\": 103.0, \"hip_max\": 109.0, \"bust_min\": 104.0, \"bust_max\": 108.0}, {\"name\": \"XL\", \"waist_min\": 85.0, \"waist_max\": 89.0, \"hip_min\": 107.0, \"hip_max\": 113.0, \"bust_min\": 111.0, \"bust_max\": 115.0}, {\"name\": \"2XL\", \"waist_min\": 99.0, \"waist_max\": 104.0, \"hip_min\": 111.0, \"hip_max\": 117.0, \"bust_min\": 122.0, \"bust_max\": 127.0}, {\"name\": \"3XL\", \"waist_min\": 109.0, \"waist_max\": 114.0, \"hip_min\": 115.0, \"hip_max\": 121.0, \"bust_min\": 132.0, \"bust_max\": 137.0}, {\"name\": \"4XL\", \"waist_min\": 119.0, \"waist_max\": 124.0, \"hip_min\": 119.0, \"hip_max\": 125.0, \"bust_min\": 142.0, \"bust_max\": 147.0}, {\"name\": \"5XL\", \"waist_min\": 129.0, \"waist_max\": 135.0, \"hip_min\": 123.0, \"hip_max\": 129.0, \"bust_min\": 152.0, \"bust_max\": 157.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: Schwarz (uni), kein Muster\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Wasser seinen Sitz verliert\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin Schnitt, der für Bewegung im Wasser ausgelegt ist – nicht dagegen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen und zieht sich schief\u003c\/li\u003e\n\u003cli\u003eDer Stoff fühlt sich nass unangenehm schwer an\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bademode lassen sich kaum einschätzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eMan ist gerade im Wasser unterwegs – ein paar Bahnen, ein Sprung vom Steg – und merkt dann: Der Stoff hat sich verschoben. Nicht dramatisch, aber spürbar. Man zieht nach, steigt aus dem Wasser, zieht nochmal nach. Das ist kein großes Problem, aber es kostet Aufmerksamkeit, die man lieber anderswo hätte.\u003c\/p\u003e\n\u003cp\u003eOft liegt das am Schnitt: Modelle, die für den optischen Eindruck beim Anprobieren optimiert sind, verhalten sich im Wasser anders als auf dem Trockenen. Der Stoff dehnt sich, der Sitz verschiebt sich, der Elasthananteil reagiert auf Bewegung anders als erwartet. Das ist kein Fehler einzelner Marken – es ist eine strukturelle Eigenschaft vieler günstiger Bademode.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Badeanzug für Damen ist auf stabilen Sitz bei Bewegung im Wasser ausgelegt – das bedeutet: Der Schnitt ist so gearbeitet, dass er Bewegungen mitgeht, ohne sich zu verziehen. Das Polyamid-Elasthan-Gewebe kann dazu beitragen, dass der Sitz auch nach mehreren Schwimmrunden ruhig bleibt. Kein Versprechen für jede Situation, aber ein Anhaltspunkt. Wenn du allerdings eher intensiven Leistungssport im Wasser oder tägliche Trainingseinheiten planst, sind spezialisierte Sportbadeanzüge mit technischer Ausrüstung möglicherweise passender.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Bewegungsfreiheit brauchst du – und wie wichtig ist dir dabei ein ruhiger Sitz?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte oder Brust ein, um eine Orientierung zu bekommen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du unsicher bist, kannst du ihn 30 Tage lang tragen und zurückschicken – kein Druck bei der Entscheidung.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Einfarbiges Schwarz wirkt auch nach mehreren Badetagen gleichmäßig\u003c\/li\u003e\n\u003cli\u003e→ Lässt sich mit Sarong, Strandrock oder Overshirt kombinieren\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Schlicht, einfarbig in Schwarz – ohne Muster oder Aufdruck, vielseitig kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Polyamid-Elasthan-Gewebe – ausgelegt für Bewegung im Wasser bei normaler Nutzung\u003c\/li\u003e\n\u003cli\u003e✅ Klare Pflegehinweise (Feinwäsche 30 °C) – kein aufwendiges Handling\u003c\/li\u003e\n\u003cli\u003e✅ Größenrechner nach Taille, Hüfte oder Brust – Orientierung vor dem Kauf\u003c\/li\u003e\n\u003cli\u003e✅ 30 Tage Rückgabe – Entscheidung ohne Druck\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Wer gemusterte oder farbenfrohe Bademode bevorzugt, findet hier keinen Print\u003c\/li\u003e\n\u003cli\u003e⚠️ Für tägliches intensives Leistungsschwimmen sind technische Sportbadeanzüge besser geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein integriertes Bügel- oder Verstärkungssystem für sehr große Cups – andere Modelle mit Büstenhalter-Funktion könnten besser passen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen und zieht sich schief\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Bewegung im Wasser ausgelegt – Schnitt und Elasthan-Anteil (22 %) arbeiten zusammen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nach dem Schwimmen schwer und klebend an\u003c\/td\u003e\n\u003ctd\u003e78 % Polyamid – das Material ist für Wasser-Kontakt ausgelegt und liegt bei normaler Nutzung ruhig am Körper\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode kaum einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner nach Taille, Hüfte oder Brust – plus 30 Tage Rückgabe als Sicherheitsnetz\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarbe verblasst nach kurzer Zeit durch Chlor oder Sonne\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Gewebe ist für regelmäßigen Wasser-Kontakt ausgelegt – bei pfleglicher Behandlung (Ausspülen, Feinwäsche) bleibt die Farbe in der Regel gleichmäßig\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der schwarze Badeanzug bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Schnitt ist auf stabilen Sitz bei Bewegung ausgelegt. Das Polyamid-Elasthan-Gewebe (78\/22) passt sich Bewegungen in der Regel gut an. Bei normaler Nutzung – Schwimmen, Sprünge, Gehen am Strand – bleibt der Sitz meist ruhig. Für tägliches intensives Leistungsschwimmen sind spezialisierte Sportmodelle möglicherweise die bessere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim schwarzen Badeanzug Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner – du kannst Taille, Hüfte oder Brust eingeben, um eine Orientierung zu bekommen. Bei Unsicherheit zwischen zwei Größen kann es helfen, die größere Variante zu wählen, damit der Stoff nicht zu stark spannt. Zusätzlich gibt es 30 Tage Rückgabe, falls die Größe nicht passt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, lauwarmem Wasser ausspülen. Dann Feinwäsche bei 30 °C – am besten auf links gewaschen, damit das Material geschont wird. Nicht im Trockner trocknen, sondern an der Luft flach liegend.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der schlichter schwarzer Badeanzug auch für den Urlaub am Meer geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, das Modell ist für Strand und Pool gleichermaßen ausgelegt. Für Urlaub am Meer empfiehlt es sich, den Badeanzug nach jedem Tragen mit klarem Wasser auszuspülen, um Salz- und Sonnencreme-Rückstände zu entfernen und die Materialqualität länger zu erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWas unterscheidet diesen Badeanzug von günstigeren Modellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Hauptunterschied liegt im Schnitt und im Elasthan-Anteil (22 %). Viele günstigere Modelle dehnen sich im Wasser stärker aus, was den Sitz beeinflusst. Dieser Badeanzug ist auf stabilen Sitz bei Bewegung ausgelegt – das ist ein Anhaltspunkt, kein absolutes Versprechen für jede Situation.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich den klassischen schwarzen Badeanzug auch als Badeanzug-Oberteil unter einem Sarong tragen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas einfarbige, schlichte Design in Schwarz lässt sich gut mit Sarong, Strandrock oder Overshirt kombinieren. Durch das uni-Design ohne Muster fügt er sich in die meisten Strand-Outfits ein.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Klare Silhouette im Wasser – kein Muster, das sich verzieht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer Stoff, der auf der Liegewiese und im Wasser gleich wirkt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€49.98\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1284031848870.png?v=1752328252\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"49.98\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ 3XL","offer_id":45166174175500,"sku":"CJNSSYQQ00667-Black-3XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ L","offer_id":45166174208268,"sku":"CJNSSYQQ00667-Black-L","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":45166174241036,"sku":"CJNSSYQQ00667-Black-M","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":45166174273804,"sku":"CJNSSYQQ00667-Black-S","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XL","offer_id":45166174306572,"sku":"CJNSSYQQ00667-Black-XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XXL","offer_id":45166174339340,"sku":"CJNSSYQQ00667-Black-XXL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ 3XL","offer_id":45166174372108,"sku":"CJNSSYQQ00667-Blue print-3XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ L","offer_id":45166174404876,"sku":"CJNSSYQQ00667-Blue print-L","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ M","offer_id":45166174437644,"sku":"CJNSSYQQ00667-Blue print-M","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ S","offer_id":45166174470412,"sku":"CJNSSYQQ00667-Blue print-S","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ XL","offer_id":45166174503180,"sku":"CJNSSYQQ00667-Blue print-XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Blau\u0026Blumen \/ XXL","offer_id":45166174535948,"sku":"CJNSSYQQ00667-Blue print-XXL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ 3XL","offer_id":45166174568716,"sku":"CJNSSYQQ00667-Blue-3XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ L","offer_id":45166174601484,"sku":"CJNSSYQQ00667-Blue-L","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ M","offer_id":45166174634252,"sku":"CJNSSYQQ00667-Blue-M","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ S","offer_id":45166174667020,"sku":"CJNSSYQQ00667-Blue-S","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ XL","offer_id":45166174699788,"sku":"CJNSSYQQ00667-Blue-XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Marineblau \/ XXL","offer_id":45166174732556,"sku":"CJNSSYQQ00667-Blue-XXL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ 3XL","offer_id":45166174765324,"sku":"CJNSSYQQ00667-Lake blue-3XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ L","offer_id":45166174798092,"sku":"CJNSSYQQ00667-Lake blue-L","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":45166174830860,"sku":"CJNSSYQQ00667-Lake blue-M","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ S","offer_id":45166174863628,"sku":"CJNSSYQQ00667-Lake blue-S","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ XL","offer_id":45166174896396,"sku":"CJNSSYQQ00667-Lake blue-XL","price":49.98,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ XXL","offer_id":45166174929164,"sku":"CJNSSYQQ00667-Lake blue-XXL","price":49.98,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1284031848870.png?v=1752328252"},{"product_id":"badeanzug-damen-freier-rucken-mit-shape-effekt","title":"schwarzer Badeanzug Mesh Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n\u003cdiv class=\"bn-problem-hook\"\u003e\n\u003cp\u003eWas macht einen Badeanzug aus, der den ganzen Tag sitzt – auch nach dem Schwimmen?\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Einteiler einfach bleibt wo er ist – ohne Nachziehen, ohne Nachdenken.\u003c\/p\u003e\n\u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim Anziehen, sondern erst beim dritten Mal ins Wasser gehen.\u003c\/p\u003e\n\u003ch2\u003eSchwarzer Badeanzug Mesh Damen – Einteiler mit Mesh-Einsätzen für See und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003eEin Einteiler mit feinen Mesh-Einsätzen – ausgelegt für einen sicheren Sitz bei Bewegung im Wasser, schwarzes Design mit ruhiger, klarer Wirkung, Stoff aus 78 % Polyamid und 22 % Elasthan.\u003c\/p\u003e\n\u003cp\u003eDer schwarze Badeanzug mit Mesh Damen-Schnitt folgt einer schlichten Idee: wenig Aufwand, klare Linie. Die Mesh-Einsätze setzen einen dezenten visuellen Akzent – kein aufgedrucktes Motiv, kein Muster, das ablenkt. Was bleibt, ist eine reduzierte Silhouette, die sich am Bodenseeufer genauso ruhig trägt wie an einem Urlaubspool in Südfrankreich.\u003c\/p\u003e\n\u003cp\u003eDas Schwarz wirkt auch nass klar – kein Verblassen im ersten Licht, kein Auflösen der Kontur. Die Mesh-Partien geben dem Stück eine leichte Struktur, ohne dass das Design unruhig wird. Wer schlichte Bademode mag, die trotzdem eine eigene Note hat, findet hier einen Einteiler, der zu wenig passt – zur weißen Handtuchkante, zum Strohhut, zum Kaffeebecher auf der Liege.\u003c\/p\u003e\n\u003cp\u003eAm Morgen, wenn das Wasser noch kalt ist und man vorsichtig die Treppe hinuntergeht. Am Mittag, wenn man vom Schwimmen zur Liege wechselt und kurz stehen bleibt. Am Abend, wenn man noch eine Runde dreht und der Tag sich lang angefühlt hat – in all diesen Momenten bleibt das Design im Hintergrund. Es ist da, ohne sich aufzudrängen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Blick fällt auf die ruhige Linie der Mesh-Einsätze – nicht auf Kanten oder Muster\u003cbr\u003e• Das Schwarz behält seine Tiefe, auch wenn der Stoff nass ist\u003cbr\u003e• Der Einteiler wirkt an verschiedenen Orten ähnlich – See, Pool, Strand\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du Größe und Schnitt einschätzen möchtest, hilft dir der Größenrechner weiter.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cdiv class=\"bn-size-calculator\"\u003e\n\u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n\u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\u003cdiv id=\"bn-calc-form-badeanzug\" class=\"bn-calc-form\"\u003e\n\u003cdiv class=\"bn-calc-field\"\u003e\n\u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e \u003cinput placeholder=\"z.B. 175\" name=\"bn_height\" id=\"bn_height\" type=\"number\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-calc-field\"\u003e\n\u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e \u003cinput placeholder=\"z.B. 70\" name=\"bn_weight\" id=\"bn_weight\" type=\"number\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-calc-field\"\u003e\n\u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e \u003cinput placeholder=\"z.B. 90\" name=\"bn_bust\" id=\"bn_bust\" type=\"number\"\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"bn-calc-button\" type=\"button\"\u003eGröße berechnen\u003c\/button\u003e\n\u003cdiv class=\"bn-calc-result\" id=\"bn-calc-result\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\u003cdiv class=\"bn-product-copy\"\u003e\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"height_min\": 148, \"height_max\": 158, \"weight_min\": 42, \"weight_max\": 52}, {\"name\": \"S\", \"height_min\": 153, \"height_max\": 163, \"weight_min\": 50, \"weight_max\": 60}, {\"name\": \"M\", \"height_min\": 158, \"height_max\": 168, \"weight_min\": 58, \"weight_max\": 68}, {\"name\": \"L\", \"height_min\": 163, \"height_max\": 173, \"weight_min\": 66, \"weight_max\": 76}, {\"name\": \"XL\", \"height_min\": 168, \"height_max\": 178, \"weight_min\": 74, \"weight_max\": 84}, {\"name\": \"2XL\", \"height_min\": 173, \"height_max\": 183, \"weight_min\": 82, \"weight_max\": 92}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\u003cdiv class=\"bn-quick-benefits\"\u003e\n\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Design: Schwarz mit Mesh-Einsätzen, kein Motiv\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Badeanzug Mesh Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n\u003cdiv class=\"bn-comfort\"\u003e\n\u003ch2\u003eWenn ein Badeanzug im Wasser seinen Platz nicht hält\u003c\/h2\u003e\n\u003cp class=\"bn-subheadline\"\u003eSchnitt und Material können dazu beitragen, dass weniger nachgezogen werden muss.\u003c\/p\u003e\n\u003cdiv class=\"bn-questions\"\u003e\n\u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDer Badeanzug verschiebt sich beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eDas Gefühl nass auf der Haut bleibt länger als angenehm\u003c\/li\u003e\n\u003cli\u003eDie richtige Größe online einzuschätzen fällt schwer\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cp\u003eDu springst ins Wasser, schwimmst ein paar Bahnen – und beim Heraussteigen merkst du, dass du nachziehen musst. Schulterträger, Ausschnitt, Rücken. Das passiert öfter als nötig, und es kostet Aufmerksamkeit, die man lieber woanders hätte.\u003c\/p\u003e\n\u003cp\u003eEin häufiger Grund: Der Schnitt ist nicht auf Bewegung im Wasser ausgelegt. Stoff, der trocken gut sitzt, kann nass anders reagieren – er gibt nach, wandert, verliert seine Form. Das ist kein Einzelfall, sondern ein bekanntes Muster bei vielen Einteilermodellen.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Badeanzug mit Mesh-Einsätzen ist auf einen stabilen Sitz bei Bewegung ausgelegt – das Polyamid-Elasthan-Gewebe passt sich an, ohne wegzurutschen. Die Mesh-Partien sind so eingearbeitet, dass sie die Form unterstützen. Wenn du allerdings einen Badeanzug mit starken Strukturelementen oder Bügel-Support suchst, ist dieser Schnitt vielleicht nicht das Richtige – er ist eher für ruhigeres Schwimmen und alltägliche Badeausflüge gedacht, weniger für intensives Leistungsschwimmen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das zu dem, wie du Bademode nutzt – eher entspannt, mit gelegentlichen Schwimmrunden?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Bauch-, Hüft- und Brustmaß ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du dir unsicher bist: 30 Tage Rückgabe, klare Pflegehinweise, transparente Materialangaben.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Schlichte Mesh-Optik, die zu verschiedenen Urlaubsorten passt\u003c\/li\u003e\n\u003cli\u003e→ Nach dem Urlaub mit richtiger Pflege noch wie zu Beginn\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Schnitt auf stabilen Sitz bei Bewegung im Wasser ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Reduziertes schwarzes Design mit Mesh-Einsätzen – kein Muster, klare Linie\u003c\/li\u003e\n\u003cli\u003e✅ Elastisches Polyamid-Elasthan-Gewebe bei normaler Belastung formstabil\u003c\/li\u003e\n\u003cli\u003e✅ Größenrechner nach Bauch-, Hüft- und Brustmaß verfügbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensives, tägliches Leistungsschwimmen weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine ausgeprägte Shaping-Funktion mit gezielter Bütze oder Bügel-Support\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer lebhafte Muster oder Farben bevorzugt, findet hier ein sehr ruhiges Design\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\n\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Badeanzug Mesh Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen und Heraussteigen\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Bewegung im Wasser ausgelegt – Elasthan-Anteil passt sich an\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm an und klebt auf der Haut\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Gewebe – in der Regel angenehmes Tragegefühl auch im feuchten Zustand\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner nach Bauch-, Hüft- und Brustmaß sowie 30 Tage Rückgabe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDesign wirkt nach wenigen Schwimmeinheiten abgenutzt\u003c\/td\u003e\n\u003ctd\u003eSchwarzes Polyamid-Gewebe behält bei pfleglicher Behandlung seine Farbe – Pflegehinweis: Feinwäsche 30 °C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Badeanzug Mesh Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\u003cdiv class=\"bn-lupe\"\u003e\n\u003ch3\u003eSo fühlt sich schwarzer Badeanzug Mesh Damen im Alltag an\u003c\/h3\u003e\n\u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n\u003cdiv class=\"bn-lupe-item\"\u003e\n\u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-content\"\u003e\n\u003ch4\u003eIm Wasser\u003c\/h4\u003e\n\u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-item\"\u003e\n\u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-content\"\u003e\n\u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n\u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-item\"\u003e\n\u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-content\"\u003e\n\u003ch4\u003eAm Strand\u003c\/h4\u003e\n\u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-item\"\u003e\n\u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n\u003cdiv class=\"bn-lupe-content\"\u003e\n\u003ch4\u003ePflege\u003c\/h4\u003e\n\u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-material\"\u003e\n\u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n\u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-target\"\u003e\n\u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-specs\"\u003e\n\u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/FAQPage\" itemscope=\"\" class=\"bn-faq\"\u003e\n\u003ch3\u003eHäufig gestellte Fragen zu schwarzer Badeanzug Mesh Damen\u003c\/h3\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e\n\u003ch4 itemprop=\"name\"\u003eWie sitzt der schwarze Badeanzug mit Mesh-Einsätzen bei Bewegung im Wasser?\u003c\/h4\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e\n\u003cp itemprop=\"text\"\u003eDer Schnitt ist auf einen stabilen Sitz bei normaler Bewegung im Wasser ausgelegt. Das Polyamid-Elasthan-Gewebe passt sich an und bleibt bei gemäßigten Schwimmeinheiten in der Regel ruhig sitzen. Für intensives Leistungsschwimmen täglich ist er weniger konzipiert.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e\n\u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen formenden schwarzen Badeanzug?\u003c\/h4\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e\n\u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner und gib dein Bauch-, Hüft- und Brustmaß ein – das sind die drei relevanten Maße für diesen Schnitt. Bei Unsicherheit zwischen zwei Größen kann es helfen, die größere zu wählen, damit der Sitz angenehm bleibt.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e\n\u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Tragen?\u003c\/h4\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e\n\u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – Luft trocknen schont das Material und die Form des Einteilers.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e\n\u003ch4 itemprop=\"name\"\u003eIst dieser schwarze Einteiler mit Mesh für Damen auch als formender Badeanzug geeignet?\u003c\/h4\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e\n\u003cp itemprop=\"text\"\u003eDer Schnitt und das elastische Gewebe können eine leicht formende Wirkung haben – das variiert je nach Körperform und gewählter Größe. Wer eine ausgeprägte Shaping-Wirkung mit gezielter Bauchkontrolle sucht, sollte die genauen Maße mit dem Größenrechner abgleichen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e\n\u003ch4 itemprop=\"name\"\u003eSind Rückgaben möglich?\u003c\/h4\u003e\n\u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e\n\u003cp itemprop=\"text\"\u003eJa, innerhalb von 30 Tagen nach Erhalt kannst du den Badeanzug zurückgeben, sofern er ungetragen und im Originalzustand ist. Alle Details dazu findest du in den Rückgabebedingungen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-related-articles\"\u003e\n\u003ch3\u003eRatgeber\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cspan style=\"display: none;\" data-visual-intent=\"Schwarze Mesh-Einsätze im klaren Kontrast zum glatten Hauptstoff\" class=\"bn-visual-anchor\"\u003e\u003c\/span\u003e\u003cspan style=\"display: none;\" data-visual-intent=\"Ruhige Silhouette beim Heraussteigen aus dem Wasser\" class=\"bn-visual-anchor\"\u003e\u003c\/span\u003e\n\u003cdetails class=\"bn-ship\"\u003e\n\u003csummary\u003eLieferung\u003c\/summary\u003e\n\u003cdiv\u003e\n\u003cdiv class=\"bn-shipping-info\"\u003e\n\u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n\u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n\u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003eWir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n\u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Badeanzug Mesh Damen eine passende Option sein.\u003c\/p\u003e\n\u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Badeanzug Mesh Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€35.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton class=\"bn-cta-button\" type=\"button\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\n\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"bn-closing-note\"\u003e\n\u003cp\u003eAm Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. Wir hoffen, dass schwarzer Badeanzug Mesh Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\u003c\/p\u003e\n\u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\u003ca style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\" href=\"\/pages\/uber-uns\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ XS","offer_id":45166195704076,"sku":"CJYDYYYJ00373-Black-XS","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":45166195638540,"sku":"CJYDYYYJ00373-Black-S","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":45166195605772,"sku":"CJYDYYYJ00373-Black-M","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ L","offer_id":45166195573004,"sku":"CJYDYYYJ00373-Black-L","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XL","offer_id":45166195671308,"sku":"CJYDYYYJ00373-Black-XL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XXL","offer_id":45166195736844,"sku":"CJYDYYYJ00373-Black-XXL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ XS","offer_id":45166195900684,"sku":"CJYDYYYJ00373-Blue-XS","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ S","offer_id":45166195835148,"sku":"CJYDYYYJ00373-Blue-S","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ M","offer_id":45166195802380,"sku":"CJYDYYYJ00373-Blue-M","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ L","offer_id":45166195769612,"sku":"CJYDYYYJ00373-Blue-L","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ XL","offer_id":45166195867916,"sku":"CJYDYYYJ00373-Blue-XL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Ozeanblau \/ XXL","offer_id":45166195933452,"sku":"CJYDYYYJ00373-Blue-XXL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ XS","offer_id":45166196097292,"sku":"CJYDYYYJ00373-Wave point-XS","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ S","offer_id":45166196031756,"sku":"CJYDYYYJ00373-Wave point-S","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ M","offer_id":45166195998988,"sku":"CJYDYYYJ00373-Wave point-M","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ L","offer_id":45166195966220,"sku":"CJYDYYYJ00373-Wave point-L","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ XL","offer_id":45166196064524,"sku":"CJYDYYYJ00373-Wave point-XL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Gepunktet \/ XXL","offer_id":45166196130060,"sku":"CJYDYYYJ00373-Wave point-XXL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XS","offer_id":45166196293900,"sku":"CJYDYYYJ00373-Wine red-XS","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ S","offer_id":45166196228364,"sku":"CJYDYYYJ00373-Wine red-S","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ M","offer_id":45166196195596,"sku":"CJYDYYYJ00373-Wine red-M","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ L","offer_id":45166196162828,"sku":"CJYDYYYJ00373-Wine red-L","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XL","offer_id":45166196261132,"sku":"CJYDYYYJ00373-Wine red-XL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Kirschrot \/ XXL","offer_id":45166196326668,"sku":"CJYDYYYJ00373-Wine red-XXL","price":35.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0012.png?v=1751900233"},{"product_id":"badeanzug-damen-kontrast","title":"Badeanzug Damen Colorblock","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der im Wasser ruhig sitzt – und danach genauso aussieht?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Badeanzug einfach passt – ohne Nachziehen, ohne Nachdenken.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau das merken viele erst im Laufe des Badetages – nicht beim Anprobieren, sondern wenn man sich wirklich bewegt.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen Farbblock mit Streifen – für See, Schwimmbad und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Schnitt für Bewegung im Wasser – das Colorblock-Design mit Streifen wirkt klar und zurückhaltend, der Stoff (78 % Polyamid, 22 % Elasthan) liegt eng an, ohne zu drücken.\u003c\/p\u003e\n\u003cp\u003eDas Farbblock-Muster teilt die Silhouette in ruhige Flächen auf – klare Linien, kein Aufdruck, keine laute Farbe. Dieser Badeanzug Damen Farbblock folgt einer Ästhetik, die man eher am Bodenseeufer erwartet als im Modekatalog: unaufgeregt, aber nicht beliebig. Die Streifen setzen einen Akzent, ohne zu dominieren – sie geben Struktur, wo andere Modelle einfach einfarbig bleiben.\u003c\/p\u003e\n\u003cp\u003eDu gehst vom Ufer ins Wasser – der Badeanzug bleibt, wo er sein soll. Du lehnst danach an der Kaimauer, das Licht fällt schräg, und der Schnitt wirkt genauso ruhig wie die Szene darum. Kombiniert mit einem Leinenshirt und Sandalen ist er auch vom Wasser zur Eisdiele tragbar, ohne dass man noch einmal nachdenken müsste. Das Colorblock-Design mit Streifen passt in eine Umgebung, die keine große Geste braucht.\u003c\/p\u003e\n\u003cp\u003eAls Mitbringsel oder bewusster Kauf für sich selbst: Dieser Badeanzug drückt etwas aus, das schwer in Worte zu fassen ist – eine ruhige Entscheidung. Nicht das lauteste Modell am Strand, aber eines, das nach einem langen Sommertag noch genauso sitzt wie am Morgen. Für alle, die das zu schätzen wissen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff liegt eng an, ohne einzuschneiden – auch nach einer Stunde im Wasser.\u003cbr\u003e• Das Colorblock-Muster wirkt am See genauso angemessen wie am Hotelpool.\u003cbr\u003e• Der Schnitt macht wenig her, bis man sich bewegt – dann merkt man, dass er mitgeht.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle jetzt deine Größe – der Größenrechner hilft dir dabei.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"length_min\": 68.0, \"length_max\": 74.0, \"hip_min\": 75.0, \"hip_max\": 81.0, \"bust_min\": 73.0, \"bust_max\": 79.0}, {\"name\": \"M\", \"length_min\": 70.0, \"length_max\": 76.0, \"hip_min\": 79.0, \"hip_max\": 85.0, \"bust_min\": 77.0, \"bust_max\": 83.0}, {\"name\": \"L\", \"length_min\": 72.0, \"length_max\": 78.0, \"hip_min\": 84.0, \"hip_max\": 90.0, \"bust_min\": 82.0, \"bust_max\": 88.0}, {\"name\": \"XL\", \"length_min\": 74.0, \"length_max\": 80.0, \"hip_min\": 89.0, \"hip_max\": 95.0, \"bust_min\": 87.0, \"bust_max\": 93.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Design: Colorblock mit Streifen, einteilig\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Badeanzug Damen Colorblock sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn der Badeanzug im Wasser nicht ruhig bleibt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSchnitt und Material können einen Unterschied machen – je nachdem, wie und wo du schwimmst.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bademode oft schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eDer Stoff fühlt sich nass unangenehm an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu stößt dich vom Beckenrand ab, tauchst ein – und merkst nach ein paar Zügen, dass du nachziehen musst. Am Bodenseeufer aufstehen, zur Liege gehen: Das gleiche Spiel. Manche Badeanzüge sind schlicht nicht für Bewegung im Wasser ausgelegt, obwohl sie danach aussehen.\u003c\/p\u003e\n\u003cp\u003eDas liegt oft am Schnitt – oder am Material, das unter Zug und Wasser anders reagiert als beim Anprobieren im Laden. Ein Stoff mit ausreichend Elasthan-Anteil und ein auf Bewegung abgestimmter Schnitt können dazu beitragen, dass der Badeanzug auch nach mehreren Bahnen noch ruhig sitzt. Kein Versprechen – aber ein Anhaltspunkt, worauf es ankommt.\u003c\/p\u003e\n\u003cp\u003eDieser Badeanzug im Colorblock-Design ist auf genau diese Situation ausgelegt: Bewegung im Wasser, dann trocken auf der Liege, dann vielleicht noch ein Spaziergang am Ufer. Wenn du eher sehr intensive tägliche Schwimmeinheiten oder Leistungssport im Wasser planst, ist ein technisch optimierter Wettkampfbadeanzug vermutlich die passendere Wahl. Für alles dazwischen – Urlaub, See, Schwimmbad, entspannte Runden – kann dieses Modell gut passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das, was du dir vorstellst, zu dem, was dieser Badeanzug bieten kann?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe – falls er sich doch anders anfühlt als gedacht.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Colorblock-Design wirkt auch nach einem langen Badetag noch ordentlich\u003c\/li\u003e\n\u003cli\u003e→ Klare Pflegehinweise – nach dem Urlaub noch wie zu Beginn\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Colorblock-Design mit Streifen – ruhige Optik, kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – bei normaler Belastung bewegungsfreundlich\u003c\/li\u003e\n\u003cli\u003e✅ Einteilig – kein Nachziehen zwischen verschiedenen Teilen\u003c\/li\u003e\n\u003cli\u003e✅ Klare Pflegehinweise – Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven täglichen Schwimmsport eher nicht ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer kräftige Muster oder Prints bevorzugt, findet hier ein zurückhaltendes Design\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine technischen Wettkampf-Features wie Racing-Back oder Kompressionsschnitt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Badeanzug Damen Colorblock\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen und Bewegen\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Bewegung im Wasser ausgelegt – Elasthan-Anteil ermöglicht Flexibilität ohne Verrutschen bei normaler Belastung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Eingabe von Bauch-, Hüft-, Brust- und Längenmaß – plus 30 Tage Rückgabe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm an oder klebt auf der Haut\u003c\/td\u003e\n\u003ctd\u003e78 % Polyamid liegt auch nass nah am Körper, ohne schwer zu werden – Pflegehinweise beachten für längere Materialfreude\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Badeanzug Damen Colorblock mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Badeanzug Damen Colorblock im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Badeanzug Damen Colorblock\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Badeanzug bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Schnitt ist auf Bewegung im Wasser ausgelegt – 22 % Elasthan-Anteil sorgen für Flexibilität. Bei normaler Belastung wie Schwimmen, Gehen am Strand oder Sprüngen ins Wasser bleibt er in der Regel ruhig sitzen. Für sehr intensive tägliche Schwimmeinheiten oder Wettkampfsport ist ein technisch spezialisiertes Modell vermutlich besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen Badeanzug Damen Colorblock?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBadeanzuggrößen können je nach Schnitt und Körperproportion variieren. Nutze unseren Größenrechner und gib Länge Badeanzug, Bauch-, Hüft- und Brustmaß ein – so bekommst du eine konkrete Empfehlung. Bei Unsicherheit gilt: Badeanzüge sitzen in der Regel eng, dehnen sich aber etwas im Wasser. Wir bieten 30 Tage Rückgabe, falls die Größe nicht passt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, um Chlor oder Salz zu entfernen. Anschließend bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das schont das Material und die Passform langfristig.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser einteilige Badeanzug Damen Colorblock auch für Strand und See geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – das Colorblock-Design mit Streifen ist für verschiedene Situationen ausgelegt: Schwimmbad, Badesee, Strand oder Urlaub am Pool. Der Schnitt ist so gewählt, dass er auch beim Laufen am Ufer oder auf der Liege angenehm sitzt, nicht nur beim Schwimmen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelche Maße brauche ich für die Größenauswahl?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür diesen Badeanzug sind folgende Maße relevant: Länge Badeanzug (Schulter bis Schritt), Bauch-, Hüft- und Brustumfang. Alle vier Maße kannst du in unseren Größenrechner eingeben – so bekommst du eine Empfehlung, die auf deinen Körper abgestimmt ist.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Badeanzug weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWenn du täglich intensive Schwimmeinheiten absolvierst oder im Wettkampfbereich schwimmst, ist ein technisch optimierter Sportbadeanzug vermutlich die passendere Wahl. Dieser Badeanzug ist eher für entspannte Badetage, Urlaub und gelegentliche Bahnen im See oder Schwimmbad konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Klare Farbblöcke und Streifen – deutlich sichtbar beim Blick von oben auf das Wasser\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Ruhige Silhouette am Bodenseeufer – Badeanzug und Umgebung ergänzen sich\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Badeanzug Damen Colorblock eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBadeanzug Damen Colorblock\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Badeanzug Damen Colorblock dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Badeanzug Damen Colorblock\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0043.png?v=1750427574\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Schwarzweiß \/ L","offer_id":45279843287308,"sku":"CJNT198985403CX","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarzweiß \/ M","offer_id":45279843320076,"sku":"CJNT198985402BY","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarzweiß \/ S","offer_id":45279843352844,"sku":"CJNT198985401AZ","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarzweiß \/ XL","offer_id":45279843385612,"sku":"CJNT198985404DW","price":29.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0043.png?v=1750427574"},{"product_id":"badeanzug-damen-mit-kurzer-hose","title":"Giraffenmuster Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der beim Schwimmen einfach ruhig sitzt – und gut aussieht?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses angenehme Gefühl, wenn ein Badeanzug den ganzen Tag sitzt, ohne dass man zweimal daran denkt.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied erst nach ein paar Stunden – wenn nichts verrutscht ist und man einfach im Wasser war.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen Giraffenmuster – sportlicher Einteiler für See, Pool und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nSportlich-schlichter Schnitt für Bewegung im Wasser – das Giraffenmuster auf einer Seite, die andere Seite einfarbig, ein ruhiges Schwarz-Weiß, das nicht auffällt, aber auffällt.\u003c\/p\u003e\n\u003cp\u003eDas Giraffenmuster ist kein lautes Statement. Es ist das dezente Detail, das man erst beim zweiten Blick entdeckt – am Bodenseeufer, wenn das Licht flach auf das Wasser fällt und jemand aus dem See steigt. Schwarz-weiß, klar gezeichnet, mit einer Struktur, die von Natur inspiriert ist, ohne sie zu kopieren. Wer lieber keine Prints trägt, für den ist dieser Badeanzug möglicherweise nicht die erste Wahl – das Muster ist da, und es bleibt.\u003c\/p\u003e\n\u003cp\u003eDie Kombination aus gemusterter und einfarbiger Seite gibt dem Schnitt eine ruhige Spannung. Kein Muster von Kopf bis Fuß, kein komplett glatter Look – sondern ein bewusstes Spiel zwischen beiden. Dazu ein sportlicher Körper, der sich für Bewegung eignet, ohne ausschließlich nach Sport auszusehen. Am Pool, auf dem Weg zur Liege, beim Sprung ins kühle Wasser – das Design macht in all diesen Momenten mit, ohne zu dominieren. Die Schwarz-Weiß-Palette lässt sich mit fast allem kombinieren: einem schlichten Leinenpareo, einem weißen Strandtuch, dunklen Sandalen.\u003c\/p\u003e\n\u003cp\u003eOb Sommerurlaub am See, spontaner Nachmittag am Freibad oder die erste Runde im Wasser nach der Arbeit – dieser Giraffen-Print-Badeanzug für Damen ist auf Situationen ausgelegt, in denen man einfach ins Wasser will. Kein Styling-Aufwand, kein Nachziehen. Das Design ist unaufdringlich genug, um täglich getragen zu werden, und präsent genug, um nicht beliebig zu wirken.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst ihn an und der Blick fällt auf das Muster – ruhig, klar, mit einem leisen Lächeln.\u003cbr\u003e\n• Beim Gehen am Strand oder Ufer bleibt das Design im Hintergrund – du trägst es, es trägt sich nicht auf.\u003cbr\u003e\n• Als Geschenk sagt dieser Badeanzug: jemand hat genau hingeschaut, was zu dir passt – nicht das Lauteste, sondern das Stimmige.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSchau dir die verfügbaren Größen an und prüf, ob der Schnitt zu dir passt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"waist_min\": 66.0, \"waist_max\": 69.0, \"hip_min\": 93.0, \"hip_max\": 95.0, \"bust_min\": 86.0, \"bust_max\": 89.0}, {\"name\": \"M\", \"waist_min\": 71.0, \"waist_max\": 74.0, \"hip_min\": 98.0, \"hip_max\": 100.0, \"bust_min\": 91.0, \"bust_max\": 94.0}, {\"name\": \"L\", \"waist_min\": 77.0, \"waist_max\": 81.0, \"hip_min\": 100.0, \"hip_max\": 104.0, \"bust_min\": 98.0, \"bust_max\": 101.0}, {\"name\": \"XL\", \"waist_min\": 84.0, \"waist_max\": 89.0, \"hip_min\": 111.0, \"hip_max\": 115.0, \"bust_min\": 101.0, \"bust_max\": 109.0}, {\"name\": \"2XL\", \"waist_min\": 91.0, \"waist_max\": 97.0, \"hip_min\": 120.0, \"hip_max\": 126.0, \"bust_min\": 111.0, \"bust_max\": 117.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e✔ Design: Giraffenmuster einseitig, andere Seite einfarbig – sportlicher Körperschnitt\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Giraffenmuster Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Wasser nicht ruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSchnitt und Material können einen Unterschied machen – das lässt sich einschätzen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen ständig\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bademode sind schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eNach ein paar Wochen sieht der Stoff schon ausgeleiert aus\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eMan kennt das: Man ist im Wasser, macht ein paar Züge – und merkt plötzlich, dass man nachziehen muss. Träger, Ausschnitt, Sitz. Das unterbricht den Moment. Nicht dramatisch, aber spürbar. Gerade bei einem Badeanzug, den man the ganzen Tag tragen möchte, vom ersten Sprung bis zum Trocknen auf der Liege.\u003c\/p\u003e\n\u003cp\u003eOft liegt es am Schnitt. Bademode, die nicht auf Bewegung im Wasser ausgelegt ist, verhält sich anders als im Stand. Das Material dehnt sich, der Sitz verschiebt sich. Dieser Badeanzug Damen Giraffenmuster ist auf stabilen Sitz bei Bewegung im Wasser ausgelegt – durch den sportlichen Körperschnitt und das elastische Polyamid-Elasthan-Gewebe, das sich an Bewegungen anpasst, ohne nachzugeben. Für sehr intensive Schwimmeinheiten täglich oder Leistungssport im Wasser ist er allerdings nicht konzipiert – das sollte man wissen.\u003c\/p\u003e\n\u003cp\u003eWenn du einen Badeanzug suchst, der beim Schwimmen, Gehen am Strand und auf der Liege gleichermaßen funktioniert – und dabei nicht zu sportlich-technisch aussieht – kann dieser Schnitt eine passende Option sein. Wer hingegen einen minimalistischen Badeanzug ohne jedes Muster bevorzugt, ist mit dem einfarbigen Modell aus unserem Sortiment möglicherweise besser beraten.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eTrägst du deinen Badeanzug eher für ruhige Badetage oder für aktive Stunden im Wasser?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Taille, Hüfte und Brust ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe, falls der Sitz oder das Design nicht stimmt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Dezentes Schwarz-Weiß-Design, das nicht dominiert\u003c\/li\u003e\n\u003cli\u003e→ Pflegeleicht – kurz ausspülen, Feinwäsche, fertig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Sportlicher Körperschnitt – auf stabilen Sitz bei Bewegung im Wasser ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Dezentes Giraffenmuster einseitig – ruhiger Look, nicht vollflächig gemustert\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – elastisches Material, das sich an Bewegungen anpasst\u003c\/li\u003e\n\u003cli\u003e✅ Schwarz-Weiß-Farbgebung – lässt sich einfach mit Strandaccessoires kombinieren\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für Leistungssport oder sehr intensive tägliche Schwimmeinheiten konzipiert\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer ausschließlich unifarbene Bademode ohne jedes Muster bevorzugt, findet im einfarbigen Modell eine passendere Option\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Chlor- oder Salzwasserbeständigkeits-Nachweis vorliegend – Pflegehinweise beachten\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Giraffenmuster Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eSportlicher Körperschnitt mit Elasthan-Anteil – ausgelegt auf stabilen Sitz bei Bewegung im Wasser\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eVollflächige Muster wirken schnell überladen\u003c\/td\u003e\n\u003ctd\u003eGiraffenmuster nur einseitig – die andere Seite bleibt einfarbig für einen ruhigeren Gesamteindruck\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Taille, Hüfte und Brust als Anhaltspunkt – 30 Tage Rückgabe als Absicherung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMaterial dehnt sich nach mehrfachem Tragen aus\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Mischung – bei normaler Belastung und Pflege laut Herstellerangabe formstabil\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Giraffenmuster Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Giraffenmuster Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Giraffenmuster Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Giraffenmuster Badeanzug bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Badeanzug ist mit einem sportlichen Körperschnitt und elastischem Polyamid-Elasthan-Material auf stabilen Sitz bei normaler Bewegung im Wasser ausgelegt. Bei ruhigen bis moderaten Schwimmeinheiten bleibt er in der Regel ruhig sitzen. Für intensiven Leistungssport täglich ist er nicht konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen sportlichen Badeanzug Damen Giraffenmuster einteilig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür diesen einteiligen Badeanzug empfehlen wir, Taille, Hüfte und Brust zu messen und in unseren Größenrechner einzugeben. Bei Unsicherheit zwischen zwei Größen kann es sinnvoll sein, eine Größe größer zu wählen, damit der Sitz angenehm bleibt. 30 Tage Rückgabe sind inbegriffen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen am besten kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das schont das elastische Material und erhält die Form länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Situationen eignet sich der schlichter Badeanzug Damen mit Giraffenmuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Badeanzug ist auf alltägliche Badetage ausgelegt – See, Freibad, Strand, Pool. Er eignet sich für moderate Schwimmeinheiten und ruhige Tage am Wasser. Für sehr intensiven Schwimmsport täglich ist er weniger geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst das Giraffenmuster auf beiden Seiten oder nur auf einer?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Giraffenmuster ist auf einer Seite des Badeanzugs, die andere Seite ist einfarbig gehalten. Das ergibt einen ruhigen Schwarz-Weiß-Look, der nicht vollflächig gemustert ist.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich den Badeanzug auch zurückgeben, wenn die Größe nicht passt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, Rückgabe ist innerhalb von 30 Tagen möglich, sofern der Badeanzug ungetragen und im Originalzustand zurückgeschickt wird.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Giraffenmuster auf einer Seite – ruhig, klar gezeichnet, schwarz-weiß\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Sportlicher Körperschnitt am Bodenseeufer – Bewegung ohne Nachziehen\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Giraffenmuster Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eGiraffenmuster Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Giraffenmuster Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Giraffenmuster Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/3bdbdb8d-2f16-43b1-94d5-cfb0dc39f29c.jpg?v=1750427009\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Black And White \/ L","offer_id":45279850299660,"sku":"CJNT184907103CX","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black And White \/ M","offer_id":45279850332428,"sku":"CJNT184907102BY","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black And White \/ S","offer_id":45279850365196,"sku":"CJNT184907101AZ","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black And White \/ XL","offer_id":45279850397964,"sku":"CJNT184907104DW","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black Crack \/ L","offer_id":45279850430732,"sku":"CJNT184907107GT","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black Crack \/ M","offer_id":45279850463500,"sku":"CJNT184907106FU","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black Crack \/ S","offer_id":45279850496268,"sku":"CJNT184907105EV","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Black Crack \/ XL","offer_id":45279850529036,"sku":"CJNT184907108HS","price":29.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/3bdbdb8d-2f16-43b1-94d5-cfb0dc39f29c.jpg?v=1750427009"},{"product_id":"badeanzug-damen-einteilig-gestreift","title":"Badeanzug Damen Streifen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der den ganzen Tag sitzt – ohne dass man daran denkt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Badeanzug einfach bleibt, wo er ist – vom ersten Sprung ins Wasser bis zum Abend auf der Liege.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied erst nach einer Weile – nicht beim Anziehen, sondern wenn der Tag schon läuft und man gar nicht mehr nachdenkt.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Damen Streifen schwarz weiß – ruhiges Design für See und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einteiliger Schnitt mit klassischem Schwarz-Weiß-Streifenmuster – ausgelegt für Bewegung im Wasser, angenehm auf der Haut, dezent in der Wirkung.\u003c\/p\u003e\n\u003cp\u003eDas Streifenmuster in Schwarz und Weiß ist eines der ältesten Motive in der Bademode – und eines der wenigen, das weder laut noch beliebig wirkt. Es kommt aus einer Zeit, als Strandkleidung noch klar und lesbar war. Dieser Badeanzug Damen gestreift trägt diese Idee weiter: keine überladene Grafik, kein aufwändiges Print – nur eine Linie, die Form gibt. Am Bodensee, wo das Licht auf dem Wasser oft weich und verstreut ist, tritt ein solches Muster besonders klar hervor.\u003c\/p\u003e\n\u003cp\u003eDie vertikalen Streifen laufen ruhig über den Stoff – nicht dominierend, sondern rahmend. Sie betonen die Silhouette, ohne sie zu kommentieren. In Schwarz und Weiß hält sich das Muster zurück und lässt trotzdem Eindruck entstehen. Du stehst am Seeufer, das Wasser glitzert, und der Badeanzug wirkt genau so, wie er soll: präsent, ohne aufdringlich zu sein. Er lässt sich problemlos mit einem leichten Leinenhemd oder einer Shorts kombinieren – vom Wasser direkt zur Eisdiele.\u003c\/p\u003e\n\u003cp\u003eFür einen ruhigen Urlaubstag am See, einen Nachmittag am Pool mit Freundinnen oder die erste Runde im Freibad nach dem Winter – dieser einteilige Badeanzug Damen mit Streifenmuster passt in diese Momente, ohne sie zu überwältigen. Wer ein klares, zeitloses Design sucht, das sich nicht verausgabt, findet hier einen Anhaltspunkt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne zu auffällig zu sein – ein ruhiger Blickfang.\u003cbr\u003e• Schwarz-Weiß lässt sich mit fast allem kombinieren, was du ohnehin am See trägst.\u003cbr\u003e• Der Schnitt wirkt schlicht – und bleibt genau das, egal wie der Tag läuft.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle unten deine Größe – Bauch, Hüfte oder Brust als Ausgangspunkt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 78.0, \"hip_max\": 94.0, \"bust_min\": 84.0, \"bust_max\": 88.0}, {\"name\": \"M\", \"hip_min\": 82.0, \"hip_max\": 98.0, \"bust_min\": 88.0, \"bust_max\": 92.0}, {\"name\": \"L\", \"hip_min\": 86.0, \"hip_max\": 102.0, \"bust_min\": 92.0, \"bust_max\": 96.0}, {\"name\": \"XL\", \"hip_min\": 90.0, \"hip_max\": 106.0, \"bust_min\": 96.0, \"bust_max\": 100.0}, {\"name\": \"2XL\", \"hip_min\": 94.0, \"hip_max\": 110.0, \"bust_min\": 100.0, \"bust_max\": 104.0}, {\"name\": \"3XL\", \"hip_min\": 98.0, \"hip_max\": 114.0, \"bust_min\": 104.0, \"bust_max\": 108.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen – nach dem Tragen kurz mit klarem Wasser ausspülen\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: Einteilig, Streifenmuster in Schwarz und Weiß, Größenangabe nach Bauch, Hüfte oder Brust\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Badeanzug Damen Streifen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug den ganzen Tag mitgeht, ohne zu verrutschen\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eAuf stabilen Sitz bei Bewegung ausgelegt – für See, Pool und Strand.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen oder Bewegen im Wasser\u003c\/li\u003e\n\u003cli\u003eNach dem Baden fühlt sich der Stoff unangenehm an\u003c\/li\u003e\n\u003cli\u003eDie Größenwahl bei Bademode online ist unsicher\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eEs gibt Badeanzüge, die beim Anziehen gut sitzen – und solche, die es auch noch tun, wenn man die dritte Runde im See dreht, am Ufer entlangläuft oder aus dem Wasser steigt. Der Unterschied liegt meist im Schnitt und im Material. Bei vielen Modellen beginnt der Stoff nach dem ersten Schwimmen zu ziehen oder der Ausschnitt verschiebt sich leicht – nichts Dramatisches, aber spürbar genug, um zu stören.\u003c\/p\u003e\n\u003cp\u003eDas hängt oft damit zusammen, dass Schnitt und Materialzusammensetzung nicht aufeinander abgestimmt sind. Ein Stoff, der sich im Nassen anders verhält als trocken, braucht einen Schnitt, der diese Bewegung mitmacht – sonst entsteht Zug an den falschen Stellen. Das 78 % Polyamid \/ 22 % Elasthan-Gewebe dieses Badeanzugs ist auf genau diese Dynamik ausgelegt: Es dehnt sich mit, gibt nach, kehrt zurück.\u003c\/p\u003e\n\u003cp\u003eDieser gestreifte Badeanzug Damen ist auf einen ruhigen, stabilen Sitz bei normaler Belastung ausgelegt – Schwimmen, Gehen am Strand, Aufstehen von der Liege. Wenn du eher nach einem Modell für intensives tägliches Schwimmtraining suchst, gibt es dafür spezialisierte Sportmodelle, die besser passen könnten. Für einen entspannten Tag am See, Seeurlaub oder Freibad-Nachmittage ist dieser Schnitt ein brauchbarer Ausgangspunkt. Wer ein dezentes Streifenmuster mag und sich nicht jedes Mal um den Sitz sorgen möchte, kann sich hier gut orientieren.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eFrage, die hilft: Welche Situationen hast du hauptsächlich im Kopf – aktives Schwimmen, Liegen, oder beides gemischt?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Bauch-, Hüft- und Brustmaß ein, um den passenden Anhaltspunkt zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe, falls der Sitz nicht stimmt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Klassisches Muster, das nach Wäschen klar bleibt\u003c\/li\u003e\n\u003cli\u003e→ Vom Wasser zur Liege ohne Nachziehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einteiliger Schnitt, auf stabilen Sitz bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Klassisches Schwarz-Weiß-Streifenmuster – zeitlos und kombinierfähig\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid (recycelt), 22 % Elasthan – bewegt sich mit, gibt nach\u003c\/li\u003e\n\u003cli\u003e✅ Größenangabe nach Bauch, Hüfte oder Brust – Größenrechner verfügbar\u003c\/li\u003e\n\u003cli\u003e✅ 30 Tage Rückgabe bei nicht passendem Sitz\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für tägliches Leistungsschwimmen oder Trainingsbedingungen weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer lieber bunte Muster oder auffällige Prints mag, findet hier ein sehr ruhiges Design\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein spezieller Schwimmersport-Schnitt – für entspannte Nutzung ausgelegt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Badeanzug Damen Streifen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen oder Aufstehen aus dem Wasser\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei normaler Bewegung ausgelegt – Elasthan-Anteil trägt zur Rückformung bei\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass unangenehm oder klebend an\u003c\/td\u003e\n\u003ctd\u003e78 % Polyamid \/ 22 % Elasthan – liegt auch nass in der Regel ruhig an\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGrößen bei Bademode online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner nach Bauch, Hüfte, Brust – plus 30 Tage Rückgabe als Sicherheitsnetz\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDesign wirkt schnell überladen oder verliert nach Wäschen an Kontur\u003c\/td\u003e\n\u003ctd\u003eKlassisches Schwarz-Weiß-Streifenmuster – dezent und pflegeleicht bei Feinwäsche 30 °C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Badeanzug Damen Streifen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Badeanzug Damen Streifen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid (recycelt), 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Badeanzug Damen Streifen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Badeanzug bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Schnitt ist auf einen ruhigen Sitz bei normaler Belastung ausgelegt – beim Schwimmen, Aufstehen oder Gehen am Strand. Das Elasthan-Anteil von 22 % trägt dazu bei, dass der Stoff mitmacht und zurückfindet. Bei sehr intensiven täglichen Schwimmeinheiten können spezialisierte Sportmodelle besser geeignet sein.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen gestreiften Badeanzug?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner hilft dir einzuschätzen, welche Größe am besten passt – du gibst Bauch-, Hüft- und Brustmaß ein. Bei Unsicherheit zwischen zwei Größen lohnt es sich, das Maß mit dem größten Unterschied zur Normgröße als Ausgangspunkt zu nehmen. Zusätzlich gilt: 30 Tage Rückgabe, falls der Sitz nicht stimmt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Waschen bei 30 °C im Feinwaschgang, nicht im Trockner trocknen. So bleiben Form und Material in der Regel länger stabil.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst dieser einteilige Badeanzug Damen mit Streifenmuster auch für den Seeurlaub?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas klassische Schwarz-Weiß-Streifenmuster und der einteilige Schnitt sind auf entspannte Urlaubssituationen ausgelegt – Seeurlaub, Freibad, Strand. Das Muster lässt sich gut mit hellen Leinenstücken oder Shorts kombinieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWoraus besteht der Stoff und warum recyceltes Polyamid?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003e78 % Polyamid (recycelt), 22 % Elasthan. Das Polyamid stammt aus recyceltem Material – ein Anhaltspunkt für einen etwas bewussteren Materialeinsatz. Elasthan sorgt für Bewegungsfreiheit und dafür, dass der Schnitt nach Dehnung zurückfindet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Badeanzug eher nicht geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer täglich intensiv Bahnen schwimmt oder ein Modell für Leistungssport im Wasser sucht, findet in spezialisierten Schwimmsport-Badeanzügen in der Regel passendere Eigenschaften. Dieser Badeanzug ist auf entspannte Nutzung ausgelegt, nicht auf Wettkampf- oder Trainingsbedingungen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Vertikale Schwarz-Weiß-Streifen am Seeufer im Morgenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Badeanzug trocken auf einer Strandliege – Muster klar und ruhig\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Badeanzug Damen Streifen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBadeanzug Damen Streifen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€24.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Badeanzug Damen Streifen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Badeanzug Damen Streifen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/103502873888175.jpg?v=1717170744\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"24.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Gestreift \/ L","offer_id":45279867470092,"sku":"CJYDYYYJ00876-Picture color-L","price":24.99,"currency_code":"EUR","in_stock":true},{"title":"Gestreift \/ M","offer_id":45279867502860,"sku":"CJYDYYYJ00876-Picture color-M","price":24.99,"currency_code":"EUR","in_stock":true},{"title":"Gestreift \/ S","offer_id":45279867535628,"sku":"CJYDYYYJ00876-Picture color-S","price":24.99,"currency_code":"EUR","in_stock":true},{"title":"Gestreift \/ XL","offer_id":45279867568396,"sku":"CJYDYYYJ00876-Picture color-XL","price":24.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/103502873888175.jpg?v=1717170744"},{"product_id":"badenazug-damen-plusgrosse-leopard","title":"Leopard Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Badeanzug aus, der am See genauso sitzt wie beim ersten Anziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Badeanzug einfach passt – ohne dass man ständig daran denken muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht sofort, sondern erst dann, wenn der Tag am Wasser einfach entspannter verläuft als erwartet.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug Leopard Damen mit Mesh-Einsatz – für See, Pool und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Leopardenmuster, das nicht aufdringlich ist – mit dezenten Mesh-Details, die die Silhouette weich betonen, ohne zu viel preiszugeben. Zugeschnitten für Bewegung im Wasser und den Moment danach auf der Liege.\u003c\/p\u003e\n\u003cp\u003eDas Leopardenmuster auf diesem Einteiler ist bewusst zurückgehalten: keine grellen Kontraste, kein übertriebener Druck – eher ein Muster, das aus der Nähe wirkt und auf Fotos am Wasser ruhig bleibt. Inspiriert von der klaren, unaufgeregten Ästhetik der Bodenseemarke, die zeigt, dass ein Muster nicht laut sein muss, um aufzufallen. Feine Mesh-Partien setzen Akzente, ohne den Gesamteindruck zu brechen.\u003c\/p\u003e\n\u003cp\u003eDer Badeanzug Leopard Damen kombiniert einen klassischen Einteiler-Schnitt mit modernen Details: Der Mesh-Einsatz liegt dort, wo er die Silhouette rahmt, nicht betont. Die Farbgebung bleibt im neutralen Bereich – dieser Leo Print passt zu einem einfarbigen Sarong, zum hellen Leinenshirt über der Schulter oder allein am Ufer. Wer eher zu klaren Einfarbern neigt, könnte sich an diesem Muster reiben – das ist ein ehrlicher Hinweis.\u003c\/p\u003e\n\u003cp\u003eAm Bodenseeufer, wenn man nach dem Schwimmen auf dem Handtuch liegt und das Wasser trocknet: Der Anzug bleibt in Form, das Muster wirkt auch nass nicht flach. Beim Aufstehen, Gehen zum Kiosk, zurück ins Wasser – der Einteiler hält mit, ohne dass man daran denken muss. Für Urlaube, an denen man nicht entscheiden möchte, was man anzieht.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Leopardenmuster fällt auf, ohne zu dominieren – ruhig und präsent zugleich\u003cbr\u003e• Der Mesh-Einsatz liegt nah an der Haut, fühlt sich leicht an und gibt dem Schnitt etwas Eigenes\u003cbr\u003e• Wer dezente Muster schätzt und trotzdem nicht im Einfarbigen bleiben möchte, findet hier einen Mittelweg\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du wissen möchtest, welche Größe passt – der Größenrechner hilft dir dabei, Maße einzuordnen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-badeanzug\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_badeanzug()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_badeanzug() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_badeanzug() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_badeanzug);\n            toggleGenderFields_badeanzug();\n        } else {\n            setTimeout(initGenderToggle_badeanzug, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_badeanzug);\n    } else {\n        initGenderToggle_badeanzug();\n    }\n})();\n\nfunction calculateSize_badeanzug() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"L\", \"waist_min\": 75.0, \"waist_max\": 81.0, \"hip_min\": 89.0, \"hip_max\": 95.0, \"bust_min\": 87.0, \"bust_max\": 93.0, \"length_min\": 63.0, \"length_max\": 69.0}, {\"name\": \"XL\", \"waist_min\": 81.0, \"waist_max\": 87.0, \"hip_min\": 95.0, \"hip_max\": 101.0, \"bust_min\": 93.0, \"bust_max\": 99.0, \"length_min\": 65.0, \"length_max\": 71.0}, {\"name\": \"2XL\", \"waist_min\": 87.0, \"waist_max\": 93.0, \"hip_min\": 101.0, \"hip_max\": 107.0, \"bust_min\": 99.0, \"bust_max\": 105.0, \"length_min\": 67.0, \"length_max\": 73.0}, {\"name\": \"3XL\", \"waist_min\": 93.0, \"waist_max\": 99.0, \"hip_min\": 107.0, \"hip_max\": 113.0, \"bust_min\": 105.0, \"bust_max\": 111.0, \"length_min\": 69.0, \"length_max\": 75.0}, {\"name\": \"4XL\", \"waist_min\": 99.0, \"waist_max\": 105.0, \"hip_min\": 113.0, \"hip_max\": 119.0, \"bust_min\": 111.0, \"bust_max\": 117.0, \"length_min\": 71.0, \"length_max\": 77.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e✔ Design: Leopardenmuster mit Mesh-Einsatz, Einteiler-Schnitt\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Leopard Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug im Wasser unruhig wird\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSicherer Sitz und angenehmes Tragegefühl – auch nach Stunden am See.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Anzug verrutscht schon beim ersten Schwimmen\u003c\/li\u003e\n\u003cli\u003eDas Nass-Gefühl am Körper bleibt unangenehm lange\u003c\/li\u003e\n\u003cli\u003eDie Größe online einschätzen ist schwierig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man geht ins Wasser, schwimmt ein paar Bahnen oder springt vom Steg – und danach sitzt der Badeanzug nicht mehr da, wo er war. Nachziehen, neu ausrichten, kurz innehalten. Das passiert oft nicht wegen der Größe, sondern wegen des Schnitts.\u003c\/p\u003e\n\u003cp\u003eEin Einteiler, der für Bewegung im Wasser ausgelegt ist, berücksichtigt, wie der Körper sich beim Schwimmen und Gehen verhält. Das Zusammenspiel von Schnitt und elastischem Material kann dazu beitragen, dass der Anzug bei normaler Belastung ruhiger sitzt – kein Nachziehen, kein Korrigieren. Das 78 % Polyamid \/ 22 % Elasthan-Gewebe ist auf Dehnung und Rückformung ausgelegt, sodass der Sitz auch nach dem Schwimmen meist erhalten bleibt.\u003c\/p\u003e\n\u003cp\u003eDieser Badeanzug Leopard Damen ist für entspannte Wasseraktivitäten gedacht – Schwimmen, Plantschen, einen Tag am See. Wer tägliches intensives Schwimmtraining plant, ist mit einem spezifischen Sportbadeanzug vielleicht besser beraten. Für alle anderen kann dieser Einteiler ein angenehmer Begleiter für Urlaub und Freizeit sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der Schnitt zu deiner Körpermitte und deinen üblichen Wasseraktivitäten?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, um eine Orientierung zu erhalten.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e30 Tage Rückgabe – falls er nach dem Anprobieren nicht das Richtige ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Schwimmen und beim Gehen am Strand ruhig\u003c\/li\u003e\n\u003cli\u003e→ Leopardenmuster bleibt auch nass klar und flach\u003c\/li\u003e\n\u003cli\u003e→ Mesh-Einsatz liegt leicht auf der Haut – kaum spürbar im Wasser\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Leopardenmuster mit Mesh-Einsatz – wirkt zurückhaltend, nicht aufdringlich\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid \/ 22 % Elasthan – bei normaler Belastung ruhiger Sitz im Wasser\u003c\/li\u003e\n\u003cli\u003e✅ Einteiler-Schnitt für unkomplizierte Alltagsnutzung am See und im Urlaub\u003c\/li\u003e\n\u003cli\u003e✅ Feinwäsche 30 °C – pflegeleicht bei normaler Nutzung\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für tägliches intensives Schwimmtraining ist ein spezieller Sportbadeanzug besser geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer ausschließlich einfarbige Bademode bevorzugt, wird sich an einem Muster-Print nicht wohlfühlen\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegten Angaben zu UV-Schutz oder Chlorbeständigkeit – bei diesen Anforderungen andere Modelle prüfen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Leopard Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchnitt verrutscht beim Schwimmen und muss ständig korrigiert werden\u003c\/td\u003e\n\u003ctd\u003eEinteiler-Schnitt mit Elasthan-Anteil – auf stabilen Sitz bei normaler Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt am Körper überladen oder zu laut\u003c\/td\u003e\n\u003ctd\u003eZurückhaltendes Leo Print in neutralen Tönen – wirkt nah betrachtet, ohne von weitem zu dominieren\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bademode schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Taille, Hüfte, Brust und Länge als Orientierung – 30 Tage Rückgabe als Sicherheitsnetz\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff klebt nach dem Schwimmen unangenehm auf der Haut\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Mischung – formt sich zurück und liegt bei normaler Nutzung angenehm an\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Leopard Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Leopard Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Chlor und Salz machen dem Material nichts aus.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst einen \u003cstrong\u003eBadeanzug\u003c\/strong\u003e, der beim Schwimmen sicher sitzt\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eschlichte Schnitte\u003c\/strong\u003e ohne überflüssige Details\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort\u003c\/strong\u003e – im Wasser und danach\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e durch klare Größenangaben\u003c\/li\u003e\n\u003cli\u003e→ Du kaufst \u003cstrong\u003ebewusst\u003c\/strong\u003e statt auf Verdacht\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEigenschaften:\u003c\/strong\u003e Blickdicht, schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEinsatzbereich:\u003c\/strong\u003e Schwimmen, Strand, Pool- nach dem Baden ausspülen empfohlen\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Leopard Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Leopard Badeanzug Damen bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Einteiler ist auf stabilen Sitz bei normaler Bewegung im Wasser ausgelegt. Das elastische Polyamid-Elasthan-Gewebe passt sich dem Körper an und kehrt bei normaler Belastung in die ursprüngliche Form zurück. Für intensives tägliches Schwimmtraining ist er weniger konzipiert – er eignet sich eher für entspannte Wasseraktivitäten und Urlaub.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Badeanzug?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze den Größenrechner mit deinen Maßen für Taille, Hüfte, Brust und Länge. Bei Unsicherheit zwischen zwei Größen empfiehlt sich in der Regel die größere Variante für mehr Bewegungsfreiheit. Bei Bademode kann die Passform stark variieren – die 30 Tage Rückgabe gibt dir die Möglichkeit, die Größe in Ruhe zu prüfen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Badeanzug mit Leopardenmuster nach dem Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das schont das Elasthan und erhält die Form länger. Auf links gewaschen bleibt das Muster länger frisch.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Badeanzug Leopard Damen mit Mesh auch für den See geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Einteiler ist für See, Freibad und Strand ausgelegt. Der Schnitt hält bei normalen Wasseraktivitäten ruhig sitzen. Der Mesh-Einsatz ist als Designelement integriert und beeinflusst den Tragekomfort im Wasser nicht nennenswert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eVerblasst das Leopardenmuster durch häufiges Baden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Polyamid-Elasthan-Gewebe ist für den Kontakt mit Wasser ausgelegt. Bei sorgsamer Pflege – kurzes Ausspülen nach dem Baden, Feinwäsche 30 °C, kein Trockner – bleibt das Muster bei normaler Nutzung über längere Zeit erhalten. Ein kein Versprechen auf dauerhaften Farberhalt – das hängt von Nutzungshäufigkeit und Pflegeweise ab.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Aktivitäten eignet sich der Badeanzug Damen Leopardenmuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür entspannte Schwimmeinheiten, Tage am See oder Freibad, Strandurlaub und Poolaufenthalte. Weniger geeignet für sehr intensives tägliches Schwimmtraining – dafür gibt es speziell konstruierte Sportbadeanzüge mit anderen Materialzusammensetzungen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Leopardenmuster im Gegenlicht am Wasser – ruhig, nicht grell\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Mesh-Einsatz an der Taille, der die Silhouette weich rahmt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Leopard Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eLeopard Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€34.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Leopard Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Leopard Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN019YiDqJ1fsu1M5yBDW__2214331894063-0-cib.jpg?v=1750426738\", \"category\": \"badeanzug\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"34.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Leopard Print \/ 0XL","offer_id":45362786304268,"sku":"CJNT200214401AZ","price":34.99,"currency_code":"EUR","in_stock":true},{"title":"Leopard Print \/ 1XL","offer_id":45362786337036,"sku":"CJNT200214402BY","price":34.99,"currency_code":"EUR","in_stock":true},{"title":"Leopard Print \/ 2XL","offer_id":45362786369804,"sku":"CJNT200214403CX","price":34.99,"currency_code":"EUR","in_stock":true},{"title":"Leopard Print \/ 3XL","offer_id":45362786402572,"sku":"CJNT200214404DW","price":34.99,"currency_code":"EUR","in_stock":true},{"title":"Leopard Print \/ 4XL","offer_id":45362786435340,"sku":"CJNT200214405EV","price":34.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN019YiDqJ1fsu1M5yBDW__2214331894063-0-cib.jpg?v=1750426738"},{"product_id":"bikini-damen-schmetterlingsmuster","title":"Schmetterling Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini mit Schmetterlingen aus, der sich nach einem langen Badetag noch genauso anfühlt wie zu Beginn?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach sitzt – und das Muster genauso frisch wirkt wie morgens beim ersten Ins-Wasser-Gehen.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Strandtages zeigt sich, ob ein Bikini mitgeht oder ständig Aufmerksamkeit einfordert – beim Schwimmen, beim Hinsetzen, beim Aufstehen.\u003c\/p\u003e\n  \u003ch2\u003eBikini Damen Schmetterling – verspieltes Muster für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin zweiteiliger Bikini mit Schmetterlingsmuster in Blau – ausgelegt für sonnige Tage am Wasser, ob am See, am Strand oder im Urlaub. Der Stoff aus 78 % Polyamid und 22 % Elasthan passt sich der Bewegung an und sitzt in der Regel ruhig.\u003c\/p\u003e\n\u003cp\u003eDas Schmetterlingsmuster ist kein lautes Statement, sondern ein Detail, das beim näheren Hinschauen wirkt. Die Schmetterlinge verteilen sich auf dem blauen Untergrund so, dass der Bikini aus der Nähe lebendig und aus der Ferne klar und ruhig aussieht. Diese Zurückhaltung macht ihn zu einem der wenigen gemusterten Bikinis, die auch zur ungemusterten Strandtasche oder dem schlichten Leinentuch passen, ohne zu konkurrieren.\u003c\/p\u003e\n\u003cp\u003eAm Bodenseeufer, wo das Licht oft weich und das Wasser ruhig ist, tritt das Muster besonders schön hervor – die Blautöne spiegeln sich in der Umgebung wider, ohne sich aufzudrängen. Wer den Bikini für einen Urlaub am Meer oder einen langen Sommernachmittag am Freibad einpackt, nimmt etwas mit, das morgens beim Anziehen einen kleinen Moment der Freude auslösen kann, ohne dass man sich dafür erklären müsste.\u003c\/p\u003e\n\u003cp\u003eAls Urlaubsmitbringsel oder Geschenk sagt dieser Bikini: Ich habe nachgedacht, was dir steht – nicht laut, aber mit Haltung. Das Muster ist verspielt genug, um aufzufallen, und ruhig genug, um nicht zu viel zu sein. Für Personen, die Bademode nicht nur als Funktion, sondern als Teil eines bewussten Sommergefühls sehen, kann das passen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst ihn an und das Muster wirkt auf Anhieb stimmig – kein Zuviel, kein Zuwenig.\u003cbr\u003e• Am Wasser merkt man, dass das Blau mit dem Licht mitgeht – mal tiefer, mal heller, je nach Tageszeit.\u003cbr\u003e• Als Geschenk kommt er an, weil er zeigt, dass jemand über Stil nachgedacht hat – nicht nur über Größe.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du die passende Größe suchst: Unser Größenrechner hilft dir, Brust, Bauch, Hüfte und EU-Größe einzuschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 72.0, \"hip_max\": 76.0, \"bust_min\": 66.0, \"bust_max\": 72.0, \"height_min\": 32.0, \"height_max\": 34.0}, {\"name\": \"M\", \"hip_min\": 76.0, \"hip_max\": 80.0, \"bust_min\": 72.0, \"bust_max\": 78.0, \"height_min\": 34.0, \"height_max\": 36.0}, {\"name\": \"L\", \"hip_min\": 80.0, \"hip_max\": 84.0, \"bust_min\": 92.0, \"bust_max\": 96.0, \"height_min\": 78.0, \"height_max\": 84.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Größenauswahl: Brust, Bauch, Hüfte, EU Größe – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Schmetterling Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser mehr Aufmerksamkeit braucht als der Tag selbst\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSicherer Sitz und ein Muster, das auch nach dem fünften Sprung ins Wasser noch stimmt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil verrutscht beim Schwimmen und muss ständig gerichtet werden\u003c\/li\u003e\n\u003cli\u003eMuster wirkt nach einer Saison müde und ausgewaschen\u003c\/li\u003e\n\u003cli\u003eGröße online schwer einzuschätzen, weil Ober- und Unterteil unterschiedlich sitzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu springst ins Wasser, schwimmst ein paar Züge, steigst aus – und das erste, was du tust, ist nachschauen, ob alles noch sitzt. Dieses Ritual kennen viele, und es ist kein Zeichen schlechter Qualität, sondern oft eine Frage des Schnitts und des Materialverhaltens im nassen Zustand.\u003c\/p\u003e\n\u003cp\u003ePolyamid-Elasthan-Mischgewebe wie das dieses Bikinis ist auf Beweglichkeit im Wasser ausgelegt und behält bei normaler Belastung seine Form. Das bedeutet nicht, dass nichts verrutscht – aber der Stoff gibt nach und kehrt in der Regel zurück, ohne zu spannen oder zu schlaffen. Ob das für dich passt, hängt auch von der Wahl der richtigen Größe ab.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini eignet sich gut, wenn du einen Strandtag, einen Badetag am See oder eine Urlaubswoche planst und dabei einen angenehmen Sitz ohne viel Nachkorrigieren schätzt. Wenn du hingegen intensives Schwimmen, Wassersport oder Leistungstraining im Wasser planst, wäre ein funktionaler Sportbadeanzug vermutlich die passendere Wahl – der Schmetterling-Bikini ist auf Freizeit ausgelegt, nicht auf sportliche Belastung.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Halt brauchst du beim Schwimmen – und wie bewegst du dich am Wasser meistens?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Brust, Bauch, Hüfte und deine EU-Größe ein, um die passende Kombination aus Ober- und Unterteil zu finden.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil sind separat wählbar, was die Passform für unterschiedliche Proportionen erleichtert.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil hält auch beim Schwimmen – kein ständiges Nachziehen\u003c\/li\u003e\n\u003cli\u003e→ Sitzt nach einer Woche Strand noch wie am ersten Tag\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Verspieltes Schmetterlingsmuster auf Blau – auffällig, aber nicht unruhig\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – kann dazu beitragen, unterschiedliche Proportionen besser abzudecken\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – auf Beweglichkeit und angenehmen Sitz bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Für Strand, See, Freibad und Urlaub geeignet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht für Leistungsschwimmen oder intensive Wasseraktivitäten ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Weniger geeignet, wenn du ausschließlich schlichte, ungusterte Bademode bevorzugst\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Sportschnitt – wer maximalen Halt beim Schwimmen sucht, braucht ein anderes Modell\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Schmetterling Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht bei Bewegung im Wasser\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil ist auf Rückformung bei normaler Bewegung ausgelegt – bleibt meist ruhig sitzen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen, Ober- und Unterteil passen nicht zusammen\u003c\/td\u003e\n\u003ctd\u003eSeparat wählbar nach Brust, Bauch, Hüfte und EU-Größe – Größenrechner hilft bei der Einschätzung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt nach einer Saison blass und ausgewaschen\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Gewebe ist für Bademode ausgelegt; bei richtiger Pflege (Feinwäsche 30 °C, kein Trockner) bleibt die Form in der Regel erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Schmetterling Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Schmetterling Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eSchmetterling Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Schmetterling Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWofür eignet sich ein Schmetterling Bikini für Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist auf Freizeit am Wasser ausgelegt – Strand, See, Freibad und Urlaub. Das Schmetterlingsmuster wirkt verspielt, bleibt aber ruhig genug für einen unkomplizierten Sommerlook. Für intensiven Wassersport oder Leistungsschwimmen ist ein Sportbadeanzug in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim Bikini Damen mit Schmetterlingsmuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa Ober- und Unterteil separat gewählt werden können, lässt sich die Passform an unterschiedliche Proportionen anpassen. Unser Größenrechner hilft dir, anhand von Brust, Bauch, Hüfte und EU-Größe die passende Kombination zu finden. Bei Unsicherheit zwischen zwei Größen kann das Oberteil etwas straffer sitzen – für mehr Halt beim Schwimmen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyamid-Elasthan richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das kann den Elasthan-Anteil auf Dauer beeinträchtigen. Auf links gewaschen hält das Material länger seine Form.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eHält das Oberteil beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf einen angenehmen Sitz bei normaler Freizeitbewegung im Wasser ausgelegt. Bei ruhigem Schwimmen, Planschen und Strandspaziergängen bleibt er in der Regel ruhig sitzen. Für intensive Wasserbewegungen oder Sport ist ein Modell mit zusätzlicher Fixierung besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBlauer Bikini mit Schmetterlingsprint Damen – wie wirkt das Muster im echten Licht?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDie Schmetterlinge verteilen sich auf einem blauen Untergrund. Das Muster wirkt aus der Nähe lebendig und aus der Distanz ruhig. Im Sonnenlicht können die Blautöne je nach Lichteinfall variieren – von tieferem Mitternachtsblau bis zu einem helleren Himmelston.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWer ein komplett schlichtes, gemusterungsfreies Modell sucht oder ausschließlich neutrale Farben bevorzugt, wird mit diesem Bikini weniger glücklich. Auch für Leistungsschwimmen oder Wassersport mit hoher Intensität ist er nicht ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schmetterlinge auf blauem Untergrund – aus der Nähe detailreich, aus der Distanz klar\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Blaue Farbe, die mit dem Licht des Wassers korrespondiert\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Schmetterling Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eSchmetterling Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Schmetterling Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Schmetterling Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/0098f3c0-4f3a-4154-8444-f80e5700d8a5.jpg?v=1751741893\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Schneeweiß \/ L","offer_id":45418792583436,"sku":"CJYJ174606603CX","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ M","offer_id":45418792616204,"sku":"CJYJ174606602BY","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ S","offer_id":45418792648972,"sku":"CJYJ174606601AZ","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa \/ L","offer_id":45418792681740,"sku":"CJYJ174606606FU","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa \/ M","offer_id":45418792714508,"sku":"CJYJ174606605EV","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Rosa \/ S","offer_id":45418792747276,"sku":"CJYJ174606604DW","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Aquatürkis \/ L","offer_id":45418792780044,"sku":"CJYJ174606609IR","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Aquatürkis \/ M","offer_id":45418792812812,"sku":"CJYJ174606608HS","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Aquatürkis \/ S","offer_id":45418792845580,"sku":"CJYJ174606607GT","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Babyblau \/ L","offer_id":45418792878348,"sku":"CJYJ174606612LO","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Babyblau \/ M","offer_id":45418792911116,"sku":"CJYJ174606611KP","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Babyblau \/ S","offer_id":45418792943884,"sku":"CJYJ174606610JQ","price":25.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/0098f3c0-4f3a-4154-8444-f80e5700d8a5.jpg?v=1751741893"},{"product_id":"damen-bikini-set-dreiteilig-marmoriert","title":"Bikini Set Marmormuster Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini mit Marmormuster aus, der am Bodensee genauso sitzt wie am ersten Tag?\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eBikini Marmormuster Damen – zeitloses Muster für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieses Bikini Set gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nZweiteiliges Set mit abstraktem Marmormuster – dezent gemustert in schwarz-grau-weiß mit goldenen Akzenten, für Tage, an denen Bademode ruhig und durchdacht wirken soll.\u003c\/p\u003e\n\u003cp\u003eDas Marmormuster kommt aus einer Bildwelt, die eher an Architektur und ruhige Oberflächen erinnert als an laute Strandoptiken. Schwarz, Grau und Weiß verlaufen ineinander, die goldenen Akzente setzen einen Punkt ohne zu dominieren. Wer am Bodenseeufer ins Wasser geht und ein Set sucht, das sich nicht aufdrängt, findet hier eine stille Aussage.\u003c\/p\u003e\n\u003cp\u003eDas Muster funktioniert auf heller wie auf dunkler Haut, weil es keine einzelne Farbe betont, sondern Übergänge zeigt. Es ist kein auffälliges Print-Statement – eher ein Hintergrund, der für sich spricht. Am Steg, beim Aufstehen aus dem Wasser, beim Anlehnen an die Kaimauer: Das Muster wirkt in Bewegung und in Ruhe ähnlich.\u003c\/p\u003e\n\u003cp\u003eDas Set passt gut als Mitbringsel oder Geschenk, wenn man jemandem etwas geben möchte, das nicht sofort wie „typisches Bademode-Geschenk\" aussieht. Und es lässt sich mit einem leichten Strandrock oder einer weiten Leinenhose kombinieren, wenn man vom Wasser direkt weitergeht.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne dass du etwas dazu erklären musst – ruhige Wirkung ohne Aufwand.\u003cbr\u003e• Die Farbkombination aus Grau und Gold wirkt am Wasser anders als auf dem Foto – etwas wärmer, etwas lebendiger.\u003cbr\u003e• Wer gern Basics trägt, aber kein einfarbiges Set möchte, kann hier eine mittlere Position finden.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du die Größe einschätzen möchtest, hilft unser Größenrechner – Körpergröße und Gewicht reichen für einen ersten Anhaltspunkt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 86.0, \"hip_max\": 91.0, \"bust_min\": 81.0, \"bust_max\": 86.0}, {\"name\": \"M\", \"hip_min\": 91.0, \"hip_max\": 96.0, \"bust_min\": 86.0, \"bust_max\": 91.0}, {\"name\": \"L\", \"hip_min\": 96.0, \"hip_max\": 101.0, \"bust_min\": 91.0, \"bust_max\": 96.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Design: Abstraktes Marmormuster in schwarz-grau-weiß mit goldenen Akzenten\u003c\/li\u003e\n\u003cli\u003e✔ Ausführung: Zweiteiliges Set (Oberteil + Unterteil)\u003c\/li\u003e\n\u003cli\u003e✔ Anwendung: Strand, See, Pool, Urlaub – ausgelegt für entspannte Badetage\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Set Marmormuster Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini bei Bewegung seinen Sitz verliert\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin Set, das ausgelegt ist auf ruhigen Tragekomfort – am See wie im Pool.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil sitzt nach einer Stunde Wasser nicht mehr wie am Anfang\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach längerem Tragen an bestimmten Stellen\u003c\/li\u003e\n\u003cli\u003eDie Größenangaben online stimmen für Bikinis selten mit der Realität überein\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eEs passiert meistens nicht beim ersten Ins-Wasser-Gehen, sondern nach dem dritten Mal: Das Oberteil zieht sich leicht nach oben, der Bund sitzt anders als vorhin. An einem langen Badetag am See kann das zu einem stillen Störfaktor werden – nicht dramatisch, aber spürbar.\u003c\/p\u003e\n\u003cp\u003eEin Teil davon hat mit dem Schnitt zu tun, ein Teil mit dem Material. Bikinis, die für leichte Bewegung und entspannte Badetage ausgelegt sind, verhalten sich anders als solche, die primär für sportliche Wasseraktivitäten konzipiert wurden. Es geht weniger um Qualität im abstrakten Sinne, sondern um die Frage, wofür ein Set eigentlich ausgelegt ist.\u003c\/p\u003e\n\u003cp\u003eDieses Bikini Set mit Marmormuster ist auf entspannte Tragekomfort-Situationen ausgelegt – für den See, den Pool, Urlaubstage. Es ist kein Sportbikini für intensives Schwimmen oder Wasserski; wenn du das suchst, wäre ein spezialisierter Sportbikini vermutlich der passendere Ansatz. Wer dagegen ein Set möchte, das bei gemäßigter Bewegung im Wasser ruhig bleibt und sich auch nach einem langen Strand-Nachmittag noch ähnlich anfühlt wie morgens – für den kann dieses Set ein Anhaltspunkt sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Bewegung im Wasser ist bei deinen typischen Badetagen dabei – eher gemächlich oder eher aktiv?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, um einen ersten Anhaltspunkt zu bekommen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die verfügbaren Größen an und nutze den Rechner als Orientierung – nicht als letztes Wort.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Tag am See noch ähnlich wie morgens\u003c\/li\u003e\n\u003cli\u003e→ Marmormuster wirkt am Wasser wärmer als auf dem Foto\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Abstraktes Marmormuster – dezent gemustert, nicht laut\u003c\/li\u003e\n\u003cli\u003e✅ Zeitloses schwarz-grau-weiß mit goldenen Akzenten\u003c\/li\u003e\n\u003cli\u003e✅ Ausgelegt für entspannte Badetage an See, Pool und im Urlaub\u003c\/li\u003e\n\u003cli\u003e✅ Kombinierbar mit Strandrock oder leichter Leinenhose\u003c\/li\u003e\n\u003cli\u003e✅ Größenrechner als Orientierungshilfe verfügbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Kein Sportbikini – für Leistungsschwimmen oder intensive Wasseraktivitäten weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer kräftige Farben oder florale Muster bevorzugt, findet hier einen anderen Stil\u003c\/li\u003e\n\u003cli\u003e⚠️ Materialangaben derzeit nicht vollständig spezifiziert – Pflegehinweise beachten\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Set Marmormuster Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach dem Schwimmen\u003c\/td\u003e\n\u003ctd\u003eAusgelegt auf stabilen Sitz bei gemäßigter Bewegung im Wasser\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt online anders als in der Realität\u003c\/td\u003e\n\u003ctd\u003eNatürliche Farbgebung in schwarz-grau-weiß – in der Regel ähnlich wie abgebildet\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Größen online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht als Anhaltspunkt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSet wirkt am Strand zu auffällig oder zu blass\u003c\/td\u003e\n\u003ctd\u003eMarmormuster mit Goldakzenten – ruhig, aber nicht farblos\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Set Marmormuster Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Set Marmormuster Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Set Marmormuster Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Set Marmormuster Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe bei diesem Bikini Set mit Marmormuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner gibt dir einen ersten Anhaltspunkt auf Basis von Körpergröße und Gewicht. Da Bikini-Größen je nach Schnitt variieren können, empfiehlt es sich bei Unsicherheit, eine Größe größer zu wählen – besonders wenn du ein etwas entspannteres Tragegefühl bevorzugst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set ist auf entspannte Bewegung ausgelegt – Schwimmen, Gehen, Aufstehen. Bei gemäßigter Wasseraktivität bleibt es in der Regel ruhig sitzen. Für intensives Schwimmen oder sportliche Wasseraktivitäten ist ein spezialisierter Sportbikini möglicherweise besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich dieses Bikini Set mit Marmormuster richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen, damit Form und Muster erhalten bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eEignet sich dieses schlichtes Bikini Set Marmormuster auch als Geschenk?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Marmormuster in schwarz-grau-weiß mit Goldakzenten wirkt zeitlos und unaufdringlich – es eignet sich gut als Geschenk, wenn du etwas suchst, das nicht sofort wie generische Bademode aussieht. Am besten den Größenrechner nutzen, um die Passform einzuschätzen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Wasseraktivitäten ist dieses Bikini Set geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set ist ausgelegt für entspannte Badetage – See, Pool, Urlaub. Es ist kein Sportbikini für Leistungsschwimmen oder intensive Wassersportarten. Wer regelmäßig intensiv schwimmt, sollte einen speziell dafür konzipierten Bikini in Betracht ziehen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Oberteil und Unterteil in verschiedenen Größen wählen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set kann je nach verfügbaren Varianten in unterschiedlichen Größen kombiniert werden. Nutz unseren Größenrechner als Orientierung und schau dir die Größentabelle an – besonders dann, wenn Oberteil und Unterteil unterschiedliche Proportionen brauchen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarz-grau-weiße Marmorierung mit feinen Goldakzenten – am Wasser unter Licht lebendig\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Dezentes Muster, das mit einer weiten Leinenhose oder einem Strandrock kombinierbar ist\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Set Marmormuster Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Set Marmormuster Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€33.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Set Marmormuster Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Set Marmormuster Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/20baa6e2-0374-4ed7-881b-4d42c660df06.jpg?v=1717174887\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"33.99\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Schwarz\u0026Weiß \/ L","offer_id":45418817028364,"sku":"CJYD196458109IR","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Weiß \/ M","offer_id":45418817061132,"sku":"CJYD196458108HS","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz\u0026Weiß \/ S","offer_id":45418817093900,"sku":"CJYD196458107GT","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Violett \/ L","offer_id":45418816930060,"sku":"CJYD196458106FU","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Violett \/ M","offer_id":45418816962828,"sku":"CJYD196458105EV","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Violett \/ S","offer_id":45418816995596,"sku":"CJYD196458104DW","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Smaragdgrün \/ L","offer_id":45418816831756,"sku":"CJYD196458112LO","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Smaragdgrün \/ M","offer_id":45418816864524,"sku":"CJYD196458111KP","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Smaragdgrün \/ S","offer_id":45418816897292,"sku":"CJYD196458110JQ","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ L","offer_id":45418816733452,"sku":"CJYD196458103CX","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":45418816766220,"sku":"CJYD196458102BY","price":33.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ S","offer_id":45418816798988,"sku":"CJYD196458101AZ","price":33.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/20baa6e2-0374-4ed7-881b-4d42c660df06.jpg?v=1717174887"},{"product_id":"bikini-damen-gebunden-schwarz-und-weiss","title":"Bikini Damen Marmormuster","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am See genauso sitzt wie in der ersten Minute?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da bleibt – ohne dass du ständig nachziehen musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau das merken viele erst im Laufe des Tages – beim Hinsetzen auf dem Steg, beim ersten Sprung ins Wasser.\u003c\/p\u003e\n  \u003ch2\u003eBikini Damen Marmormuster in Türkis-Schwarz – für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nZweiteiler mit abstraktem Marmormuster in Türkis und Schwarz – dezentes Design mit klarer Linienführung, Stoff aus 78 % Polyamid und 22 % Elasthan mit angenehmer Rückformung bei Bewegung.\u003c\/p\u003e\n\u003cp\u003eDas türkis-schwarze Marmormuster entstand als Antwort auf all die lauten Prints, die nach einer Saison satt wirken. Die Linien verlaufen unregelmäßig, fast wie Wasserzeichnungen – mal enger, mal offen. Kein Symmetriemuster, kein sich wiederholendes Motiv. Wer am Bodenseeufer im Gras sitzt und den Blick aufs Wasser richtet, merkt: Die Farben des Bikins schwingen mit dem Licht dort draußen mit, ohne sich aufzudrängen.\u003c\/p\u003e\n\u003cp\u003eTürkis und Schwarz halten sich die Waage – keine Farbe dominiert. Das Marmormuster wirkt von Nah detailliert, auf Abstand schlicht. Dazu passt ein leichtes weißes Leinenkleid genauso wie eine schwarze Shorts. Wer eher kräftige, auffällige Prints mag, wird diesen Bikini vielleicht zu zurückhaltend finden – er ist bewusst auf Langlebigkeit im Blick ausgelegt, nicht auf den ersten lauten Auftritt.\u003c\/p\u003e\n\u003cp\u003eBeim Aufwachen im Ferienhaus, bevor alle anderen wach sind – Kaffee in der Hand, kurz ans Wasser. Dieser Bikini Damen Marmormuster ist in solchen Momenten einfach dabei, ohne dass man groß nachdenkt. Oder nachmittags am Steg, wenn man sich aus dem Wasser zieht und trocken in der Sonne sitzt: Das Muster wirkt auch außerhalb des Wassers stimmig, nicht deplatziert.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster zieht keinen überraschten Blick auf sich – nur einen bewussten.\u003cbr\u003e• Türkis und Schwarz passen zu dem, was du ohnehin schon am Strand trägst.\u003cbr\u003e• Du überlegst beim Einpacken nicht lange – er passt schlicht dazu.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, schau dir die verfügbaren Größen an – Ober- und Unterteil sind separat wählbar.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 86.0, \"hip_max\": 91.0, \"bust_min\": 81.0, \"bust_max\": 86.0}, {\"name\": \"M\", \"hip_min\": 91.0, \"hip_max\": 96.0, \"bust_min\": 86.0, \"bust_max\": 91.0}, {\"name\": \"L\", \"hip_min\": 96.0, \"hip_max\": 101.0, \"bust_min\": 91.0, \"bust_max\": 96.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Bauch, Hüfte, Brust, BH-Größe – Ober- und Unterteil separat\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Damen Marmormuster sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser nicht dort bleibt, wo er sein soll\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWie Schnitt und Material beim Sitz im Alltag eine Rolle spielen können.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil verrutscht schon beim ersten Schwimmen\u003c\/li\u003e\n\u003cli\u003eBund drückt nach einer Stunde unangenehm\u003c\/li\u003e\n\u003cli\u003eOnline-Größen passen bei Bikinis selten wie erwartet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eMan kennt das: Man geht ins Wasser, taucht kurz unter – und danach sitzt der Bikini irgendwie anders als vorher. Das Oberteil ist verrutscht, der Bund hat sich verschoben. Man zieht nach, richtet, zieht nochmal. Es ist kein Drama, aber es zieht Aufmerksamkeit weg von dem, was man eigentlich gerade tut.\u003c\/p\u003e\n\u003cp\u003eBikinis, die bei Bewegung ihren Sitz verlieren, haben oft wenig mit schlechter Passform zu tun – sondern damit, wie Elasthan-Anteil und Schnitt zusammenspielen. Ein Stoff, der bei Zug nachgibt, aber nicht zurückfindet, verliert im Wasser schneller seinen Halt als einer, der auf Rückformung ausgelegt ist. Das ist kein Qualitätsurteil – es ist eine Frage der Materialkombination und des Schnitts.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini besteht aus 78 % Polyamid und 22 % Elasthan – eine Kombination, die bei normaler Belastung einen ruhigeren Sitz unterstützen kann. Ober- und Unterteil sind separat wählbar, was bei unterschiedlichen Proportionen oben und unten helfen kann, die Passform besser einzuschätzen. Wenn du allerdings intensivere Wassersportarten planst oder sehr präzise Passform für Leistungsschwimmen brauchst, ist ein speziell dafür entwickelter Schwimmanzug wahrscheinlich die passgenauerere Wahl.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der Schnitt dieses Bikins zu dem, was du am Wasser vor hast – ruhiges Baden, Strand, Urlaub?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein. Bauch, Hüfte, Brust und BH-Größe werden berücksichtigt.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil separat auswählen – so kannst du beide Teile deiner Proportion entsprechend kombinieren.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt beim Schwimmen in der Regel ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt auch außerhalb des Wassers stimmig – am Steg, beim Essen, unterwegs\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Abstraktes Marmormuster in Türkis-Schwarz – dezent und kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – hilfreich bei unterschiedlichen Proportionen\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – bei normaler Belastung auf ruhigen Sitz ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Größenrechner mit Bauch-, Hüft-, Brust- und BH-Größe als Anhaltspunkt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensives Schwimmsport oder Leistungsschwimmen nicht ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer auffällige, farbstarke Muster bevorzugt, findet dieses Design möglicherweise zu zurückhaltend\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Damen Marmormuster\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Kombination ist auf stabilen Sitz bei normaler Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße bei Bikinis online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar – Größenrechner berücksichtigt Bauch, Hüfte, Brust und BH-Größe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt nach einer Saison übersättigt\u003c\/td\u003e\n\u003ctd\u003eAbstraktes Marmormuster bewusst zurückhaltend gestaltet – auf Zeitlosigkeit ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Damen Marmormuster mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Damen Marmormuster im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Damen Marmormuster\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Damen Marmormuster\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Bikini Damen Marmormuster die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil sind separat wählbar. Für das Oberteil orientierst du dich an Brust- und BH-Größe, für das Unterteil an Bauch- und Hüftmaß. Unser Größenrechner unterstützt dich dabei – Körpergröße und Gewicht eingeben, und du bekommst einen Anhaltspunkt für deine Größe.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – zum Beispiel beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Stoff aus 78 % Polyamid und 22 % Elasthan ist auf Rückformung bei normaler Belastung ausgelegt. Bei ruhigem Baden, Strandalltag und gelegentlichem Schwimmen bleibt der Sitz in der Regel ruhig. Für intensive Wassersportarten ist ein spezieller Schwimmanzug in der Regel die passendere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – das verlängert die Formstabilität des Elasthan-Anteils.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst das Marmormuster zu anderen Strand-Outfits?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas türkis-schwarze abstrakte Muster hält sich farblich zurück und lässt sich gut mit schwarzen Shorts, weißen Leinenkleidern oder neutralen Strandtüchern kombinieren. Wer kräftigere Kontraste oder auffällige Prints bevorzugt, findet das Design möglicherweise zu dezent.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil des Bikins separat wählen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Ober- und Unterteil sind separat wählbar. Das kann hilfreich sein, wenn Brust- und Hüftmaß unterschiedlichen Größen entsprechen. So lässt sich die Passform für beide Teile unabhängig voneinander einschätzen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür Leistungsschwimmen oder sehr intensive Wasseraktivitäten ist dieser Bikini nicht ausgelegt. Wer maximalen Halt bei sportlichen Bewegungen benötigt, ist mit einem Sportbadeanzug oder einem speziell dafür konzipierten Schwimm-Bikini besser beraten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Türkis-schwarzes Marmormuster im Gegenlicht am Wasser – Linien variieren, kein starres Repeat\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini liegt auf hellem Untergrund – Mustertiefe von Nah sichtbar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Damen Marmormuster eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Damen Marmormuster\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€36.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Damen Marmormuster dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Damen Marmormuster\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0024.png?v=1750425801\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"36.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Schwarzweiß \/ L","offer_id":45418839998732,"sku":"CJYJ150335903CX","price":36.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarzweiß \/ M","offer_id":45418840031500,"sku":"CJYJ150335902BY","price":36.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarzweiß \/ S","offer_id":45418840064268,"sku":"CJYJ150335901AZ","price":36.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/IMG-20240610-WA0024.png?v=1750425801"},{"product_id":"marmorierter-bikini-triangel-look","title":"blauer Batik Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der den ganzen Tag sitzt – egal ob im Wasser oder am Ufer?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da ist – ohne dass du zweimal hinschauen musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages merkt man den Unterschied – nicht beim Anziehen, sondern beim zweiten, dritten Mal ins Wasser gehen.\u003c\/p\u003e\n  \u003ch2\u003eBlauer Batik Bikini Damen – Triangel-Schnitt mit ruhigem Muster für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nTriangel-Oberteil mit Batik-Muster in tiefen Blautönen – ein zweiteiliger Bikini für Damen, der sich optisch zurücknimmt und trotzdem auffällt.\u003c\/p\u003e\n\u003cp\u003eDas Batik-Muster entstand nicht als Trend-Entscheidung, sondern als visuelle Haltung: Blau auf Blau, leicht verwischt, wie Wasser auf Wasser. Der Farbverlauf wirkt nicht aufgesetzt – er erinnert an das Licht am frühen Morgen am See, wenn das Wasser noch glatt ist und die Farben ineinander übergehen. Wer die Bodensee-Region kennt, kennt genau diese Stille.\u003c\/p\u003e\n\u003cp\u003eDie Triangel-Form hält das Design leicht und feminin, ohne viel zu zeigen. Der marmorierte Batik-Bikini in Blau lässt sich mit einem weißen Leinencover-up verbinden oder einfach mit einer hellen Shorts – er braucht kein aufwendiges Drumherum. Die Blautöne reichen von mittlerem Blau bis fast Dunkelblau, was ihn vielseitig kombinierbar macht und Sommer für Sommer tragbar hält.\u003c\/p\u003e\n\u003cp\u003eBeim Hinlegen auf dem Handtuch wirkt das Muster ruhig und präsent zugleich. Beim Aufstehen und ins Wasser gehen bleibt der Look genau so – kein Muster, das schrill wirkt, wenn es nass ist. Wer ein Wochenende am See oder einen längeren Strandurlaub plant, hat mit einem solchen Bikini einen Begleiter, der weder zu viel noch zu wenig ist.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster wirkt nass anders als trocken – ruhiger, tiefer, fast wie dunkles Seewasser.\u003cbr\u003e• Der Triangel-Schnitt gibt Freiheit, ohne zu viel freizugeben – für alle, die einen dezenten Stil mögen.\u003cbr\u003e• Die Blautöne passen zu fast allem – Sandfarben, Weiß, Naturgrün – ohne zu dominieren.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn dir das Muster gefällt und du einen Bikini suchst, der schlicht bleibt ohne langweilig zu sein – schau dir die verfügbaren Größen an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"hip_min\": 70.0, \"hip_max\": 80.0, \"waist_min\": 66.0, \"waist_max\": 76.0}, {\"name\": \"M\", \"hip_min\": 74.0, \"hip_max\": 85.0, \"waist_min\": 70.0, \"waist_max\": 80.0}, {\"name\": \"L\", \"hip_min\": 78.0, \"hip_max\": 90.0, \"waist_min\": 74.0, \"waist_max\": 84.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material Oberteil: 82 % Polyester (Polyesterfaser)\u003c\/li\u003e\n\u003cli\u003e✔ Futter: 18 % Polyester\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: Triangel-Oberteil, zweiteiliger Bikini\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann blauer Batik Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser seinen Sitz verliert\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Muster und Passform – was beim Kauf wirklich zählt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil sitzt morgens gut, aber nach dem Schwimmen schon weniger\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bikinis sind schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eDas Muster sieht trocken gut aus, nass aber flach\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Der Bikini sitzt beim Anziehen gut, aber nach dem ersten längeren Schwimmen oder einem unbedarften Sprung ins Wasser verändert sich etwas – das Oberteil dreht sich leicht, das Unterteil verrutscht. Man zieht nach, richtet zurecht, und denkt dann doch mehr an den Sitz als ans Wasser.\u003c\/p\u003e\n\u003cp\u003eDas liegt oft weniger an der Größe als am Schnitt und der Materialzusammensetzung. Weiche Stoffe mit gutem Dehnungsanteil können sich besser anpassen – ein Triangel-Oberteil mit Bindeträgern lässt sich außerdem individuell einstellen, was bei vorgefertigten Bügel-Tops nicht möglich ist.\u003c\/p\u003e\n\u003cp\u003eDieser blaue Batik Bikini ist auf Alltagstragen am Wasser ausgelegt – für Strand, See und Pool, bei normaler Belastung. Er ist nicht für Leistungsschwimmen oder intensive Wassersportarten konzipiert. Wer Halt bei intensiven Bewegungen im Wasser benötigt, ist mit einem sportlichen Badeanzug oder einem Bikini mit festem Träger möglicherweise besser beraten. Wenn du eher entspannte Badetage, gelegentliches Schwimmen und viel Zeit am Ufer magst, kann dieser Bikini gut passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das Tragegefühl, das du dir vorstellst, zu einem leichten Triangel-Schnitt – oder suchst du eher festen Halt für aktive Wassertage?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die verfügbaren Optionen in Ruhe an – ohne Zeitdruck.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Badetag noch ruhig\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt am Wasser genauso wie auf dem Foto\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Batik-Muster in Blautönen – ruhig, aber nicht farblos\u003c\/li\u003e\n\u003cli\u003e✅ Triangel-Schnitt mit Bindeträgern – individuell einstellbar bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Leichter Polyesterstoff mit Futter – für Strand, See und Pool ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Zeitloses Design, das sich mit Neutralfarben kombinieren lässt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ausgelegt für Leistungsschwimmen oder intensive Wassersportarten\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer festen Halt durch Bügel oder breite Träger bevorzugt, findet hier kein strukturiertes Oberteil\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer kräftige, bunte Prints bevorzugt, empfindet das Muster möglicherweise als zu zurückhaltend\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ blauer Batik Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht bei Bewegung im Wasser\u003c\/td\u003e\n\u003ctd\u003eTriangel-Schnitt mit Bindeträgern – Sitz lässt sich individuell einstellen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt nass flach oder unansehnlich\u003c\/td\u003e\n\u003ctd\u003eBatik-Muster in Blautönen – wirkt nass tiefer, bleibt sichtbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße bei Bikinis online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht als Orientierung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDesigns wirken nach einer Saison schon überholt\u003c\/td\u003e\n\u003ctd\u003eZeitloses Batik-Muster in Blau – in der Regel länger tragbar als Trend-Prints\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei blauer Batik Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich blauer Batik Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: polyester fiber (polyester)Fabric composition content: 82 (%)Lining name: PolyesterLining composition: polyester fiber (polyester)Lining ingredient content: 18 (%)Applicable scene: swimming and wadingColor: pink, blue, pink blue\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eblauer Batik Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu blauer Batik Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim blauen Batik Bikini Damen die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner mit Körpergröße und Gewicht als Anhaltspunkt. Bei Unsicherheit zwischen zwei Größen empfiehlt sich in der Regel die größere Variante, damit das Oberteil genug Spielraum hat. Oberteil und Unterteil können je nach Angebot auch separat gewählt werden.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, lauwarmem Wasser ausspülen. Waschen bei 30 °C im Feinwaschgang, nicht im Trockner trocknen. So bleibt das Material elastisch und das Batik-Muster in seiner Farbintensität länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der marmorierte Triangel Bikini blau auch für sportliche Wasseraktivitäten geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist auf entspanntes Tragen am Wasser ausgelegt – Schwimmen, am Strand liegen, gelegentliches Planschen. Für intensive Wassersportarten oder Leistungsschwimmen ist er weniger ausgelegt; dafür eignen sich Modelle mit festen Trägern oder Bügel-Konstruktionen besser.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt das Batik-Muster, wenn der Bikini nass ist?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Muster verändert sich nass leicht – die Blautöne wirken tiefer und dunkler, ähnlich wie nasser Stoff das Licht anders bricht. Das Muster bleibt sichtbar und der Look bleibt ruhig.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich den blauen Batik Bikini Damen auch mit anderen Bikini-Teilen kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, das Triangel-Oberteil und das Unterteil lassen sich grundsätzlich mit anderen Teilen in passenden Blau- oder Neutraltönen kombinieren. Das dezente Batik-Muster harmoniert gut mit einfarbigen Partnerstücken in Weiß, Sand oder tiefem Blau.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Dunkelblaues Batik-Muster auf Triangel-Oberteil im Sonnenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini am Bodenseeufer – Muster spiegelt das Wasser wider\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann blauer Batik Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eblauer Batik Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass blauer Batik Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"blauer Batik Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/564584073323.jpg?v=1750425180\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.99\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blau mormoriert \/ L","offer_id":45418850681100,"sku":"CJYDYYLJ00464-Blue-L","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Blau mormoriert \/ M","offer_id":45418850713868,"sku":"CJYDYYLJ00464-Blue-M","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Blau mormoriert \/ S","offer_id":45418850746636,"sku":"CJYDYYLJ00464-Blue-S","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Sonnenaufgang \/ L","offer_id":45418850779404,"sku":"CJYDYYLJ00464-Pink blue-L","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Sonnenaufgang \/ M","offer_id":45418850812172,"sku":"CJYDYYLJ00464-Pink blue-M","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Sonnenaufgang \/ S","offer_id":45418850844940,"sku":"CJYDYYLJ00464-Pink blue-S","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Flamingopink \/ L","offer_id":45418850877708,"sku":"CJYDYYLJ00464-Pink-L","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Flamingopink \/ M","offer_id":45418850910476,"sku":"CJYDYYLJ00464-Pink-M","price":25.99,"currency_code":"EUR","in_stock":true},{"title":"Flamingopink \/ S","offer_id":45418850943244,"sku":"CJYDYYLJ00464-Pink-S","price":25.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/564584073323.jpg?v=1750425180"},{"product_id":"bikini-triangel-leuchte-uber-dich-hinaus","title":"silber metallic bikini damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen silbernen Bikini aus, der im Licht wirkt – und sich trotzdem ruhig trägt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Bikini am Strand einfach stimmt – ohne dass man ständig daran denkt.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd gerade bei glänzenden Stoffen merkt man den Unterschied oft erst, wenn man sich bewegt – oder ins Wasser geht.\u003c\/p\u003e\n  \u003ch2\u003eSilberner Bikini Damen – glänzend, gefüttert, für See und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Metallic-Bikini mit softem Innenfutter – blickdicht auch bei glänzendem Stoff, angenehm auf der Haut, leicht genug für warme Tage am Wasser.\u003c\/p\u003e\n\u003cp\u003eSilber am See sieht anders aus als auf dem Bildschirm. Wenn das Licht flach über das Wasser fällt – morgens oder am späten Nachmittag – nimmt dieser Bikini genau diese Reflexe auf. Kein aufgesetzter Glitzer, sondern ein gleichmäßiger Metalliceffekt, der im natürlichen Licht ruhig und klar wirkt. Wer schon einmal erlebt hat, wie das Sonnenlicht auf dem Bodensee spielt, kennt diesen Ton.\u003c\/p\u003e\n\u003cp\u003eDas Oberteil liegt flach an und zeigt keine Falten durch das Futter. Am Pool, wenn man sich auf die Sonnenliege setzt oder aufsteht, bleibt die Form erkennbar – der Glanz verteilt sich gleichmäßig, ohne zu zerknautschen. Am Strand, zum Cover-up oder mit einer Sonnenbrille kombiniert, funktioniert der Silberton als ruhiges Statement: sichtbar, aber nicht laut.\u003c\/p\u003e\n\u003cp\u003eFür Urlaubsfotos am Wasser ist der Metallic-Effekt bewusst photogen – das Licht setzt sich im Stoff ab und gibt jedem Bild eine klare Bildaussage. Als Geschenk oder für sich selbst: dieser Bikini ist für Momente gedacht, in denen man bewusst etwas trägt, das auffällt – ohne zu übertreiben.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff fühlt sich weicher an, als der Glanz erwarten lässt – das Futter liegt direkt auf der Haut.\u003cbr\u003e• Am Wasser wirkt das Silber klar und gleichmäßig, nicht fleckig oder unruhig.\u003cbr\u003e• Wenn man ihn anzieht, ist der erste Eindruck: ruhig, körpernah, präsent.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du eine Größe auswählst, hilft dir unser Größenrechner – gib einfach deine Maße ein.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 85.0, \"bust_max\": 91.0, \"waist_min\": 65.0, \"waist_max\": 71.0, \"length_min\": 20.0, \"length_max\": 26.0}, {\"name\": \"M\", \"bust_min\": 89.0, \"bust_max\": 95.0, \"waist_min\": 71.0, \"waist_max\": 77.0, \"length_min\": 21.0, \"length_max\": 27.0}, {\"name\": \"L\", \"bust_min\": 94.0, \"bust_max\": 100.0, \"waist_min\": 77.0, \"waist_max\": 83.0, \"length_min\": 22.0, \"length_max\": 28.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Leichter, formstabiler Polyester mit softem Innenfutter – blickdicht\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Handwäsche oder Schonwaschgang 30 °C, nicht im Trockner trocknen, liegend trocknen lassen\u003c\/li\u003e\n\u003cli\u003e✔ Verfügbare Maße: Brust, Taille, Oberteil-Länge\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann silber metallic bikini damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn glänzende Bademode dünn oder durchsichtig wirkt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas das Futter dabei verändert – und was es nicht verändert.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eGlänzende Stoffe wirken im echten Licht oft anders als erwartet\u003c\/li\u003e\n\u003cli\u003eOb blickdicht wirklich blickdicht ist, merkt man meist erst beim Anziehen\u003c\/li\u003e\n\u003cli\u003eForm und Glanz halten nach dem Waschen oft nicht so lang wie erhofft\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eAm Pool aufstehen, ins Wasser gehen, sich umdrehen – genau in diesen Momenten zeigt sich, ob ein Bikini hält, was sein Look verspricht. Bei metallicfarbenen Stoffen ist Blickdichte keine Selbstverständlichkeit: Das Gewebe ist oft fein, und ohne Futter kann Glanz schnell in Transparenz kippen.\u003c\/p\u003e\n\u003cp\u003eDer Grund dafür liegt im Material: Dünne Polyestergewebe mit Metallic-Effekt sind von Natur aus leicht. Ohne ein zweites Layer – ein Innenfutter – reicht das oft nicht aus, um bei Bewegung oder Nässe wirklich blickdicht zu bleiben.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist mit einem soften Innenfutter ausgelegt, das genau das abfangen soll. Das Material ist auf Blickdichte und Tragegefühl ausgerichtet – bei normaler Bade- und Strandnutzung. Wenn du eher dezente, matte Bademode magst oder einen Bikini für intensives Wassersporttraining suchst, könnte ein anderes Modell besser zu dir passen. Der Silberton ist bewusst sichtbar – das ist kein Alltagsbikini im klassischen Sinn.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie wichtig ist dir bei Bademode das Verhältnis aus sichtbarem Look und ruhigem Tragegefühl?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Brust, Taille und Oberteil-Länge ein, um eine Orientierung zu bekommen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eGröße auswählen und Maße vergleichen – in Ruhe, ohne Druck.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz beim Gehen und Hinsetzen am Strand\u003c\/li\u003e\n\u003cli\u003e→ Metallic-Effekt, der im Urlaubsfoto klar und gleichmäßig wirkt\u003c\/li\u003e\n\u003cli\u003e→ Kombination mit Cover-up und Sonnenbrille für einen abgestimmten Pool-Look\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Softes Innenfutter – bei normaler Strandnutzung blickdicht\u003c\/li\u003e\n\u003cli\u003e✅ Gleichmäßiger Metallic-Effekt, der im natürlichen Licht ruhig wirkt\u003c\/li\u003e\n\u003cli\u003e✅ Leichter, formstabiler Polyester – angenehm auf der Haut\u003c\/li\u003e\n\u003cli\u003e✅ Schnelltrocknend nach Wasserkontakt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht geeignet für sehr dezente, matte oder klassisch schlichte Bademode\u003c\/li\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder maximalen Halt weniger ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Pflege erfordert Handwäsche oder Schongang – kein Trockner\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ silber metallic bikini damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGlänzende Bikinis wirken oft durchsichtig oder halbtransparent\u003c\/td\u003e\n\u003ctd\u003eSoftes Innenfutter soll für mehr Blickdichte sorgen – auch bei Metallic-Stoff\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMetallic-Bademode verliert nach wenigen Wäschen Form und Glanz\u003c\/td\u003e\n\u003ctd\u003eSchonwaschgang und Lufttrocknung sind darauf ausgelegt, Form und Effekt länger zu erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eAuffällige Bikinis fühlen sich auf der Haut oft steif oder unangenehm an\u003c\/td\u003e\n\u003ctd\u003eDas Material ist auf eine weiche Haptik ausgelegt – der Glanz sitzt außen, das Futter innen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMode-Bikinis trocknen nach dem Schwimmen langsam\u003c\/td\u003e\n\u003ctd\u003eDer Polyesterstoff ist schnelltrocknend – kann den Tragekomfort nach dem Wasser verbessern\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei silber metallic bikini damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich silber metallic bikini damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Leichter, formstabiler Polyester mit softem Futter – blickdicht, angenehm auf der Haut und schnelltrocknend.\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht in den Trockner geben – zum Formerhalt liegend trocknen lassen.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003esilber metallic bikini damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu silber metallic bikini damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der silberne Metallic-Bikini wirklich blickdicht?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil und Unterteil sind mit einem soften Innenfutter ausgestattet, das bei normaler Strandnutzung für Blickdichte sorgen soll. Bei sehr hellem Gegenlicht oder stark nassem Stoff kann das Ergebnis variieren – das Futter reduziert dieses Risiko jedoch deutlich im Vergleich zu ungefütterten Modellen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Metallic-Bikini?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür diesen Bikini empfehlen wir, Brust, Taille und Oberteil-Länge zu messen und mit der Größentabelle zu vergleichen. Bei Unsicherheit zwischen zwei Größen kann es sinnvoll sein, die größere Variante zu wählen – besonders wenn du ein ruhigeres Tragegefühl bevorzugst.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen glänzenden Bikini, damit er die Form behält?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Dann im Schonwaschgang bei 30 °C oder per Handwäsche reinigen. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen. So bleibt der Metallic-Effekt und die Form des Futters in der Regel länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Situationen ist ein silber metallic Bikini gedacht?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist für Strand, Pool und Urlaubsmomente ausgelegt – also für Situationen, in denen der Look bewusst sichtbar sein darf. Für intensives Schwimmtraining oder Sport im Wasser ist er weniger geeignet. Wer schlichte, matte Bademode bevorzugt, wird mit einem anderen Schnitt glücklicher.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – zum Beispiel beim Schwimmen oder Hinsetzen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf normalen Strand- und Poolgebrauch ausgelegt. Bei ruhigem Schwimmen und Alltagsbewegungen am Wasser bleibt er in der Regel ruhig sitzen. Für Wassersport mit starken Bewegungen ist ein engerer Sportstyle-Bikini möglicherweise besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich den silbernen Bikini mit anderen Teilen kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer gleichmäßige Silberton lässt sich gut mit neutralen Cover-ups in Weiß, Ecru oder Schwarz kombinieren. Auch dunkle Leinenteile oder schlichte Sandalen funktionieren gut dazu. Der Metallic-Effekt macht ihn zu einem bewussten Look-Element – weniger zu einem unauffälligen Basic.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/trendige-bademode-fur-damen-2025-stilvoll-am-strand\"\u003eTrendige Bademode für Damen 2025: Stilvoll am Strand\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bademode-fur-frauen\"\u003eBademode für Frauen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Silberglanz im flachen Nachmittagslicht am See – gleichmäßig, ohne Flecken\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Auf der Sonnenliege sitzend – das Futter liegt ruhig, der Stoff zieht sich nicht\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann silber metallic bikini damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003esilber metallic bikini damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€27.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass silber metallic bikini damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"silber metallic bikini damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1ddfe1cc-23b3-4e7a-a1bb-ba5a3f1aa7a3.jpg?v=1750424726\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"27.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht in den Trockner geben – zum Formerhalt liegend trocknen lassen.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Schwarz \/ L","offer_id":45418876797196,"sku":"CJYJ197168109IR","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ M","offer_id":45418876829964,"sku":"CJYJ197168108HS","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ S","offer_id":45418876862732,"sku":"CJYJ197168107GT","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Rose \/ L","offer_id":45418876895500,"sku":"CJYJ197168106FU","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Rose \/ M","offer_id":45418876928268,"sku":"CJYJ197168105EV","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Rose \/ S","offer_id":45418876961036,"sku":"CJYJ197168104DW","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ L","offer_id":45418876993804,"sku":"CJYJ197168103CX","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ M","offer_id":45418877026572,"sku":"CJYJ197168102BY","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ S","offer_id":45418877059340,"sku":"CJYJ197168101AZ","price":27.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1ddfe1cc-23b3-4e7a-a1bb-ba5a3f1aa7a3.jpg?v=1750424726"},{"product_id":"bikini-sommerlook","title":"Blumenmuster Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Badetag einfach sitzt – und seinen Look behält?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini passt, ohne dass du den ganzen Tag daran denkst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim Anziehen, sondern erst nach ein paar Stunden am See – wenn alles noch da ist, wo es sein soll.\u003c\/p\u003e\n  \u003ch2\u003eBlumenmuster Bikini Damen – türkis mit Blätterprint für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Bikini für Sommertage am See oder Pool – mit einem ruhigen Blätterprint auf türkisem Grund, der farbig wirkt, ohne laut zu sein. Der Stoff (82 % Polyester) liegt leicht an, trocknet zügig und lässt sich gut mitnehmen.\u003c\/p\u003e\n\u003cp\u003eDas Blätter-Muster auf türkisem Untergrund hat eine klare, aber nicht überlastete Bildwelt. Die Motive wirken wie ein Ausschnitt aus einem sommerlichen Garten – botanisch, aber nicht kitschig. Wer florale Prints mag, ohne dass sie zu verspielt sind, findet hier einen Mittelweg: belebt genug für einen auffälligen Moment am Wasser, still genug, um sich einfach zu fühlen.\u003c\/p\u003e\n\u003cp\u003eDer türkise Farbton ist klar und satt – wie das Bodenseewasser an einem hellen Sommertag. Er harmoniert mit natürlichen Farben: Sandtöne, Weiß, helles Beige. Ein locker gebundener Pareo darüber, und der Look hat Kontext. Wer lieber auf reduzierte Unifarben setzt, für den ist dieses Design vermutlich nicht der richtige Ausgangspunkt – aber für alle, die Farbe mit Struktur suchen, kann er gut passen.\u003c\/p\u003e\n\u003cp\u003eAm Seeufer liegend, wenn die Sonne auf das Muster fällt, wirkt der Print lebendig ohne zu dominieren. Beim Aufstehen für einen Sprung ins Wasser sitzt das Set ruhig. Und hinterher, beim Trocknen auf einem Handtuch, lässt sich der Bikini unkompliziert zusammenfalten und in die Tasche stecken – kein schweres Material, kein langes Warten.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster wirkt im Sonnenlicht klarer als auf dem Bildschirm – das Türkis hat Tiefe, die Blätter bleiben zurückhaltend.\u003cbr\u003e• Das Material liegt beim Trocknen leicht an, ohne zu kneifen – für entspannte Stunden am Wasser.\u003cbr\u003e• Der Look lässt sich kombinieren, ohne dass man viel drum herum überlegen muss.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, kannst du die Größentabelle nutzen – sie hilft bei der Einschätzung, welche Größe am ehesten passt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 82.0, \"bust_max\": 87.0, \"waist_min\": 74.0, \"waist_max\": 79.0, \"hip_min\": 62.0, \"hip_max\": 67.0, \"height_min\": 150.0, \"height_max\": 160.0, \"weight_min\": 90.0, \"weight_max\": 105.0}, {\"name\": \"M\", \"bust_min\": 87.0, \"bust_max\": 92.0, \"waist_min\": 79.0, \"waist_max\": 84.0, \"hip_min\": 67.0, \"hip_max\": 72.0, \"height_min\": 155.0, \"height_max\": 160.0, \"weight_min\": 105.0, \"weight_max\": 115.0}, {\"name\": \"L\", \"bust_min\": 91.0, \"bust_max\": 96.0, \"waist_min\": 84.0, \"waist_max\": 89.0, \"hip_min\": 71.0, \"hip_max\": 76.0, \"height_min\": 160.0, \"height_max\": 165.0, \"weight_min\": 115.0, \"weight_max\": 125.0}, {\"name\": \"XL\", \"bust_min\": 96.0, \"bust_max\": 101.0, \"waist_min\": 89.0, \"waist_max\": 94.0, \"hip_min\": 76.0, \"hip_max\": 81.0, \"height_min\": 160.0, \"height_max\": 165.0, \"weight_min\": 125.0, \"weight_max\": 135.0}, {\"name\": \"2XL\", \"bust_min\": 101.0, \"bust_max\": 106.0, \"waist_min\": 94.0, \"waist_max\": 99.0, \"hip_min\": 81.0, \"hip_max\": 86.0, \"height_min\": 165.0, \"height_max\": 170.0, \"weight_min\": 135.0, \"weight_max\": 150.0}, {\"name\": \"3XL\", \"bust_min\": 106.0, \"bust_max\": 111.0, \"waist_min\": 99.0, \"waist_max\": 104.0, \"hip_min\": 86.0, \"hip_max\": 91.0, \"height_min\": 165.0, \"height_max\": 170.0, \"weight_min\": 150.0, \"weight_max\": 170.0}, {\"name\": \"4XL\", \"bust_min\": 111.0, \"bust_max\": 116.0, \"waist_min\": 104.0, \"waist_max\": 109.0, \"hip_min\": 91.0, \"hip_max\": 96.0, \"height_min\": 170.0, \"height_max\": 175.0, \"weight_min\": 170.0, \"weight_max\": 190.0}, {\"name\": \"5XL\", \"bust_min\": 116.0, \"bust_max\": 121.0, \"waist_min\": 109.0, \"waist_max\": 114.0, \"hip_min\": 96.0, \"hip_max\": 101.0, \"height_min\": 170.0, \"height_max\": 175.0, \"weight_min\": 190.0, \"weight_max\": 210.0}, {\"name\": \"6XL\", \"bust_min\": 121.0, \"bust_max\": 126.0, \"waist_min\": 114.0, \"waist_max\": 119.0, \"hip_min\": 101.0, \"hip_max\": 106.0, \"height_min\": 170.0, \"height_max\": 175.0, \"weight_min\": 210.0, \"weight_max\": 230.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 82 % Polyester (Polyesterfaser), Grammatur ca. 200 g\/m²\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: Türkis mit Blätter-Print (Displayfarben können leicht abweichen)\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Blumenmuster Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Schnitt und die Passform online schwer einzuschätzen sind\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin paar Anhaltspunkte, die die Entscheidung etwas leichter machen können.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDie Größe fällt kleiner aus als erwartet\u003c\/li\u003e\n\u003cli\u003eDer Print sieht auf dem Bild anders aus als in echt\u003c\/li\u003e\n\u003cli\u003eHalt und Sitz beim Schwimmen schwer vorauszusehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer Bademode online kauft, kennt das: Man wählt eine Größe, und trotzdem sitzt das Ergebnis manchmal etwas anders als gedacht. Gerade bei floralen Bikinis mit klar erkennbaren Schnitten fällt das auf – sobald man sich am Wasser bewegt oder hinsetzt.\u003c\/p\u003e\n\u003cp\u003eEin Grund dafür: Bikini-Größen werden von Hersteller zu Hersteller unterschiedlich geschnitten. Dieser Bikini folgt asiatischen Größenangaben, die in der Regel 1–2 Nummern kleiner ausfallen als europäische Größen. Das ist kein Fehler, aber ein Unterschied, den man kennen sollte. Die Größentabelle zeigt Maße für Brust, Taille, Hüfte, Körpergröße und Gewicht – ein konkreter Vergleich mit den eigenen Maßen kann helfen, näher an die passende Größe zu kommen.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist auf entspanntes Tragen ausgelegt – Sonnenbaden, Schwimmen, Bewegen am Ufer. Wer hingegen stark formenden Halt sucht oder eine Sportbademode für intensive Bewegung im Wasser benötigt, findet hier vermutlich nicht das Richtige. Und wer klare Unifarben ohne jedes Muster bevorzugt, für den ist der türkise Blätterprint eher nicht der eigene Stil.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst ein leicht gemusterter, farbiger Bikini für ruhige Badetage zu dem, was du dir vorstellst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Maße in der Größentabelle an – sie gibt einen guten Anhaltspunkt für die Auswahl.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz beim Sonnenbaden und entspanntem Schwimmen\u003c\/li\u003e\n\u003cli\u003e→ Kombination mit Pareo oder leichtem Cover-up für den Strandlook\u003c\/li\u003e\n\u003cli\u003e→ Leichter Stoff – unkompliziert einzupacken für See, Pool oder Urlaub\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Leichter Polyester-Stoff (82 %) – für zügiges Trocknen bei normaler Nutzung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ruhiger Blätterprint auf türkisem Grund – farbig, aber nicht überladen\u003c\/li\u003e\n\u003cli\u003e✅ Pflegehinweise transparent: Feinwäsche 30 °C, kein Trockner\u003c\/li\u003e\n\u003cli\u003e✅ Größentabelle mit konkreten Maßangaben als Orientierung verfügbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Asiatische Größen fallen in der Regel 1–2 Nummern kleiner aus – Umrechnung nötig\u003c\/li\u003e\n\u003cli\u003e⚠️ Weniger geeignet für stark formenden Halt oder intensive Bewegung im Wasser\u003c\/li\u003e\n\u003cli\u003e⚠️ Für Kundinnen, die ausschließlich Unifarben oder sehr reduzierte Designs suchen, kein passender Stil\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Blumenmuster Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGrößen fallen bei Bademode oft uneinheitlich aus\u003c\/td\u003e\n\u003ctd\u003eGrößentabelle mit Brust, Taille, Hüfte, Körpergröße und Gewicht – Maßvergleich kann die Trefferquote erhöhen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePrints wirken online häufig anders als im realen Licht\u003c\/td\u003e\n\u003ctd\u003eTransparenter Hinweis auf mögliche Displayabweichungen – der türkise Blätterprint wirkt im Sonnenlicht in der Regel klarer als am Bildschirm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFeine Stoffe verlieren bei falscher Pflege schneller Farbe und Form\u003c\/td\u003e\n\u003ctd\u003ePflegehinweis (Feinwäsche 30 °C, auf links waschen) soll den Print und die Optik länger erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFlorale Prints wirken schnell verspielt oder unruhig\u003c\/td\u003e\n\u003ctd\u003eDezentes Blätter-Muster auf türkisem Grund – farbig, aber ruhig in der Gesamtwirkung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Blumenmuster Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Blumenmuster Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: polyester fiber (polyester)Fabric composition content: 82 (%)Gram weight: 200 (g)Size Information:Note:1. Asian sizes are 1 to 2 sizes smaller than European and American people. Choose the larger size if your size between two sizes. Please allow 2-3 cm differences due to manual measurement.2. Please check the size chart carefully before you buy the item, if you don't know how to choose size, please contact our customer service.3.As you know, the different computers display colors differently, the color of the actual item may vary slightly from the following images.Packing list:Bikini X 1\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei maximal 30 °C empfohlen. Nicht im Trockner trocknen – an der Luft trocknet der Bikini dank des schnelltrocknenden Materials im Nu. Farben schonend waschen, um den floralen Print langfristig zu erhalten.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBlumenmuster Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Blumenmuster Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim Blumenmuster Bikini Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini folgt asiatischen Größenangaben, die in der Regel 1–2 Nummern kleiner ausfallen als europäische Größen. Wir empfehlen, die eigenen Maße – Brust, Taille, Hüfte, Körpergröße und Gewicht – mit der Größentabelle zu vergleichen. Bei Unsicherheit zwischen zwei Größen ist die größere Variante meist die sicherere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt der türkise Blumenprint in echt – nicht nur auf dem Foto?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDisplayfarben können je nach Gerät etwas abweichen. Der türkise Grundton ist in der Regel klar und satt, das Blätter-Muster zurückhaltend botanisch. Im direkten Sonnenlicht wirkt der Print meist lebendiger als auf dem Bildschirm. Wer ganz sicher gehen möchte, kann den Kundendienst nach einem Farbmuster fragen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini mit Blumenprint richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, um Salz, Sand oder Chlor zu entfernen. Dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – das schont den Stoff und erhält die Farben länger. Auf links gewaschen bleibt der Print in der Regel besser erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für Schwimmen geeignet oder nur zum Sonnenbaden?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist für entspannte Nutzung ausgelegt – Sonnenbaden, gelegentliches Schwimmen, Bewegen am Wasser. Für intensive Sportarten im Wasser oder sehr dynamische Bewegungen ist er weniger konzipiert. Bei ruhigem Einsatz am See oder Pool sitzt er bei normaler Belastung in der Regel stabil.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWelche Kombination passt zu einem türkisen Bikini mit Blättermuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eTürkis harmoniert gut mit Sandtönen, Weiß und hellem Beige. Ein leichter Pareo, ein weißes Cover-up oder eine helle Strandtasche passen gut dazu. Wer klare, reduzierte Looks bevorzugt, kann den Bikini auch solo tragen – das Muster gibt dem Ensemble bereits ausreichend Kontur.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich diesen Blumenmuster Bikini Damen für Urlaub an See und Pool nehmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Bikini ist auf genau diesen Einsatz ausgelegt: Strand, See und Pool im Sommerurlaub. Das Material ist leicht und trocknet zügig, was das Einpacken und Tragen auf Reisen unkompliziert macht. Wer starken Formhalt oder Sportfunktionen erwartet, sollte eher eine funktionale Bademode in Betracht ziehen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-damen-finden-sie-den-perfekten-badeanzug-fur-den-sommer-2024\"\u003eBadeanzüge für Damen: Finden Sie den perfekten Badeanzug für den Sommer 2024\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/wie-man-den-perfekten-bikini-fur-seine-korperform-findet\"\u003eWie man den perfekten Bikini für seine Körperform findet\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Türkiser Grundton mit botanischem Blätter-Print im Sonnenlicht am Seeufer\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini auf einem hellen Handtuch – Muster klar erkennbar, Farbe satt\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Blumenmuster Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBlumenmuster Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€27.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Blumenmuster Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Blumenmuster Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1623739823840.jpg?v=1750328253\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"27.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei maximal 30 °C empfohlen. Nicht im Trockner trocknen – an der Luft trocknet der Bikini dank des schnelltrocknenden Materials im Nu. Farben schonend waschen, um den floralen Print langfristig zu erhalten.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blau \/ L","offer_id":45418917495052,"sku":"CJYJ117482403CX","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ M","offer_id":45418917527820,"sku":"CJYJ117482402BY","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ S","offer_id":45418917560588,"sku":"CJYJ117482401AZ","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ XL","offer_id":45418917593356,"sku":"CJYJ117482404DW","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ L","offer_id":45418917626124,"sku":"CJYJ117482407GT","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ M","offer_id":45418917658892,"sku":"CJYJ117482406FU","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ S","offer_id":45418917691660,"sku":"CJYJ117482405EV","price":27.99,"currency_code":"EUR","in_stock":true},{"title":"Schneeweiß \/ XL","offer_id":45418917724428,"sku":"CJYJ117482408HS","price":27.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/1623739823840.jpg?v=1750328253"},{"product_id":"bikini-damen-set-3-teilig-mit-kleid","title":"gestreiftes Maxikleid Set Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht ein Maxikleid aus, das sich leicht trägt – und trotzdem wie eine bewusste Wahl aussieht?\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eMaxikleid Damen gestreift – Zweiteiler mit Streifenmuster für Strand und Sommer\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieses Maxikleid Set gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Zweiteiler mit klarem Streifenmuster – schlicht in der Wirkung, angenehm im Tragegefühl. Das Polyester-Material liegt weich auf der Haut und gibt bei Bewegung mit.\u003c\/p\u003e\n\u003cp\u003eDas Streifenmuster greift eine Ästhetik auf, die seit Jahrzehnten nicht aufdringlich wirkt – klare Linien, neutrale Haltung. Am Bodenseeufer, wo Wasser und Himmel klare Kontraste setzen, fühlt sich ein solches Muster wie ein visuelles Echo der Umgebung an. Nicht laut, nicht unsichtbar – einfach present.\u003c\/p\u003e\n\u003cp\u003eDie Streifen laufen gleichmäßig durch den Stoff, was dem Schnitt eine natürliche Struktur gibt. Verschiedene Farbtöne im Muster ermöglichen es, das Set mit neutralen Sandalen am Ufer zu tragen oder mit einem einfachen Leinenjacket über die Strandpromenade zu schlendern. Wer wenig kombinieren möchte, hat hier ein Stück, das von sich aus fertig wirkt.\u003c\/p\u003e\n\u003cp\u003eMorgens beim Frühstück auf dem Balkon mit Blick aufs Wasser – das Kleid liegt locker an, die Streifen fangen das Morgenlicht. Mittags am Strand, wenn man aufsteht und ins Wasser geht – der Stoff bewegt sich mit, ohne zu kleben. Abends beim Spaziergang, wenn die Luft kühler wird – das Set bleibt eine eigenständige Aussage, ohne Accessoire.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du ziehst es morgens an und denkst erst abends wieder daran, dass du es trägst.\u003cbr\u003e• Das Streifenmuster wirkt zu Jeans genauso ruhig wie zu bloßen Beinen am See.\u003cbr\u003e• Nichts fehlt – und vieles lässt sich ergänzen, wenn man möchte.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du deinen Stil magst, zeigt der Größenrechner unten, welche Maße zu welchem Schnitt passen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-dress\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_waist\"\u003eTaillenumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_waist\" name=\"bn_waist\" placeholder=\"z.B. 75\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_hip\"\u003eHüftumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_hip\" name=\"bn_hip\" placeholder=\"z.B. 95\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_dress()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_dress() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_dress() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_dress);\n            toggleGenderFields_dress();\n        } else {\n            setTimeout(initGenderToggle_dress, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_dress);\n    } else {\n        initGenderToggle_dress();\n    }\n})();\n\nfunction calculateSize_dress() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 65, \"bust\": 90, \"waist\": 75, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 72.0, \"bust_max\": 80.0, \"waist_min\": 60.0, \"waist_max\": 66.0, \"hip_min\": 78.0, \"hip_max\": 85.0}, {\"name\": \"M\", \"bust_min\": 80.0, \"bust_max\": 88.0, \"waist_min\": 64.0, \"waist_max\": 70.0, \"hip_min\": 85.0, \"hip_max\": 91.0}, {\"name\": \"L\", \"bust_min\": 88.0, \"bust_max\": 95.0, \"waist_min\": 68.0, \"waist_max\": 74.0, \"hip_min\": 91.0, \"hip_max\": 97.0}, {\"name\": \"XL\", \"bust_min\": 95.0, \"bust_max\": 103.0, \"waist_min\": 72.0, \"waist_max\": 78.0, \"hip_min\": 97.0, \"hip_max\": 105.0}, {\"name\": \"2XL\", \"bust_min\": 103.0, \"bust_max\": 110.0, \"waist_min\": 76.0, \"waist_max\": 82.0, \"hip_min\": 105.0, \"hip_max\": 112.0}]}];\n    const tolerance = {\"height_weight\": 1.5, \"weight_weight\": 1.0, \"hip_weight\": 2.5, \"bust_weight\": 2.5, \"waist_weight\": 3.0, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Elastisches Polyester – weich auf der Haut, leicht und bewegungsfreundlich\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: Zweiteiler – Oberteil und langer Rock separat tragbar\u003c\/li\u003e\n\u003cli\u003e✔ Passform: Maßangaben nach Brust, Taille und Hüfte verfügbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann gestreiftes Maxikleid Set Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Kleid online bestellen bedeutet, auf Passform zu hoffen\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eKlare Maßangaben und ein Größenrechner können diese Lücke ein Stück kleiner machen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Kleid sieht auf dem Bild gut aus, passt aber am Körper ganz anders\u003c\/li\u003e\n\u003cli\u003eDas Material fühlt sich dünner an als erwartet\u003c\/li\u003e\n\u003cli\u003eDie Form verliert sich nach ein paar Wochen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man bestellt ein Kleid, das auf Fotos genau richtig wirkt – und steht dann vor dem Spiegel und merkt, dass der Schnitt am Oberkörper zu eng ist oder die Länge anders fällt als gedacht. Nicht weil die Beschreibung falsch war, sondern weil Fotos und Bildschirme nur einen Teil zeigen können.\u003c\/p\u003e\n\u003cp\u003eBei Kleidern mit Streifenmuster kommt noch hinzu, dass die Linienführung am eigenen Körper anders wirkt als am Model. Das ist keine Frage von gut oder schlecht – es ist eine Frage von Proportionen. Deshalb sind konkrete Maßangaben an Brust, Taille und Hüfte hilfreicher als reine Größenbezeichnungen.\u003c\/p\u003e\n\u003cp\u003eDieses gestreifte Maxikleid Set ist als Zweiteiler geschnitten, was etwas mehr Spielraum bei der Passform gibt als ein einteiliges Kleid. Das elastische Material kann sich leicht anpassen. Wenn du allerdings sehr präzise Passform oder einen strukturierten Schnitt bevorzugst, könnte ein Kleid mit festem Futter oder Boning besser passen – das ist hier nicht vorgesehen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du weißt, ob du bei Kleidern eher auf Oberteil oder Unterteil achtest – welche Maßangabe wäre dann für dich die wichtigste?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eDie Maße findest du in der Größentabelle direkt unter der Auswahl.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Passt genau wie beschrieben\u003c\/li\u003e\n\u003cli\u003e→ Qualität stimmt für den Preis\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ gestreiftes Maxikleid Set Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePassform schwer einzuschätzen ohne Anprobieren\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner hilft bei der Wahl\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMaterial hält nicht was es verspricht\u003c\/td\u003e\n\u003ctd\u003ekonkrete Materialangaben in Produktdetails\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei gestreiftes Maxikleid Set Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich gestreiftes Maxikleid Set Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e👕\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eBeim Anziehen\u003c\/h4\u003e\n      \u003cp\u003eDer Stoff fühlt sich weich an – kein Kratzen, kein Ziepen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e👟\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Alltag\u003c\/h4\u003e\n      \u003cp\u003eBeim Bewegen bleibt der Sitz meist ruhig. Weniger Nachjustieren als bei lockeren Schnitten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🏠\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eZuhause\u003c\/h4\u003e\n      \u003cp\u003eAuch nach Stunden: Bequem, ohne Druckstellen oder Einschnürungen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧺\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach der Wäsche\u003c\/h4\u003e\n      \u003cp\u003eForm und Farbe bleiben bei schonender Pflege oft länger schön. Langlebig, nicht nur für eine Saison.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Weiches, elastisches Polyester – angenehm auf der Haut, schnell trocknend und formbeständig. Ideal für lange Sommertage am Wasser.\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen – am besten an der frischen Bodensee-Luft trocknen lassen.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003egestreiftes Maxikleid Set Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu gestreiftes Maxikleid Set Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie fällt die Größe aus?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze den Größenrechner – Körpergröße und Gewicht reichen für eine erste Einschätzung. Bei Unsicherheit eine Größe größer wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich das Produkt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBei 30 °C im Schonwaschgang waschen, nicht im Trockner trocknen. Auf links gewaschen bleibt Form und Material länger schön.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Anlässe eignet es sich?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eBitte nutze die Produktdetails oder kontaktiere uns – wir helfen gerne weiter.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/bikini-grosse-grossen\"\u003eBikini große Größen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Damen Kleidung schlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Basic Kleidung Alltag\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann gestreiftes Maxikleid Set Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003egestreiftes Maxikleid Set Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€37.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass gestreiftes Maxikleid Set Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"gestreiftes Maxikleid Set Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/e37321e5-9fb3-47ab-89df-1c1d8e0b4f3e.jpg?v=1714728774\", \"category\": \"dress\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"37.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen – am besten an der frischen Bodensee-Luft trocknen lassen.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blau \/ L","offer_id":45418955505932,"sku":"CJYJ191058703CX","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ M","offer_id":45418955538700,"sku":"CJYJ191058702BY","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ S","offer_id":45418955571468,"sku":"CJYJ191058701AZ","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Blau \/ XL","offer_id":45418955604236,"sku":"CJYJ191058704DW","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":45418955637004,"sku":"CJYJ191058707GT","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":45418955669772,"sku":"CJYJ191058706FU","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ S","offer_id":45418955702540,"sku":"CJYJ191058705EV","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ XL","offer_id":45418955735308,"sku":"CJYJ191058708HS","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ L","offer_id":45418955768076,"sku":"CJYJ191058711KP","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ M","offer_id":45418955800844,"sku":"CJYJ191058710JQ","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ S","offer_id":45418955833612,"sku":"CJYJ191058709IR","price":37.99,"currency_code":"EUR","in_stock":true},{"title":"Schwarz \/ XL","offer_id":45418955866380,"sku":"CJYJ191058712LO","price":37.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/e37321e5-9fb3-47ab-89df-1c1d8e0b4f3e.jpg?v=1714728774"},{"product_id":"bikini-triangel-mit-schnurung-und-wellig-2025","title":"Bikini Set Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eBikini der im Wasser verrutscht und nach einer Woche ausliert\u003c\/p\u003e\u003c\/div\u003e\n  \n  \n  \u003ch2\u003eBikini Set Damen mit Haltung – für See und Strand\u003c\/h2\u003e\n\n\u003cp\u003eAm see, wenn du ins Wasser gehst: Das Design 'dezent, alltagstauglich, unaufdringlich' wirkt bewusst ruhig – nicht laut, nicht hektisch. Es soll dich begleiten, ohne dass es sich nach Verkleidung anfühlt, und genau dabei zählt der erste Eindruck auf der Haut: leicht und frei.\u003c\/p\u003e\n\n\u003cp\u003eIm Alltag – zum Beispiel auf dem Weg ins Café oder kurz am Ufer – zeigt sich, warum klare Linien und eine zurückhaltende Farbwelt oft leichter zu kombinieren sind. Wenn du schlichte Formen magst, könnte das passen. Wenn du verspielte Details oder starke Kontraste suchst, ist das vielleicht nicht dein Stil.\u003c\/p\u003e\n\n\u003cp\u003eEin weiterer Moment: zuhause auf dem Balkon, wenn du kurz rausgehst, Luft holst und merkst, dass du dich nicht \"zurechtrücken\" willst. Genau da ist \"ruhig\" nicht nur eine Optik, sondern ein Gefühl: leicht und frei – ohne Druck, ohne Drama.\u003c\/p\u003e\n\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff wirkt leicht und frei – ohne dass du dich beobachtet fühlst\u003cbr\u003e\n• Der Look bleibt ruhig – auch, wenn um dich herum viel los ist\u003cbr\u003e\n• Es kombiniert sich leicht – ohne lange vor dem Spiegel zu stehen\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eWähle deine Größe – oder nutze den Größenrechner als kurze Entscheidungshilfe.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"length_min\": 19.5, \"length_max\": 25.5, \"bust_min\": 85.0, \"bust_max\": 91.0, \"height_min\": 7.0, \"height_max\": 17.0, \"width_min\": 7.199999999999999, \"width_max\": 13.2, \"waist_min\": 65.0, \"waist_max\": 71.0}, {\"name\": \"M\", \"length_min\": 20.5, \"length_max\": 26.5, \"bust_min\": 89.0, \"bust_max\": 95.0, \"height_min\": 8.0, \"height_max\": 18.0, \"width_min\": 8.2, \"width_max\": 14.2, \"waist_min\": 69.0, \"waist_max\": 75.0}, {\"name\": \"L\", \"length_min\": 21.5, \"length_max\": 27.5, \"bust_min\": 94.0, \"bust_max\": 100.0, \"height_min\": 9.0, \"height_max\": 19.0, \"width_min\": 9.2, \"width_max\": 15.2, \"waist_min\": 74.0, \"waist_max\": 80.0}, {\"name\": \"XL\", \"length_min\": 22.5, \"length_max\": 28.5, \"bust_min\": 99.0, \"bust_max\": 105.0, \"height_min\": 10.0, \"height_max\": 20.0, \"width_min\": 10.2, \"width_max\": 16.2, \"waist_min\": 79.0, \"waist_max\": 85.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Produkttyp: bikini\u003c\/li\u003e\n\u003cli\u003e✔ Material: Hochwertiges, elastisches Polyamid – hautfreundlich, formstabil und schnelltrocknend\u003c\/li\u003e\n\u003cli\u003e✔ Verarbeitung: Sorgfältig verarbeitet\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Set Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Badebekleidung rutscht, obwohl sie passen sollte\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eVielleicht kennst du das: am See, wenn du ins Wasser gehst und merkst, dass etwas nicht stimmt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eRutscht bei Bewegung\u003c\/li\u003e\n\u003cli\u003eDrückt am Bund\u003c\/li\u003e\n\u003cli\u003eFühlt sich nass unangenehm an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eVielleicht kennst du das: Du ziehst etwas an, die Größe stimmt laut Etikett – aber am See merkst du, dass es zwickt, rutscht oder einfach nicht mitgeht. Das liegt oft nicht an dir, sondern am Schnitt.\u003c\/p\u003e\n\u003cp\u003eDie Ursache ist meist technisch: Bund zu eng, Stoff zu starr, Passform zu generisch. Kein Drama – nur eine Frage der Konstruktion.\u003c\/p\u003e\n\u003cp\u003eBikini Set Damen setzt hier an: Der Schnitt ist so konzipiert, dass er sich anpasst, ohne nachzugeben. Ob das für dich passt, hängt davon ab, wie du dich bewegst. Wenn du maximale Bewegungsfreiheit brauchst, könnte das funktionieren. Wenn du eher festen Halt bevorzugst, gibt es vielleicht bessere Optionen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eIst dir wichtiger: Halt oder Freiheit?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt \u0026amp; Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du dir unsicher bist, probiere es aus – ohne Druck.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil hält auch beim Schwimmen\u003c\/li\u003e\n\u003cli\u003e→ Sitzt nach einer Woche Strand noch wie am ersten Tag\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Set Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht im Wasser\u003c\/td\u003e\n\u003ctd\u003eauf stabilen Sitz bei Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarben verblassen nach der Saison\u003c\/td\u003e\n\u003ctd\u003eMaterial auf UV- und Salzwasser-Kontakt ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Set Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Set Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Hochwertiges, elastisches Polyamid – hautfreundlich, formstabil und schnelltrocknend\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen. Liegend trocknen, um die Form zu erhalten.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Set Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Set Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich das Produkt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/push-up-bikini\"\u003ePush-up Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/bikini-grosse-grossen\"\u003eBikini große Größen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini Damen hoher Bund\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"zweiteiliger Bikini sportlich\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Set Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Set Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Set Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Set Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN010FPpne2ALhV99zSMU__2201489998187-0-cib.jpg?v=1750327541\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht im Trockner trocknen. Liegend trocknen, um die Form zu erhalten.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Khaki \/ L","offer_id":45418979852556,"sku":"CJYJ197182103CX","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ M","offer_id":45418979885324,"sku":"CJYJ197182102BY","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ S","offer_id":45418979918092,"sku":"CJYJ197182101AZ","price":29.99,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ XL","offer_id":45418979950860,"sku":"CJYJ197182104DW","price":29.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN010FPpne2ALhV99zSMU__2201489998187-0-cib.jpg?v=1750327541"},{"product_id":"bikini-damen-new-look2024-triangel","title":"zweifarbiger Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen zweifarbigen Bikini aus, der den ganzen Tag am See ruhig sitzt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du das Gefühl, wenn ein Bikini sich einfach richtig anfühlt – ohne dass du darüber nachdenken musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim ersten Anziehen, sondern erst nach ein paar Stunden am Wasser.\u003c\/p\u003e\n  \u003ch2\u003eZweifarbiger Bikini Damen in Türkis-Weiß – schlicht für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin klarer Farbmix aus Türkis und Weiß – ruhig genug für entspannte Tage, deutlich genug um zu wirken. Der elastische Polyamid-Stoff liegt weich auf der Haut und passt sich der Bewegung an.\u003c\/p\u003e\n\u003cp\u003eDas Zweifarbige ist keine Dekoration, sondern eine Entscheidung: Türkis trifft Weiß an einer klaren Linie – ohne Muster, ohne Aufdruck. Der Blick fällt auf die Farbgrenze, bleibt dort kurz, geht weiter. So wirkt dieses Bikini-Set am Bodensee-Ufer genau wie am Pool im Urlaub: präsent, aber nie laut. Die Kombination aus kühlem Türkis und klarem Weiß erinnert an Wasser und Himmel an einem stillen Sommertag.\u003c\/p\u003e\n\u003cp\u003eDas Oberteil trägt sich leicht am Körper – du stehst auf vom Liegestuhl, gehst ins Wasser, kommst zurück. Das Türkis wirkt nass fast intensiver als trocken, das Weiß bleibt klar. Die Farbwirkung hält, solange du die Pflegehinweise beachtest: kurz ausspülen, Schatten zum Trocknen. Kombineirt mit einem hellen Strandtuch oder einer einfachen Leinenshorts bleibt der Look ruhig und stimmig.\u003c\/p\u003e\n\u003cp\u003eDieser zweifarbige Bikini Damen passt zu Tagen, an denen du nicht viel nachdenken möchtest – weder über das Outfit noch über den Stoff auf der Haut. Am Badesee, auf dem Balkon danach, oder eingepackt in die Reisetasche für den nächsten Urlaub.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Stoff liegt weich an – auch noch nach zwei Stunden im Schatten auf dem Handtuch.\u003cbr\u003e• Die Farbgrenze zwischen Türkis und Weiß bleibt sauber – kein Ausbluten, kein Verblassen bei normaler Pflege.\u003cbr\u003e• Du trägst ihn, ohne daran zu denken – das ist vielleicht das deutlichste Zeichen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWähle deine Größe über die Maßtabelle – Oberteil und Unterteil lassen sich getrennt bestellen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"height_min\": 153, \"height_max\": 163, \"weight_min\": 50, \"weight_max\": 60}, {\"name\": \"M\", \"height_min\": 158, \"height_max\": 168, \"weight_min\": 58, \"weight_max\": 68}, {\"name\": \"L\", \"height_min\": 163, \"height_max\": 173, \"weight_min\": 66, \"weight_max\": 76}, {\"name\": \"XL\", \"height_min\": 168, \"height_max\": 178, \"weight_min\": 74, \"weight_max\": 84}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyamid, elastisch und hautfreundlich\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: Türkis \/ Weiß, zweifarbig ohne Muster\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, im Schatten trocknen, nicht im Trockner\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann zweifarbiger Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini beim Bewegen unnötig unruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWorauf es bei Passform und Material wirklich ankommt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Stoff fühlt sich nass steif oder unangenehm an\u003c\/li\u003e\n\u003cli\u003eDie Farbe wirkt nach wenigen Badetagen schon stumpf\u003c\/li\u003e\n\u003cli\u003eDer Schnitt sitzt beim Gehen oder Schwimmen nicht ruhig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst ein paar Züge, kommst wieder raus – und merkst, dass du nachziehen oder nachkorrigieren musst. Nicht dramatisch, aber da. Dieses leichte Unbehagen kennen viele vom Tragen von Bademode, die nicht ganz auf den eigenen Körperbau abgestimmt ist.\u003c\/p\u003e\n\u003cp\u003eDer Grund ist meistens nicht der Schnitt allein, sondern die Kombination aus Materialelastizität und Körperform. Ein Stoff, der sich zu wenig anpasst, zieht bei jeder Bewegung anders – beim Gehen, beim Hinsetzen auf dem Handtuch, beim Aufstehen. Das ist keine Frage der Qualität im abstrakten Sinne, sondern der Passgenauigkeit für den eigenen Körper.\u003c\/p\u003e\n\u003cp\u003eDer elastische Polyamid-Stoff dieses Bikinis ist auf ein hautnahes Tragegefühl ausgelegt – er kann dazu beitragen, dass das Oberteil und die Hose bei normaler Bewegung ruhig sitzen bleiben. Das ist kein Versprechen, sondern ein Anhaltspunkt: Wie jeder Bikini sitzt, hängt vom individuellen Körperbau ab. Wenn du sehr starken formenden Support erwartest oder einen stark kontrastierenden, strukturierten Look bevorzugst, könnte dieser schlichte Zweiteiler nicht ganz deinem Stil entsprechen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der ruhige, zweifarbige Schnitt zu dem, wie du Bademode am liebsten trägst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein. Die verfügbaren Maße: Oberteil-Länge, Brust, Mold cup height, Mold cup bottom width, Unterteil-Länge und Taille.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Maßtabelle in Ruhe an – Oberteil und Unterteil können separat in verschiedenen Größen gewählt werden.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Am Bodensee-Ufer oder Pool getragen – der Stoff trocknet in der Regel zügig\u003c\/li\u003e\n\u003cli\u003e→ Auf Reisen als leicht zu pflegende Bademode dabei\u003c\/li\u003e\n\u003cli\u003e→ Als Farbakzent an sonnigen Sommertagen am See gewählt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Elastischer Polyamid-Stoff – auf hautnahes Tragegefühl ausgelegt, bei normaler Bewegung\u003c\/li\u003e\n\u003cli\u003e✅ Zweifarbiges Design ohne Muster – ruhig kombinierbar mit Strandtuch, Shorts, Urlaubsoutfit\u003c\/li\u003e\n\u003cli\u003e✅ Oberteil und Unterteil separat wählbar – für unterschiedliche Maße oben und unten\u003c\/li\u003e\n\u003cli\u003e✅ Pflegehinweis klar: kurz ausspülen, Feinwäsche 30 °C, im Schatten trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Kein formender oder strukturierender Support – wer das erwartet, findet hier nicht das Richtige\u003c\/li\u003e\n\u003cli\u003e⚠️ Helles, ruhiges Farbdesign – für alle, die lieber kräftige Kontraste oder Muster tragen, ist das nicht der passende Stil\u003c\/li\u003e\n\u003cli\u003e⚠️ Pflege braucht etwas Sorgfalt – wer maschinenfeste, robuste Bademode sucht, sollte das bedenken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ zweifarbiger Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStoff fühlt sich nass steif oder kratzig an\u003c\/td\u003e\n\u003ctd\u003eElastischer Polyamid-Stoff, der auf ein weiches, hautnahes Tragegefühl ausgelegt ist – auch nass\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eHelle Farben verblassen schnell nach Sonne und Wasser\u003c\/td\u003e\n\u003ctd\u003eFarbstabilität kann durch materialschonende Pflege (Schatten trocknen, ausspülen) länger erhalten werden\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePassform verrutscht bei Bewegung oder beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eElastischer Aufbau kann bei normaler Bewegung zu einem ruhigeren Sitz beitragen – abhängig von Größenwahl und Körperform\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil und Unterteil nur in einer Größe erhältlich\u003c\/td\u003e\n\u003ctd\u003eOberteil und Unterteil lassen sich in unterschiedlichen Größen kombinieren\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei zweifarbiger Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich zweifarbiger Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Hautfreundlicher, elastischer Polyamid-Stoff – angenehm weich, schnelltrocknend und pflegeleicht. Fühlt sich an wie eine zweite Haut.\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht in den Trockner geben. Im Schatten trocknen lassen, um Farbe und Elastizität zu erhalten.\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003ezweifarbiger Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu zweifarbiger Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim zweifarbigen Bikini Damen die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOberteil und Unterteil können in unterschiedlichen Größen bestellt werden. Relevant sind die Maße: Oberteil-Länge, Brust, Mold cup height, Mold cup bottom width, Unterteil-Länge und Taille. Nutze den Größenrechner und miss dich vor der Bestellung ab – bei Unsicherheit zwischen zwei Größen kann es helfen, beim Oberteil auf die Bustweite, beim Unterteil auf den Taillenumfang zu achten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich diesen Bikini Set Damen zweifarbig für Strand und See tragen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Bikini ist auf die Nutzung am Strand und See ausgelegt. Der elastische Polyamid-Stoff ist auf ein angenehmes Tragegefühl bei normaler Bewegung ausgerichtet – beim Schwimmen, Spazierengehen am Ufer oder Entspannen auf dem Handtuch.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Bikini richtig, damit die Farbe erhalten bleibt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Waschen bei 30 °C im Feinwasch- oder Schonprogramm. Im Schatten trocknen – direktes Sonnenlicht und der Trockner können die Farbe und Elastizität des Materials mit der Zeit beeinflussen. Nicht im Trockner trocknen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eSitzt der Bund bei Bewegung ruhig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer elastische Stoff ist auf ein hautnahes, anpassungsfähiges Tragegefühl ausgelegt und kann bei normaler Bewegung – Gehen, Hinsetzen, Schwimmen – dazu beitragen, dass der Bund ruhig sitzt. Wie sicher der Sitz ist, hängt aber vom individuellen Körperbau und der gewählten Größe ab. Eine genaue Maßnahme vor der Bestellung hilft hier am meisten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen ist dieser Bikini weniger geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWenn du sehr starken formenden Support oder strukturierende Einlagen erwartest, ist dieser schlichte Zweiteiler möglicherweise nicht die passende Wahl. Auch für Käuferinnen, die sehr dunkle oder stark gemusterte Bademode bevorzugen, wirkt das ruhige Türkis-Weiß-Design eventuell zu zurückhaltend.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt die Farbe Türkis-Weiß nass und trocken?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Türkis wirkt im nassen Zustand in der Regel etwas intensiver als trocken, das Weiß bleibt klar. Die Farbwirkung kann durch materialschonende Pflege – Ausspülen nach dem Baden, Trocknen im Schatten – länger erhalten werden. Ein Versprechen für dauerhafte Farbstabilität unter allen Bedingungen kann kein Hersteller geben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/trendige-bademode-fur-damen-2025-stilvoll-am-strand\"\u003eTrendige Bademode für Damen 2025: Stilvoll am Strand\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bademode-fur-frauen\"\u003eBademode für Frauen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Klare Farbgrenze zwischen Türkis und Weiß – ruhig und deutlich zugleich\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Türkis wirkt nass intensiver – der Kontrast zum Weiß bleibt sichtbar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann zweifarbiger Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003ezweifarbiger Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€30.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass zweifarbiger Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"zweifarbiger Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN01glWl9y2ALhUtmQK2i__2201489998187-0-cib.jpg?v=1714728770\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"30.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen. Nicht in den Trockner geben. Im Schatten trocknen lassen, um Farbe und Elastizität zu erhalten.\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Marshmallow \/ L","offer_id":45418998726924,"sku":"CJYJ197185303CX","price":30.99,"currency_code":"EUR","in_stock":true},{"title":"Marshmallow \/ M","offer_id":45418998759692,"sku":"CJYJ197185302BY","price":30.99,"currency_code":"EUR","in_stock":true},{"title":"Marshmallow \/ S","offer_id":45418998792460,"sku":"CJYJ197185301AZ","price":30.99,"currency_code":"EUR","in_stock":true},{"title":"Marshmallow \/ XL","offer_id":45418998825228,"sku":"CJYJ197185304DW","price":30.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN01glWl9y2ALhUtmQK2i__2201489998187-0-cib.jpg?v=1714728770"},{"product_id":"bikini-blumenmuster-3-teilig-must-have-2024","title":"Blumenmuster Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der den ganzen Tag sitzt – und dabei leicht bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da ist – ohne dass du mittags nochmal nachziehen musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau da macht sich der Unterschied bemerkbar – nicht beim ersten Anziehen, sondern drei Stunden später am See.\u003c\/p\u003e\n  \u003ch2\u003eBlumenmuster Bikini Damen – floraler Print für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nTropisches Blumen- und Palmblatt-Muster mit geometrischen Bordüren – ein Bikini-Set für Tage am Wasser, der seine Farben behält und sich nach dem Tragen unkompliziert pflegen lässt.\u003c\/p\u003e\n\u003cp\u003eDas Muster greift auf eine Bildwelt zurück, die vielen Sommerurlaube vertraut ist: große Blüten, weiche Blätter, helle Farben – ruhig angeordnet, nicht überladen. Am Ufer des Bodensees oder im Handtuchkorb am Pool wirkt dieser Blumenmuster Bikini für Damen ähnlich wie ein Lieblingskleid – man greift morgens danach, ohne lange nachzudenken.\u003c\/p\u003e\n\u003cp\u003eDie floralen Motive sind auf einem hellen Grund platziert, was dazu beitragen kann, dass das Muster auch bei Bewegung klar und ausgewogen bleibt – nicht unruhig, sondern eher verspielt und weich. Die geometrischen Bordüren geben dem Set eine leichte Struktur, die das Blumenmuster einrahmt. Für viele Figuren und Hauttypen können florale Prints mit klarer Linienführung gut funktionieren – das ist aber vor allem eine Frage des persönlichen Geschmacks.\u003c\/p\u003e\n\u003cp\u003eAm Morgen beim Frühstück auf dem Balkon – das Oberteil noch lose über der Schulter. Mittags beim Sprung vom Steg in den See. Nachmittags beim Schlendern durch die Gassen des nächsten Ferienorts, mit einem Sarong locker um die Hüften: Das Set lässt sich in diesen Momenten unkompliziert tragen, ohne dass das Muster zu laut oder zu leise wirkt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster wirkt auch aus der Nähe klar – nicht verwaschen oder kleinteilig.\u003cbr\u003e\n• Das Set lässt sich mit einem Strandrock oder einer Shorts leicht kombinieren, ohne zu konkurrieren.\u003cbr\u003e\n• Wer den ganzen Tag am Wasser ist, merkt, dass sich das Material im Laufe des Tages nicht schwer anfühlt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle deine Größe weiter unten – oder schau dir zuerst die Passform-Details an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"height_min\": 153, \"height_max\": 163, \"weight_min\": 50, \"weight_max\": 60}, {\"name\": \"M\", \"height_min\": 158, \"height_max\": 168, \"weight_min\": 58, \"weight_max\": 68}, {\"name\": \"L\", \"height_min\": 163, \"height_max\": 173, \"weight_min\": 66, \"weight_max\": 76}, {\"name\": \"XL\", \"height_min\": 168, \"height_max\": 178, \"weight_min\": 74, \"weight_max\": 84}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyester – pflegeleicht, ausgelegt für Formstabilität\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Schonwaschgang 30 °C oder Handwäsche, nicht im Trockner trocknen\u003c\/li\u003e\n\u003cli\u003e✔ Muster: Tropisches Blumen- und Palmblatt-Muster mit geometrischen Bordüren\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Blumenmuster Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Set im Laufe des Tages Fragen aufwirft\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eMuster, Material und Pflege – was wirklich zählt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Muster wirkt auf Bildern anders als in echt\u003c\/li\u003e\n\u003cli\u003eOberteil und Hose fühlen sich nicht wie ein Set an\u003c\/li\u003e\n\u003cli\u003eDas Material verliert nach dem Waschen seine Form\u003c\/li\u003e\n\u003cli\u003eDer Bikini sitzt morgens gut – aber hält das den ganzen Tag\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eEs gibt diesen Moment am frühen Nachmittag, wenn man vom Wasser zurückkommt und merkt: Alles sitzt noch wie am Anfang. Das ist nicht selbstverständlich – und genau dieser Moment zeigt, ob Material und Schnitt zusammenpassen.\u003c\/p\u003e\n\u003cp\u003eViele Bikinis in dieser Kategorie haben ein ähnliches Ausgangsproblem: Das Muster wirkt online kräftiger als in echt, das Material trocknet zu langsam oder zieht sich nach ein paar Wäschen leicht zusammen. Oberteil und Hose fühlen sich manchmal wie zwei verschiedene Teile an – einer zu straff, der andere zu locker.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist aus pflegeleichtem Polyester gefertigt, das auf Formstabilität ausgelegt ist. Eine Schonwäsche bei 30 °C oder Handwäsche kann dazu beitragen, dass das Muster und die Passform länger erhalten bleiben – ein Versprechen ist das nicht, aber ein guter Anhaltspunkt. Wenn du lieber Bademode aus natürlichen Fasern trägst, ist dieses Set möglicherweise nicht das Richtige für dich – das Polyester hat andere Eigenschaften als etwa Baumwolle.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst dir die Idee eines floralen Bikinis für Strand und See – oder suchst du eher etwas Ruhigeres ohne Muster?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eDie Größentabelle weiter unten zeigt dir Oberteil-Länge, Brust, Taille und Hüfte – nimm dir kurz Zeit dafür, bevor du eine Größe wählst.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ getragen am Bodensee und bei Sommerurlauben\u003c\/li\u003e\n\u003cli\u003e→ genutzt im Freibad, am Pool und am Strand\u003c\/li\u003e\n\u003cli\u003e→ kombiniert mit Strandrock oder leichter Shorts für den ganzen Tag draußen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Tropisches Blumenmuster mit geometrischen Bordüren – klar, nicht überladen\u003c\/li\u003e\n\u003cli\u003e✅ Pflegeleichtes Polyester – ausgelegt für Formstabilität bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Schonwäsche bei 30 °C – geringer Pflegeaufwand im Alltag\u003c\/li\u003e\n\u003cli\u003e✅ Bikini-Set mit aufeinander abgestimmtem Oberteil und Unterteil\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Weniger geeignet, wenn du Bademode aus natürlichen Fasern wie Baumwolle bevorzugst\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht ideal, wenn du ein sehr schlichtes, gemusterfreies Design suchst\u003c\/li\u003e\n\u003cli\u003e⚠️ Für stark stützende Swimwear-Bedürfnisse möglicherweise nicht ausreichend\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Blumenmuster Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt online kräftig, in echt aber unruhig oder kleinteilig\u003c\/td\u003e\n\u003ctd\u003eDas Blumenmuster ist auf einem ruhigeren Grund platziert – geometrische Bordüren geben Struktur, damit es ausgewogen wirken kann\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMaterial trocknet langsam und verliert nach dem Waschen an Form\u003c\/td\u003e\n\u003ctd\u003eDas Polyester ist auf Pflegeleichtigkeit und Formstabilität ausgelegt – Schonwäsche bei 30 °C kann die Passform länger erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil und Hose passen farblich nicht gut zusammen\u003c\/td\u003e\n\u003ctd\u003eOberteil und Unterteil sind als abgestimmtes Set konzipiert – gleiches Muster und gleiche Farbgebung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Bund rutscht bei Bewegung oder beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eVerstellbare Details können dazu beitragen, dass der Sitz bei normaler Bewegung ruhiger bleibt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Blumenmuster Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Blumenmuster Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Pflegeleichtes, schnell trocknendes Polyester – angenehm auf der Haut und formstabil\u003cbr\u003e• Pflege: Handwäsche oder Schonwaschgang bei 30 °C empfohlen – so bleibt das Blumenmuster lange strahlend\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBlumenmuster Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Blumenmuster Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen eignet sich ein Blumenmuster Bikini für den Strand?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini kann gut passen, wenn du verspielte, feminine Bademode-Looks magst und ein Set suchst, das sich für Strand, See oder Urlaub eignet. Wer lieber schlichte, ungemusterte Bademode trägt, wird mit diesem Floralprint möglicherweise weniger glücklich.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini mit Blumenmuster richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen. Waschen bei 30 °C im Schonwaschgang oder per Handwäsche. Nicht im Trockner trocknen – das kann dazu beitragen, dass Form und Farbwirkung länger erhalten bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Bikini?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eMesse Brust, Taille und Hüfte und vergleiche diese Maße mit der Größentabelle. Wenn du zwischen zwei Größen liegst, kann es hilfreich sein, beim Oberteil eher die kleinere und beim Unterteil die größere Größe zu wählen – je nach deiner bevorzugten Passform.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund des Bikinis bei Bewegung – zum Beispiel beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Unterteil ist auf einen ruhigeren Sitz bei Bewegung ausgelegt. Bei intensivem Schwimmen kann es je nach Körperform leichte Unterschiede geben – ein Anhaltspunkt ist, wie gut das Maß der Hüfte mit der Tabelle übereinstimmt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWirkt das Blumenmuster am Bikini in echt anders als auf den Bildern?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFlorale Prints wirken im echten Licht manchmal weicher oder kräftiger als auf Produktfotos – das hängt vom Licht und dem Hintergrund ab. Die geometrischen Bordüren geben dem Muster eine Struktur, die in der Regel klar erkennbar bleibt. Die empfohlene Schonwäsche kann dazu beitragen, dass die Farbwirkung länger erhalten bleibt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für Bodensee-Tage geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – das Set ist für Strand, See und Urlaub ausgelegt. Das Polyester-Material ist auf Pflegeleichtigkeit und Formstabilität ausgerichtet, was für häufige Wassertage am Bodensee ein nützlicher Anhaltspunkt sein kann.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-damen-finden-sie-den-perfekten-badeanzug-fur-den-sommer-2024\"\u003eBadeanzüge für Damen: Finden Sie den perfekten Badeanzug für den Sommer 2024\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/bikini-damen\/wie-man-den-perfekten-bikini-fur-seine-korperform-findet\"\u003eWie man den perfekten Bikini für seine Körperform findet\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tropisches Blumen- und Palmblatt-Muster auf hellem Grund – klar erkennbar auch aus der Nähe\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Geometrische Bordüren rahmen das Muster ein und geben dem Set eine ruhige Struktur\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Blumenmuster Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBlumenmuster Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€41.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Blumenmuster Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Blumenmuster Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN01jC3v9O1fsu6tXP362__2214331894063-0-cib.jpg?v=1750326013\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"41.99\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Handwäsche oder Schonwaschgang bei 30 °C empfohlen – so bleibt das Blumenmuster lange strahlend\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Himmelblau \/ L","offer_id":45419011703052,"sku":"CJYD200229703CX","price":41.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":45419011735820,"sku":"CJYD200229702BY","price":41.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ S","offer_id":45419011768588,"sku":"CJYD200229701AZ","price":41.99,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ XL","offer_id":45419011801356,"sku":"CJYD200229704DW","price":41.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/O1CN01jC3v9O1fsu6tXP362__2214331894063-0-cib.jpg?v=1750326013"},{"product_id":"bikini-mit-kette-im-oberteil","title":"schwarzer Bikini Goldkette Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Bodensee genauso sitzt wie beim ersten Anziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach bleibt, wo er sein soll – ohne Nachziehen, ohne Nachdenken.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines langen Badetages merken viele, wie viel ein Detail ausmachen kann – und wie wenig es braucht, wenn der Schnitt stimmt.\u003c\/p\u003e\n  \u003ch2\u003eBikini schwarz Goldkette Damen – mit Ketten-Detail für See, Strand und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nSchlichte schwarze Bademode mit einem feinen Goldketten-Detail am Oberteil – dezent gesetzt, sodass er am Bodenseeufer genauso passt wie am Hotelpool. Stofffeel: geschmeidig, leicht, eng anliegend ohne einzuengen.\u003c\/p\u003e\n\u003cp\u003eSchwarz als Farbe braucht keinen Grund – aber das Goldketten-Detail gibt dem Bikini schwarz Goldkette eine eigene Haltung. Die Kette sitzt nicht als Blickfang, der um Aufmerksamkeit bittet, sondern als ruhiger Akzent. Wer genau hinschaut, sieht ihn. Wer nicht, sieht einen klaren, zeitlosen schwarzen Bikini. Diese Ambivalenz macht ihn vielseitig – von der ersten Stunde am Wasser bis zur Terrasse danach.\u003c\/p\u003e\n\u003cp\u003eDie Farbwahl ist bewusst: Schwarz auf der Haut wirkt geerdet, die Goldkette bringt genau so viel Wärme, dass der Look nicht kalt oder sportlich-nüchtern wirkt. Am Bodenseeufer, auf einem Felsen sitzend, das Wasser vor sich – das Ketten-Detail fängt das Licht auf eine Weise, die auffällt ohne aufzufallen. Kombiniert mit einem weißen Leinenüberwurf oder einem gestreiften Strandtuch bleibt das Gesamtbild ruhig und in sich stimmig.\u003c\/p\u003e\n\u003cp\u003eDrei Situationen, in denen dieses Design mitgeht: An einem ruhigen Badetag am See, wenn man ins Wasser geht und danach entspannt auf dem Handtuch liegt. Beim Strandspaziergang nach dem Schwimmen, wenn das Oberteil unter einem offenen Hemd sichtbar bleibt. Oder im Urlaub, wenn man aus dem Pool steigt und direkt zum Mittagessen bleibt – ohne sich umzuziehen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Ketten-Detail fällt im richtigen Licht auf – nicht permanent, sondern in Bewegung.\u003cbr\u003e• Der schwarze Ton wirkt zeitlos, ohne beliebig zu sein – kombinierbar, ohne Planung.\u003cbr\u003e• Der Schnitt lässt sich schwer einordnen: sportlich genug fürs Wasser, still genug für die Terrasse danach.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn dich dezente Bademode mit einem Akzent anspricht, der nicht zu laut ist – könnte das hier passen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 66.0, \"bust_max\": 70.0, \"waist_min\": 68.0, \"waist_max\": 72.0, \"hip_min\": 72.0, \"hip_max\": 76.0}, {\"name\": \"M\", \"bust_min\": 70.0, \"bust_max\": 74.0, \"waist_min\": 72.0, \"waist_max\": 76.0, \"hip_min\": 76.0, \"hip_max\": 80.0}, {\"name\": \"L\", \"bust_min\": 74.0, \"bust_max\": 78.0, \"waist_min\": 76.0, \"waist_max\": 80.0, \"hip_min\": 80.0, \"hip_max\": 84.0}, {\"name\": \"XL\", \"bust_min\": 78.0, \"bust_max\": 82.0, \"waist_min\": 80.0, \"waist_max\": 84.0, \"hip_min\": 84.0, \"hip_max\": 88.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/li\u003e\n\u003cli\u003e✔ Größenwahl: Brust, Taille und Hüfte separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Bikini Goldkette Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Bikinis im Wasser verrutschen oder nach wenigen Wochen nachlassen\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas beim schwarzen Bikini mit Goldkette sitzt – und was man vorher wissen sollte.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verrutscht beim Schwimmen\u003c\/li\u003e\n\u003cli\u003eOnline-Größen bei Bikinis sind schwer einzuschätzen\u003c\/li\u003e\n\u003cli\u003eDer Stoff fühlt sich nass unangenehm an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer kennt das: Man geht ins Wasser, schwimmt ein paar Züge – und muss danach das Oberteil wieder zurechtziehen. Oder der Bikini sitzt am ersten Tag noch gut, aber nach einer Woche Strand wirkt der Stoff irgendwie weicher als nötig. Das ist kein Einzelfall, sondern eine verbreitete Erfahrung mit Bademode im mittleren Segment.\u003c\/p\u003e\n\u003cp\u003eDer Grund liegt oft im Material und im Schnitt: Stoffe mit zu wenig Elasthan geben bei Wasser und Bewegung nach. Bänder, die nicht regulierbar sind, können auf unterschiedlichen Körperformen unterschiedlich sitzen. Und Ober- und Unterteil, die in einer Einheitsgröße kommen, passen selten gleichzeitig oben und unten optimal.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Bikini mit Goldkette ist aus 78 % Polyamid und 22 % Elasthan – ein Verhältnis, das auf Beweglichkeit und Rückformung ausgelegt ist, bei normaler Belastung im Wasser. Ober- und Unterteil lassen sich separat nach Brust-, Taille- und Hüftmaß wählen, was bei unterschiedlichen Proportionen helfen kann, eine passgenauere Kombination zu finden. Wenn du allerdings eher auf sportliche Passgenauigkeit für intensive Schwimmeinheiten setzt, ist dieser Bikini möglicherweise nicht dein erster Griff – er ist eher für entspannte Badetage als für Leistungsschwimmen ausgelegt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Spielraum magst du beim Sitz – lieber eng anliegend und fest, oder angenehm beweglich ohne zu straff?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, um eine Orientierung zu bekommen.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Größen für Brust, Taille und Hüfte separat an – das gibt meist mehr Sicherheit als eine Gesamtgröße.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Badetag noch ruhig – ohne Nachziehen\u003c\/li\u003e\n\u003cli\u003e→ Das Ketten-Detail fällt auf, ohne zu dominieren – funktioniert am Wasser und danach\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Goldketten-Detail am Oberteil – sichtbar in Bewegung, zurückhaltend im Gesamtbild\u003c\/li\u003e\n\u003cli\u003e✅ 78 % Polyamid, 22 % Elasthan – auf Beweglichkeit und Rückformung bei normaler Belastung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat nach Brust, Taille und Hüfte wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Zeitlose Schwarzfärbung – kombinierbar mit verschiedenen Strandlooks\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensives Leistungsschwimmen oder sehr sportliche Wasseraktivitäten weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wenn du auffällige Muster oder kräftige Farben bevorzugst, ist dieser Bikini möglicherweise zu schlicht\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine Polsterung im Oberteil – für alle, die diese bevorzugen, gibt es passendere Optionen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Bikini Goldkette Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen und muss ständig korrigiert werden\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Bewegung ausgelegt – Elasthan-Anteil unterstützt Rückformung bei normaler Belastung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Größen online schwer einzuschätzen, Ober- und Unterteil passen selten gleichzeitig\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat nach Brust, Taille und Hüfte wählbar – Größenrechner als Orientierung verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSchwarze Farbe wirkt nach einer Saison oft flau oder ausgewaschen\u003c\/td\u003e\n\u003ctd\u003ePolyamid-Elasthan-Kombination ist auf regelmäßigen Wasserkontakt ausgelegt – Pflege laut Hinweis erhält die Farbe länger\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Bikini Goldkette Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Bikini Goldkette Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78 % Polyamid, 22 % Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarzer Bikini Goldkette Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Bikini Goldkette Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen schwarzen Bikini mit Goldkette?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOber- und Unterteil lassen sich separat nach Brust-, Taille- und Hüftmaß wählen. Nutze unseren Größenrechner mit Körpergröße und Gewicht als Orientierung. Bei Unsicherheit zwischen zwei Größen kann es helfen, beim Oberteil eher zur kleineren und beim Unterteil zur größeren Variante zu greifen – je nach persönlicher Präferenz.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eHält das Oberteil dieses Bikinis auch beim Schwimmen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil ist für normales Schwimmen und Bewegung im Wasser ausgelegt. Der Elasthan-Anteil (22 %) unterstützt die Rückformung des Stoffs. Für intensives Leistungsschwimmen oder sehr sportliche Wasseraktivitäten ist dieser Bikini weniger geeignet – er ist eher auf entspannte Badetage ausgerichtet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen schwarzen Bikini mit Goldkette richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – liegend trocknen lassen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil dieses Bikini Sets separat in verschiedenen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Oberteil und Unterteil lassen sich separat nach Brust, Taille und Hüfte in verschiedenen Größen wählen. Das kann bei unterschiedlichen Proportionen helfen, eine passgenauere Kombination zu finden.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Anlässe eignet sich dieser schlichte schwarze Bikini mit Goldketten-Detail?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eEr ist auf entspannte Badetage ausgelegt – am See, Pool oder im Urlaub. Das dezente Goldketten-Detail macht ihn vielseitig kombinierbar, auch wenn man nach dem Baden noch eine Weile draußen bleibt. Für sportliche Wasseraktivitäten oder Leistungsschwimmen ist er weniger konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Feine Goldkette am Oberteil, die im Sonnenlicht am Wasser aufleuchtet\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer Bikini auf einem Felsen am Bodenseeufer – schlicht, ruhig, klar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Bikini Goldkette Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Bikini Goldkette Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Bikini Goldkette Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 04.06.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Bikini Goldkette Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/072d2f55-3131-490d-8e8e-6d0e53051df9.jpg?v=1750320345\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.95\", \"priceCurrency\": \"EUR\"}, \"additionalProperty\": [{\"@type\": \"PropertyValue\", \"name\": \"Pflegehinweis\", \"value\": \"Feinwäsche 30 °C, nicht im Trockner\"}]}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Ebenholzschwarz \/ L","offer_id":49336970707212,"sku":"CJYJ201802807GT","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ M","offer_id":49336970739980,"sku":"CJYJ201802806FU","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ S","offer_id":49336970772748,"sku":"CJYJ201802805EV","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Ebenholzschwarz \/ XL","offer_id":49336970805516,"sku":"CJYJ201802808HS","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ L","offer_id":49336970838284,"sku":"CJYJ201802811KP","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ M","offer_id":49336970871052,"sku":"CJYJ201802810JQ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ S","offer_id":49336970903820,"sku":"CJYJ201802809IR","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Khaki \/ XL","offer_id":49336970936588,"sku":"CJYJ201802812LO","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ L","offer_id":49336970969356,"sku":"CJYJ201802819SH","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ M","offer_id":49336971002124,"sku":"CJYJ201802818RI","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ S","offer_id":49336971034892,"sku":"CJYJ201802817QJ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ XL","offer_id":49336971067660,"sku":"CJYJ201802820TG","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Blattgrün \/ L","offer_id":49336971100428,"sku":"CJYJ201802803CX","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Blattgrün \/ M","offer_id":49336971133196,"sku":"CJYJ201802802BY","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Blattgrün \/ S","offer_id":49336971165964,"sku":"CJYJ201802801AZ","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Blattgrün \/ XL","offer_id":49336971198732,"sku":"CJYJ201802804DW","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ L","offer_id":49336971231500,"sku":"CJYJ201802815OL","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ M","offer_id":49336971264268,"sku":"CJYJ201802814NM","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ S","offer_id":49336971297036,"sku":"CJYJ201802813MN","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Himmelblau \/ XL","offer_id":49336971329804,"sku":"CJYJ201802816PK","price":29.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/072d2f55-3131-490d-8e8e-6d0e53051df9.jpg?v=1750320345"},{"product_id":"stitching-color-sexy-backless-bikini-three-piece-suit","title":"Bikini abstraktes Blättermuster Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Wasser sitzt – und das den ganzen Tag so bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach da ist – ohne dass man die ganze Zeit daran denkt.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim Anziehen, sondern erst später – beim Aufstehen vom Handtuch oder beim Ins-Wasser-Gehen.\u003c\/p\u003e\n  \u003ch2\u003eBikini abstraktes Blättermuster – rückenfreier Schnitt für Strand und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin rückenfreier Schnitt mit abstraktem Blättermuster in Türkis, Grün und Lila – gedacht für Tage am Wasser, an denen man sich bewegen möchte, ohne ständig nachzukorrigieren.\u003c\/p\u003e\n\u003cp\u003eDas abstrakte Blättermuster entfaltet sich in drei Tönen, die zusammen funktionieren, ohne aufdringlich zu sein. Türkis und Grün erinnern an Wasser und Schilf, ein leises Lila gibt dem Muster einen eigenen Rhythmus. Wer am Bodenseeufer sitzt und ins Wasser blickt, kennt diese Mischung – Farben, die da sind, aber nicht schreien.\u003c\/p\u003e\n\u003cp\u003eDer Schnitt ist rückenfrei und mit Stitching-Details gearbeitet. Die Linien geben dem Look visuelle Struktur, ohne das Muster zu unterbrechen. Das Oberteil ist zum Binden ausgelegt und lässt sich in der Passform individuell einstellen. Oberteil und Slip sind optisch aufeinander abgestimmt – das Set wirkt auch dann zusammenhängend, wenn man ein Cover-up darüber trägt oder ablegt.\u003c\/p\u003e\n\u003cp\u003eAm Nachmittag am See, wenn man vom Wasser kommt und sich kurz auf das Handtuch setzt: Das Muster zieht keinen Blick auf sich, aber es ist da. Oder auf der Terrasse eines kleinen Urlaubshotels, morgens beim ersten Kaffee mit Blick aufs Wasser – ein Bikini, der auch jenseits des Beckenrands passt. Wer das Set auf Fotos am Wasser trägt, hat einen Hintergrund, der mit fast jeder Umgebung harmoniert.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne dominant zu wirken – für Trägerinnen, die Farbe mögen, aber keine lauten Prints.\u003cbr\u003e• Der rückenfreie Schnitt fühlt sich offen an, ohne instabil zu sein – besonders beim Bewegen im Wasser spürbar.\u003cbr\u003e• Oberteil und Slip lesen sich als Einheit – auch kombiniert mit einem hellen Cover-up bleibt der Look ruhig.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du eine Größe auswählen möchtest: Unser Größenrechner hilft dir, Schnitt und Passform einzuschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 85.0, \"bust_max\": 91.0, \"waist_min\": 63.0, \"waist_max\": 69.0, \"hip_min\": 65.0, \"hip_max\": 71.0}, {\"name\": \"M\", \"bust_min\": 89.0, \"bust_max\": 95.0, \"waist_min\": 67.0, \"waist_max\": 73.0, \"hip_min\": 69.0, \"hip_max\": 75.0}, {\"name\": \"L\", \"bust_min\": 94.0, \"bust_max\": 100.0, \"waist_min\": 72.0, \"waist_max\": 78.0, \"hip_min\": 74.0, \"hip_max\": 80.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Schnitt: rückenfrei, Oberteil zum Binden\u003c\/li\u003e\n\u003cli\u003e✔ Muster: abstraktes Blättermuster in Türkis, Grün und Lila\u003c\/li\u003e\n\u003cli\u003e✔ Set: Oberteil und Slip, optisch aufeinander abgestimmt\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini abstraktes Blättermuster Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Set sitzt, aber die Teile optisch nicht zusammenfinden\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003ePassform und Muster können beides gleichzeitig sein – ruhig und präsent.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eRückenfreie Schnitte fühlen sich manchmal weniger stabil an\u003c\/li\u003e\n\u003cli\u003eDreiteilige Sets wirken oft uneinheitlich, wenn Teile nicht aufeinander abgestimmt sind\u003c\/li\u003e\n\u003cli\u003eDünne Stoffe können bei Nässe oder hellem Licht weniger blickdicht sein\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man zieht einen rückenfreien Bikini an, er sitzt gut im Stand – aber beim Ins-Wasser-Gehen, beim Hinsetzen auf das Handtuch oder beim Aufstehen verändert sich das Bild. Der Schnitt wirkt plötzlich weniger sicher, das Oberteil muss nachjustiert werden.\u003c\/p\u003e\n\u003cp\u003eBei rückenfreien Modellen hängt der Sitz weniger am Stoff als an Schnittführung, Stretchanteil und der Art, wie das Oberteil befestigt ist. Ein Elasthan-Anteil im Material kann dazu beitragen, dass der Stoff bei Bewegung mit dem Körper geht statt dagegen. Die tatsächliche Passform hängt aber auch davon ab, wie Oberteil und Träger auf die eigene Figur abgestimmt sind.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist für Tage ausgelegt, an denen man sich am Wasser bewegt und nicht ständig nachkorrigieren möchte – Strand, Pool, See oder auch einen ruhigeren Urlaubstag auf der Terrasse. Wer sehr viel Halt oder starke Unterstützung im Oberteil sucht, ist mit einem anderen Schnitt möglicherweise besser beraten. Und wer lieber vollständig bedeckende Bademode trägt, wird mit diesem Modell weniger glücklich sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMagst du Bikinis, bei denen das Muster ruhig bleibt – und der Sitz sich nicht nach Kompromiss anfühlt?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die verfügbaren Größen an und wähle, was zu deiner Figur passt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Getragen als Strandlook im Sommerurlaub – ruhiges Muster, das mit der Umgebung harmoniert\u003c\/li\u003e\n\u003cli\u003e→ Eingesetzt für Pooltage und Fotos am Wasser – Set wirkt auch auf Bildern als Einheit\u003c\/li\u003e\n\u003cli\u003e→ Kombiniert mit einem leichten Cover-up für entspannte Tage zwischen Wasser und Terrasse\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Rückenfreier Schnitt mit individuell bindbarem Oberteil – bei normaler Strandaktivität angenehm in der Bewegung\u003c\/li\u003e\n\u003cli\u003e✅ Abstraktes Blättermuster in Türkis, Grün und Lila – ruhig und kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Oberteil und Slip optisch aufeinander abgestimmt – wirkt auch mit Cover-up als Einheit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Weniger geeignet für Trägerinnen, die starke Unterstützung oder viel Halt im Oberteil suchen\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht ausgelegt für intensiven Wassersport oder sehr aktive Schwimmeinheiten\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer vollständig bedeckende Bademode bevorzugt, wird mit diesem Schnitt weniger glücklich sein\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini abstraktes Blättermuster Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eRückenfreie Bikinis rutschen bei Bewegung oder wirken instabil\u003c\/td\u003e\n\u003ctd\u003eBindbares Oberteil kann auf individuelle Passform eingestellt werden – Sitz ist bei normaler Belastung in der Regel ruhig\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDreiteilige Sets wirken schnell uneinheitlich, wenn Teile nicht zusammenpassen\u003c\/td\u003e\n\u003ctd\u003eOberteil und Slip sind auf dasselbe Muster und dieselbe Farbgebung abgestimmt – das Set liest sich auch mit Cover-up als zusammenhängendes Outfit\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGemusterte Bikinis wirken oft zu laut oder schwer kombinierbar\u003c\/td\u003e\n\u003ctd\u003eDas abstrakte Blättermuster in gedämpften Tönen (Türkis, Grün, Lila) hält sich zurück – kombinierbar mit hellen und neutralen Farben\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eStitching-Nähte bei Stretch-Material leiern nach kurzer Zeit aus\u003c\/td\u003e\n\u003ctd\u003eDie Stitching-Details sind auf klare Linienführung ausgelegt – wie lange sie bei regelmäßigem Tragen stabil bleiben, hängt auch von der Pflege ab\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini abstraktes Blättermuster Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini abstraktes Blättermuster Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini abstraktes Blättermuster Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini abstraktes Blättermuster Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Anlässe eignet sich ein rückenfreier Bikini mit Blättermuster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist für Strand, Pool und See ausgelegt – und funktioniert auch als Urlaubslook auf der Terrasse oder am Wasser. Das abstrakte Blättermuster in Türkis, Grün und Lila harmoniert mit den meisten Umgebungen und lässt sich gut mit einem hellen Cover-up kombinieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund und das Oberteil bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil ist zum Binden ausgelegt und lässt sich in der Passform individuell einstellen. Der Sitz bei Bewegung hängt von Schnittführung und Stretchanteil ab – bei normaler Strandaktivität bleibt das Modell in der Regel ruhig sitzen. Für intensiven Wassersport ist es weniger ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich den Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen. So bleibt die Form des Stoffes bei normaler Pflege länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für dreiteilige Sets mit Cover-up geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eOberteil und Slip sind optisch aufeinander abgestimmt und wirken auch dann als Einheit, wenn ein Cover-up darüber getragen wird. Für ein klassisches dreiteiliges Set kann ein passendes Cover-up oder ein leichtes Strandtuch ergänzt werden.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen rückenfreien Bikini?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa rückenfreie Schnitte individuell unterschiedlich sitzen, empfiehlt sich bei Unsicherheit ein Blick auf den Größenrechner. Gib Körpergröße und Gewicht ein – das gibt einen Anhaltspunkt, welche Größe für deinen Körperbau in der Regel passt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug\"\u003eInnovative Badeanzüge für Damen: Trends, Passform und Stil\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/innovative-badeanzuge-fur-damen-trends-passform-und-selbstbewusstsein\"\u003eInnovative Badeanzüge für Damen: Trends, Passform und Selbstbewusstsein\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Abstraktes Blättermuster in Türkis, Grün und Lila – Nahaufnahme zeigt Musterdetail auf dem Stoff\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Rückenfreier Schnitt von hinten – offene Rückenlinie, Bindeband sichtbar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini abstraktes Blättermuster Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini abstraktes Blättermuster Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€21.89\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini abstraktes Blättermuster Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini abstraktes Blättermuster Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-bikini-1618550718679.png?v=1776857788\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"21.89\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blue \/ S","offer_id":54413460603148,"sku":"CJTZ108267901AZ","price":21.89,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ M","offer_id":54413460635916,"sku":"CJTZ108267902BY","price":21.89,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ L","offer_id":54413460668684,"sku":"CJTZ108267903CX","price":21.89,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ S","offer_id":54413460701452,"sku":"CJTZ108267904DW","price":21.89,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":54413460734220,"sku":"CJTZ108267905EV","price":21.89,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":54413460766988,"sku":"CJTZ108267906FU","price":21.89,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-bikini-1618550718679.png?v=1776857788"},{"product_id":"european-and-american-sexy-bikini-women-split-swimwear","title":"Bikini blaues Palmenblätter Muster","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am Strand sitzt – und sich dabei nicht anfühlt wie Arbeit?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini den ganzen Tag ruhig sitzt, ohne dass du ständig nachkorrigierst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau da merken viele den Unterschied – nicht beim ersten Anziehen, sondern nach drei Stunden am Wasser.\u003c\/p\u003e\n  \u003ch2\u003eBikini Damen blau mit Palmenblätter-Muster – für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nZweiteiliger Bikini mit Elasthan-Anteil – für angenehmes Tragegefühl am Wasser, blaues Palmenblätter-Muster auf weißem Grund, leicht und beweglich am Körper.\u003c\/p\u003e\n\u003cp\u003eDas Muster greift etwas auf, das man an ruhigen Sommertagen sieht: das Spiel von Licht durch Blätter, eine Farbigkeit, die weder laut noch blass ist. Das Blau der Palmenmotive bewegt sich zwischen Himmel und Wasser – klar genug, um aufzufallen, zurückhaltend genug, um sich nicht aufzudrängen. Ein Design, das am Bodenseeufer genauso passt wie an einem Mittelmeerstrand.\u003c\/p\u003e\n\u003cp\u003eDie Kombination aus weißem Grund und blauem Palmenblätter-Print lässt sich unkompliziert kombinieren: zu einem weißen Leinentuch, einem gestreiften Strandkleid oder einfach so. Wer eher unifarbene oder sehr grafische Muster bevorzugt, wird hier vielleicht einen anderen Stil finden – dieses Design hat eine organische, etwas ruhigere Bildsprache. Du trägst es beim Aufstehen vom Liegestuhl, beim Hineinwaten ins flache Wasser, beim Kaffee in der kleinen Strandbar – und das Muster macht mit, ohne sich in den Vordergrund zu drängen.\u003c\/p\u003e\n\u003cp\u003ePassend, wenn du am Urlaubsnachmittag vom Wasser direkt in die nächste Stunde wechselst: ein Bikini, der diese Übergänge nicht sichtbar macht, weil er dafür nicht ins Auge sticht.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Palmenblätter-Muster wirkt im Sonnenlicht anders als im Schatten – nie überwältigend, aber immer präsent.\u003cbr\u003e• Du greifst zum Tuch, nicht zum Bikini – weil nichts nachzuziehen ist.\u003cbr\u003e• Das Muster lässt sich so kombinieren, dass es aussieht, als hättest du es schon immer gehabt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eSchau dir die verfügbaren Größen an und wähle, was zu deiner Figur passt.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"bust_min\": 76.0, \"bust_max\": 81.0, \"waist_min\": 104.1, \"waist_max\": 126.6, \"hip_min\": 81.0, \"hip_max\": 86.0}, {\"name\": \"S\", \"bust_min\": 81.0, \"bust_max\": 86.0, \"waist_min\": 114.6, \"waist_max\": 137.1, \"hip_min\": 86.0, \"hip_max\": 91.0}, {\"name\": \"M\", \"bust_min\": 86.0, \"bust_max\": 91.0, \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 91.0, \"hip_max\": 97.0}, {\"name\": \"L\", \"bust_min\": 91.0, \"bust_max\": 97.0, \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 97.0, \"hip_max\": 102.0}, {\"name\": \"XL\", \"bust_min\": 97.0, \"bust_max\": 102.0, \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 102.0, \"hip_max\": 107.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Design: Blaues Palmenblätter-Muster auf weißem Grund\u003c\/li\u003e\n\u003cli\u003e✔ Typ: Zweiteiliger Bikini\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini blaues Palmenblätter Muster sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini am Wasser nicht ruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eBewegung sollte sich leicht anfühlen – nicht nach Nachkorrigieren.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil hält nicht, sobald man sich im Wasser bewegt\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach ein paar Stunden\u003c\/li\u003e\n\u003cli\u003eDie Größe lässt sich online schwer einschätzen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, tauchst unter – und kurz danach sitzt irgendetwas nicht mehr so, wie es sollte. Das Oberteil ist verrutscht, der Bund hat sich verschoben. Was zunächst wie eine Kleinigkeit wirkt, zieht sich über den ganzen Tag. Das ist keine Frage von Ansprüchen, sondern von dem, was man von Bademode grundsätzlich erwartet: dass sie mitgeht, ohne ständig korrigiert zu werden.\u003c\/p\u003e\n\u003cp\u003eOft liegt es nicht am Schnitt allein, sondern an der Kombination aus Material und Passform. Elasthan-Anteile können dazu beitragen, dass sich der Stoff der Bewegung anpasst – beim Hinsetzen am Steg, beim Gehen über Sand, beim kurzen Schwimmen. Ob das bei einem bestimmten Körperbau und einer bestimmten Aktivität funktioniert, lässt sich am besten über eine gute Größenangabe einschätzen.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist ausgelegt für Strandtage mit moderater Bewegung – Schwimmen, Spazieren, Liegen, Waten. Wer intensive Wasseraktivitäten plant oder beim Leistungsschwimmen trainiert, ist mit spezifischer Sportbademode in der Regel besser beraten. Wenn du hingegen einen Bikini suchst, der ruhige Seetage begleitet und dabei nicht ständig Aufmerksamkeit fordert, könnte dieser Schnitt passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst der Schnitt zu dem, wie du dich am Wasser bewegst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Größe und schau, ob Ober- und Unterteil für dich stimmen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Gehen über Sand ruhig – ohne Nachkorrigieren\u003c\/li\u003e\n\u003cli\u003e→ Palmenblätter-Muster wirkt am Wasser frisch, ohne zu dominieren\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Elasthan-Anteil für anschmiegsames Tragegefühl bei Bewegung\u003c\/li\u003e\n\u003cli\u003e✅ Ruhiges Palmenblätter-Design, das sich kombinieren lässt\u003c\/li\u003e\n\u003cli\u003e✅ Zweiteiliger Schnitt – Ober- und Unterteil in der Regel separat wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Ausgelegt für Strandtage mit moderater Aktivität\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für Leistungsschwimmen oder intensiven Wassersport weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer sehr grafische oder unifarbene Muster bevorzugt, wird hier einen anderen Stil finden\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegten Angaben zu Chlor- oder Salzwasserbeständigkeit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini blaues Palmenblätter Muster\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht bei Bewegung im Wasser\u003c\/td\u003e\n\u003ctd\u003eElasthan-Anteil ist auf anpassungsfähigen Sitz bei moderater Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße bei Bikinis online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht als Orientierung verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt im Alltag zu auffällig\u003c\/td\u003e\n\u003ctd\u003eOrganisches Palmenblätter-Motiv in Blau – dezent genug für verschiedene Strandoutfits\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini blaues Palmenblätter Muster mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini blaues Palmenblätter Muster im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Elasthan\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini blaues Palmenblätter Muster\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini blaues Palmenblätter Muster\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Aktivitäten eignet sich dieser Bikini mit blauem Palmenblätter-Muster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini ist ausgelegt für moderate Strandaktivitäten: Schwimmen, Waten, Liegen, Spazieren. Für intensiven Wassersport oder Leistungsschwimmen ist spezifische Sportbademode in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Bikini zweiteiler?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner – mit Angabe von Körpergröße und Gewicht kannst du Ober- und Unterteil separat einschätzen. Bei Unsicherheit zwischen zwei Größen empfiehlt sich in der Regel die größere Option für mehr Bewegungsfreiheit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini Damen blau richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, lauwarmem Wasser ausspülen. Waschen im Feinwaschgang bei 30 °C, nicht im Trockner trocknen. So bleibt Form und Farbe länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003ePasst der Bikini mit Palmenblätter-Print zu bestimmten Strandoutfits?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas blaue Palmenblätter-Muster auf weißem Grund lässt sich gut mit einfarbigen Strandtüchern, Leinenshorts oder schlichten Kleidern kombinieren. Wer sehr grafische oder unifarbene Looks bevorzugt, findet hier eine organischere Bildsprache.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der Bikini blickdicht, wenn er nass ist?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa keine spezifischen Angaben zur Blickdichte im Nassen vorliegen, können wir dazu kein konkretes Versprechen machen. Als Anhaltspunkt gilt: Elasthan-Stoffe schmiegen sich im nassen Zustand enger an den Körper an – das ist bei zweiteiligen Bikinis dieser Art üblich.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Blaues Palmenblätter-Muster auf weißem Grund im Sonnenlicht am See\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini beim Hineinwaten ins flache Wasser – Stoff schmiegt sich an\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini blaues Palmenblätter Muster eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini blaues Palmenblätter Muster\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€18.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini blaues Palmenblätter Muster dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini blaues Palmenblätter Muster\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/european-and-american-sexy-bikini-1620374146235.png?v=1776857095\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"18.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Blue \/ S","offer_id":54413461094668,"sku":"CJTZ111684601AZ","price":18.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ M","offer_id":54413461127436,"sku":"CJTZ111684602BY","price":18.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ L","offer_id":54413461160204,"sku":"CJTZ111684603CX","price":18.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ XL","offer_id":54413461192972,"sku":"CJTZ111684604DW","price":18.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/european-and-american-sexy-bikini-1620374146235.png?v=1776857095"},{"product_id":"split-bikini-swimsuit-solid-color-new-women","title":"pink bikini damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen pink Bikini aus, der den ganzen Tag ruhig sitzt – ohne Nachziehen?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses entspannte Gefühl, wenn ein Bikini einfach da ist – und du dich darin vergisst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied erst im Laufe des Tages: nicht beim Anziehen, sondern beim zweiten Sprung ins Wasser.\u003c\/p\u003e\n  \u003ch2\u003ePink Bikini Damen – einfarbiges Zweiteiler-Set für Strand und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nZweiteiliges Design in einfarbigem Pink – klare Linie ohne Muster, Polyamid-Material, ruhige Farbwirkung am Wasser.\u003c\/p\u003e\n\u003cp\u003eManche Farben funktionieren am See einfach anders als auf dem Bildschirm. Ein gedämpftes, einfarbiges Pink wirkt im Sommerlicht weich und ruhig – nicht grell, nicht blass. Wer am Bodenseeufer sitzt und ins Wasser schaut, merkt: diese Farbe lässt sich nicht aufdrängen. Sie ist einfach da.\u003c\/p\u003e\n\u003cp\u003eDas unifarbene Design ohne Muster macht den pink Bikini für Damen kombinierbar: ein heller Leinensarong, eine schlichte weiße Strandtasche, sandige Espadrilles – alles passt, ohne dass man darüber nachdenken muss. Kein Print, der nach zwei Saisonen aus der Mode ist. Kein Motiv, das entscheidet, wohin der Blick geht. Der Fokus liegt auf dem Moment, nicht auf dem Stoff.\u003c\/p\u003e\n\u003cp\u003eFür einen Nachmittag am Pool, an dem man einfach ins Wasser gleitet und wieder herauskommt. Für den Strandtag im Urlaub, an dem Gepäck leicht und Entscheidungen wenig sein sollen. Oder für alle, die Bademode bevorzugen, die sich nicht in den Vordergrund drängt – und trotzdem etwas sagt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Pink wirkt im Sonnenlicht weicher als erwartet – angenehm auf der Haut, ruhig im Blick.\u003cbr\u003e• Kein Muster, das ablenkt: du trägst den Bikini, nicht umgekehrt.\u003cbr\u003e• Zweiteiler bedeutet Flexibilität – Ober- und Unterteil lassen sich separat kombinieren, wenn nötig.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du Lust hast, schau dir die Größentabelle an – Ober- und Unterteil sind separat wählbar.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyamid\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: zweiteilig, Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: einfarbig Pink, kein Muster\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann pink bikini damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser unruhig wird\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas beim einfarbigen Zweiteiler anders sein kann – und wann er passt.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil verrutscht nach dem Sprung ins Wasser\u003c\/li\u003e\n\u003cli\u003eBund drückt nach ein paar Stunden\u003c\/li\u003e\n\u003cli\u003eFarbe wirkt nach der Saison matter als erwartet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu kennst das vielleicht: Du gehst ins Wasser, tauchst kurz unter – und danach sitzt irgendetwas nicht mehr so, wie es sollte. Das Oberteil hat sich verschoben, der Bund drückt an einer Stelle, die vorher kein Problem war. Nicht dramatisch, aber präsent. Und du weißt, du wirst es den ganzen Tag im Hinterkopf behalten.\u003c\/p\u003e\n\u003cp\u003eDas passiert häufiger bei Bikinis, bei denen Schnitt und Material nicht auf Bewegung im Wasser abgestimmt sind – oder bei denen Ober- und Unterteil in einer Einheitsgröße kommen, die für die eigene Figur nur annähernd stimmt. Polyamid als Material kann bei normaler Belastung dazu beitragen, dass der Stoff eng am Körper bleibt – aber der Schnitt entscheidet letztlich mit.\u003c\/p\u003e\n\u003cp\u003eDieser einfarbige pink Bikini für Damen ist als zweiteiliges Set ausgelegt – Ober- und Unterteil können separat in der Größe gewählt werden. Das kann dazu beitragen, dass der Sitz für verschiedene Figurproportionen besser passt. Wenn du allerdings einen Bikini mit starker Formgebung, Bügeln oder besonders viel Halt suchst, sind diese Funktionen hier nicht explizit belegt – dann lohnt es sich, gezielt danach zu filtern.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst ein schlichter, einfarbiger Zweiteiler zu dem, was du am Wasser trägst – oder magst du lieber etwas mit mehr Struktur?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt \u0026amp; Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Größentabelle an, wenn du möchtest – Ober- und Unterteil lassen sich unabhängig voneinander auswählen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Strandtag noch ruhig\u003c\/li\u003e\n\u003cli\u003e→ Oberteil bleibt bei normaler Bewegung im Wasser in der Regel an Ort und Stelle\u003c\/li\u003e\n\u003cli\u003e→ Einfarbiges Pink wirkt im Sonnenlicht weicher als auf dem Bildschirm\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einfarbiges Design ohne Muster – zeitlos kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Zweiteiliger Schnitt – Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003cli\u003e✅ Polyamid-Material – bei normaler Belastung angenehm am Körper\u003c\/li\u003e\n\u003cli\u003e✅ Klare, ruhige Farbwirkung – dezent ohne aufzufallen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ideal, wenn du viel Formgebung, Bügel oder starken Halt benötigst\u003c\/li\u003e\n\u003cli\u003e⚠️ Eher nicht passend für intensive Wassersportaktivitäten oder Leistungsschwimmen\u003c\/li\u003e\n\u003cli\u003e⚠️ Weniger geeignet, wenn du gemusterte oder grafisch auffällige Bademode bevorzugst\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ pink bikini damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach Bewegung im Wasser\u003c\/td\u003e\n\u003ctd\u003eZweiteiliger Schnitt kann dazu beitragen, dass Ober- und Unterteil in passender Größe gewählt werden\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eEinheitsgröße passt selten für verschiedene Proportionen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar – für individuellere Passform\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarben wirken nach der Saison matter\u003c\/td\u003e\n\u003ctd\u003eEinfarbiges Polyamid-Design – Pflegehinweise beachten für längere Farbintensität\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße bei Bikinis online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner als Anhaltspunkt verfügbar – mit Körpergröße und Gewicht\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei pink bikini damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich pink bikini damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Polyamid\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003epink bikini damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu pink bikini damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eGibt es einen schlichter pink Bikini für Damen ohne Muster bei Bodenseemarke?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – dieses Modell ist einfarbig in Pink ohne Print oder Muster gehalten. Das Design ist bewusst reduziert und lässt sich gut mit verschiedenen Strand-Accessoires kombinieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil dieses Bikinis in verschiedenen Größen wählen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Modell ist als Zweiteiler konzipiert. Ob Ober- und Unterteil tatsächlich in unterschiedlichen Größen bestellbar sind, prüfst du am besten in der Größenauswahl auf der Produktseite – dort siehst du, welche Optionen verfügbar sind.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyamid richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Waschen im Feinwaschgang bei 30 °C. Nicht im Trockner trocknen – Lufttrocknen schont Material und Form deutlich besser.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser pink Bikini auch für Bewegung im Wasser geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Modell ist für Strand- und Freizeitnutzung ausgelegt. Für intensive Wassersportaktivitäten oder Leistungsschwimmen ist es in der Regel weniger geeignet, da spezifische Sportfunktionen nicht belegt sind.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Bikini online die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eAm zuverlässigsten orientierst du dich an deinen Körpermaßen – Brustumfang, Taillenumfang und Hüftumfang – und vergleichst sie mit der Maßtabelle des Modells. Unser Größenrechner kann dabei als Anhaltspunkt helfen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Einfarbiges Pink im Sommerlicht am Wasser – keine Ablenkung durch Muster\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Zweiteiler am Bodenseeufer – schlicht, kombinierbar, ruhig\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann pink bikini damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003epink bikini damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€21.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass pink bikini damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"pink bikini damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/split-bikini-1623729304116-neuer-versuch.png?v=1776856435\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"21.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Red wine \/ S","offer_id":54413462536460,"sku":"CJBJ113317701AZ","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red wine \/ M","offer_id":54413462569228,"sku":"CJBJ113317702BY","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red wine \/ L","offer_id":54413462601996,"sku":"CJBJ113317703CX","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red wine \/ XL","offer_id":54413462634764,"sku":"CJBJ113317704DW","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ S","offer_id":54413462667532,"sku":"CJBJ113317705EV","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":54413462700300,"sku":"CJBJ113317706FU","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":54413462733068,"sku":"CJBJ113317707GT","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ XL","offer_id":54413462765836,"sku":"CJBJ113317708HS","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ S","offer_id":54413462798604,"sku":"CJBJ113317709IR","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ M","offer_id":54413462831372,"sku":"CJBJ113317710JQ","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ L","offer_id":54413462864140,"sku":"CJBJ113317711KP","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ XL","offer_id":54413462896908,"sku":"CJBJ113317712LO","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ S","offer_id":54413462929676,"sku":"CJBJ113317713MN","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ M","offer_id":54413462962444,"sku":"CJBJ113317714NM","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ L","offer_id":54413462995212,"sku":"CJBJ113317715OL","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ XL","offer_id":54413463027980,"sku":"CJBJ113317716PK","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ S","offer_id":54413463060748,"sku":"CJBJ113317717QJ","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ M","offer_id":54413463093516,"sku":"CJBJ113317718RI","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ L","offer_id":54413463126284,"sku":"CJBJ113317719SH","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Blue \/ XL","offer_id":54413463159052,"sku":"CJBJ113317720TG","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.Yellow \/ L","offer_id":54413463191820,"sku":"CJBJ113317721UF","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.Yellow \/ M","offer_id":54413463224588,"sku":"CJBJ113317722VE","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.Yellow \/ S","offer_id":54413463257356,"sku":"CJBJ113317723WD","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.Yellow \/ XL","offer_id":54413463290124,"sku":"CJBJ113317724XC","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.green \/ L","offer_id":54413463322892,"sku":"CJBJ113317725YB","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.green \/ M","offer_id":54413463355660,"sku":"CJBJ113317726ZA","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.green \/ S","offer_id":54413463388428,"sku":"CJBJ113317727AZ","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.green \/ XL","offer_id":54413463421196,"sku":"CJBJ113317728BY","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.rose red \/ L","offer_id":54413463453964,"sku":"CJBJ113317729CX","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.rose red \/ M","offer_id":54413463486732,"sku":"CJBJ113317730DW","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.rose red \/ S","offer_id":54413463519500,"sku":"CJBJ113317731EV","price":21.95,"currency_code":"EUR","in_stock":true},{"title":"Fluorescent.rose red \/ XL","offer_id":54413463552268,"sku":"CJBJ113317732FU","price":21.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/split-bikini-1623729304116-neuer-versuch.png?v=1776856435"},{"product_id":"womens-fashion-personality-solid-color-bikini","title":"schwarzer einfarbiger Badeanzug Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Badeanzug aus, der den ganzen Tag ruhig sitzt – ohne Nachkorrigieren?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses entspannte Gefühl, wenn ein Badeanzug einfach mitgeht – ob du am Ufer liegst oder ins Wasser gehst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht beim ersten Anziehen, sondern erst nach ein paar Stunden am See.\u003c\/p\u003e\n  \u003ch2\u003eSchwarzer Badeanzug Damen – schlicht, einfarbig, für See und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Badeanzug gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin einfarbiger Schnitt in Tiefschwarz – klar in der Linie, ruhig in der Wirkung, für Tage am Wasser ohne viel Aufwand.\u003c\/p\u003e\n\u003cp\u003eSchwarz ist keine Verlegenheitswahl. Am Bodenseeufer, wo das Licht weich über das Wasser fällt, wirkt ein schlichter schwarzer Badeanzug Damen auf eine sehr direkte Art: Er braucht nichts dazuzufügen. Kein Muster, kein Print – nur die Silhouette, die für sich spricht. Dieser schwarze Badeanzug setzt auf genau diese Haltung.\u003c\/p\u003e\n\u003cp\u003eEinfarbiges Schwarz lässt sich zu fast allem kombinieren – ein gestreiftes Strandtuch, eine leichte Leinenhose, ein heller Kimono. Der Übergang vom Wasser auf die Liegewiese oder in ein Strandbistro passiert ohne Umziehen, ohne Nachdenken. Wer ruhige, zeitlose Looks mag, wird diesen Schnitt wahrscheinlich öfter greifen als erwartet.\u003c\/p\u003e\n\u003cp\u003eAn einem langen Badetag – ob am Freibad-Beckenrand, am Bodenseesteg oder an einem Urlaubsstrand – zeigt sich, wofür das Design gedacht ist: anziehen, ins Wasser, wieder raus, ohne dass irgendetwas aus dem Gleichgewicht gerät. Für manche ist das genau die Art von Badeanzug, die man einfach kennen sollte.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Du greifst morgens ohne Überlegen danach – weil Schwarz zu allem passt.\u003cbr\u003e• Der Schnitt wirkt am Beckenrand genauso ruhig wie auf dem Weg zum Handtuch.\u003cbr\u003e• Kein Motiv, das nach einer Saison überholt wirkt – das Design bleibt.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du einen einfarbigen schwarzen Badeanzug für Damen ohne aufdringliche Details suchst, könnte dieser Schnitt passen – schau dir Größe und Passform in Ruhe an.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 76.0, \"bust_max\": 88.0, \"waist_min\": 68.0, \"waist_max\": 74.0, \"hip_min\": 78.0, \"hip_max\": 94.0}, {\"name\": \"M\", \"bust_min\": 80.0, \"bust_max\": 92.0, \"waist_min\": 74.0, \"waist_max\": 78.0, \"hip_min\": 82.0, \"hip_max\": 98.0}, {\"name\": \"L\", \"bust_min\": 84.0, \"bust_max\": 96.0, \"waist_min\": 78.0, \"waist_max\": 82.0, \"hip_min\": 86.0, \"hip_max\": 102.0}, {\"name\": \"XL\", \"bust_min\": 88.0, \"bust_max\": 100.0, \"waist_min\": 82.0, \"waist_max\": 86.0, \"hip_min\": 90.0, \"hip_max\": 106.0}, {\"name\": \"2XL\", \"bust_min\": 92.0, \"bust_max\": 104.0, \"waist_min\": 86.0, \"waist_max\": 90.0, \"hip_min\": 94.0, \"hip_max\": 110.0}, {\"name\": \"3XL\", \"bust_min\": 96.0, \"bust_max\": 108.0, \"waist_min\": 90.0, \"waist_max\": 94.0, \"hip_min\": 94.0, \"hip_max\": 114.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Design: einfarbig schwarz, kein Muster\u003c\/li\u003e\n\u003cli\u003e✔ Passform: auf ruhigen Sitz bei normaler Bewegung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: nach dem Tragen mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer einfarbiger Badeanzug Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Badeanzug den ganzen Tag unruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSchlicht, einfarbig, für lange Tage am Wasser.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDer Badeanzug verrutscht beim Schwimmen oder Hinsetzen\u003c\/li\u003e\n\u003cli\u003eNach ein paar Stunden drückt der Bund unangenehm\u003c\/li\u003e\n\u003cli\u003eNass fühlt sich der Stoff schwer und klebrig an\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst ein paar Bahnen – und irgendwo auf dem Rückweg zum Handtuch merkst du, dass du nachziehen musst. Am Bund, am Ausschnitt, irgendwo. Das ist kein dramatisches Problem, aber es kostet Aufmerksamkeit, die man lieber woanders lässt.\u003c\/p\u003e\n\u003cp\u003eBei vielen Badeanzügen entsteht das nicht durch schlechtes Design, sondern durch einen Schnitt, der für das Liegen, nicht für die Bewegung gedacht wurde. Der Unterschied zeigt sich erst, wenn man sich tatsächlich bewegt – aufsteht, dreht, taucht.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Badeanzug Damen ist auf einen ruhigeren Sitz bei normaler Bewegung ausgelegt – nicht für intensive Sporteinheiten oder Wettkampfschwimmen, aber für einen aktiven Badetag. Wenn du eher auf sportliche Performance-Passform oder sehr enges Kompressionsgefühl stehst, könnte ein anderes Modell besser passen. Für alle, die einfach einen langen Tag am Wasser verbringen möchten, ohne viel nachkorrigieren zu müssen, kann dieser Schnitt eine Option sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Bewegungsfreiheit brauchst du – eher ruhige Badezeiten oder aktives Schwimmen?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau die verfügbaren Größen in Ruhe durch – ohne Zeitdruck.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Badetag noch ruhig – ohne häufiges Nachkorrigieren\u003c\/li\u003e\n\u003cli\u003e→ Einfarbiges Schwarz, das zu allem passt – vom Handtuch bis zum Strandcafé\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Einfarbig schwarz – zeitlos kombinierbar zu Strandoutfits\u003c\/li\u003e\n\u003cli\u003e✅ Schlichter Schnitt, auf ruhigen Sitz bei normalem Aktivitätslevel ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Keine Muster oder Aufdruck – Optik bleibt saison-unabhängig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensives Leistungsschwimmen oder Wettkampf weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer bunte Muster oder auffällige Prints mag, findet hier nicht das Richtige\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer einfarbiger Badeanzug Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eSchnitt auf ruhigeren Sitz bei normaler Bewegung ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt nach ein paar Stunden\u003c\/td\u003e\n\u003ctd\u003eEinteiliger Schnitt ohne separaten Bund – kann druckreduziert wirken\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFarbe verblasst nach einer Saison\u003c\/td\u003e\n\u003ctd\u003eSorgfältige Pflege (ausspülen, Feinwäsche) kann die Farbintensität länger erhalten\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen sind schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht zur Orientierung verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer einfarbiger Badeanzug Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer einfarbiger Badeanzug Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarzer einfarbiger Badeanzug Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer einfarbiger Badeanzug Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen eignet sich ein schlichter schwarzer Badeanzug Damen ohne Muster?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Badeanzug ist für Badetage am See, Pool oder Strand ausgelegt – mit normalem Bewegungsumfang wie Schwimmen, Liegen und Spazieren. Für intensives Leistungsschwimmen oder sportliche Wasseraktivitäten gibt es besser geeignete Schnitte.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe beim schwarzen einfarbigen Badeanzug Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner hilft dir anhand von Körpergröße und Gewicht, die passende Größe einzuschätzen. Bei Unsicherheit zwischen zwei Größen empfiehlt sich in der Regel die größere Variante für mehr Bewegungsfreiheit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen schwarzen Badeanzug richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – an der Luft trocknen erhält die Form länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eLässt sich ein schwarzer einfarbiger Badeanzug Damen gut mit Strandoutfits kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eSchwarz als einfarbige Basisfarbe lässt sich zu den meisten Strandaccessoires und Coverups kombinieren – helle Leinenhosen, gestreifte Tücher oder leichte Kimonos passen gut dazu. Das schlichte Design ohne Muster macht den Übergang vom Wasser an den Strandtisch unkomplizierter.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eBleibt die schwarze Farbe über mehrere Badesaisons erhalten?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eWie bei allen Badeanzügen beeinflusst regelmäßiger Kontakt mit Chlor oder Salzwasser die Farbintensität im Laufe der Zeit. Kurzes Ausspülen mit klarem Wasser nach jedem Tragen und schonendes Waschen bei 30 °C kann dazu beitragen, die Farbe länger zu erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-frauen\"\u003eBadeanzug Frauen\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-der-zeitlose-klassiker-fur-jeden-anlass\"\u003eSchwarzer Badeanzug: Der zeitlose Klassiker für jeden Anlass\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/schwarzer-badeanzug-damen\"\u003eSchwarzer Badeanzug Damen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schwarzer Badeanzug am Bodenseeufer – klare Silhouette im weichen Nachmittagslicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Übergang vom Wasser auf die Liegewiese – kein Umziehen, kein Nachdenken\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer einfarbiger Badeanzug Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer einfarbiger Badeanzug Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€29.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer einfarbiger Badeanzug Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 16.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer einfarbiger Badeanzug Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/womens-fashion-personality-solid-color-e5f3524e.png?v=1776854617\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"29.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Black \/ S","offer_id":54413463716108,"sku":"CJBJ142686204DW","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ M","offer_id":54413463748876,"sku":"CJBJ142686205EV","price":29.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ L","offer_id":54413463781644,"sku":"CJBJ142686206FU","price":29.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/womens-fashion-personality-solid-color-e5f3524e.png?v=1776854617"},{"product_id":"new-style-sexy-bikini-female-swimsuit-with-rope","title":"Bikini Mandala Muster Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini mit Muster aus, der am Strand einfach sitzt – und das den ganzen Tag?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du das Gefühl, wenn ein Bikini so sitzt, dass er kaum Aufmerksamkeit braucht – und man sich einfach dem Moment widmen kann.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines langen Badetages merkt man erst, wie viel Unterschied ein ruhig sitzender Schnitt ausmachen kann.\u003c\/p\u003e\n  \u003ch2\u003eBikini Mandala Muster Damen – bunter Print für Strand, See und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin zweiteiliges Bikini-Set mit buntem Mandala-Muster – figurnah geschnitten, mit Schnürdetail als Akzent, aus Polyester gefertigt, das sich leicht und glatt anfühlt.\u003c\/p\u003e\n\u003cp\u003eDas Mandala-Muster bewegt sich zwischen zwei Welten: nah genug an klassischen Mustern, um vertraut zu wirken, und lebendig genug, um am Wasser aufzufallen. Die geometrischen Formen greifen ineinander, das Farbspiel wirkt von Nähe wie von Weitem unterschiedlich – je nach Licht, je nach Blickwinkel. Solche Muster entstehen nicht zufällig; hinter jedem Mandala-Motiv steckt eine Symmetrie, die das Auge beruhigt, selbst wenn die Farben sprechen.\u003c\/p\u003e\n\u003cp\u003eAm Bodenseeufer, wenn die Sonne flach auf das Wasser fällt, setzen sich die Farben des Musters vom hellen Sand ab – ohne zu laut zu werden. Am Hotelpool, beim Aufstehen von der Liege, zieht das Design kurz den Blick an, ehe man ins Wasser geht. Wer ruhige Muster mit einer gewissen Tiefe schätzt, findet hier einen Bikini, der figurnah sitzt und trotzdem nicht aufdringlich wirkt. Das Schnürdetail ergänzt das Mandala-Motiv als bewusster Formakzent – nicht dominant, aber sichtbar.\u003c\/p\u003e\n\u003cp\u003eAls Urlaubsbegleitung am See, für entspannte Pooltage oder als Wahl für einen Strandtag, bei dem man sich im Bikini wohlfühlen möchte, ohne viel nachzudenken. Das Muster macht es leicht, den Bikini allein zu tragen – ein Wickelpareo oder ein helles Cover-up ergänzt ihn, wenn man möchte.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Mandala-Muster fällt beim ersten Anziehen auf, ohne zu überfordern – eine Ruhe in der Farbe.\u003cbr\u003e• Am Wasser, wenn Sonnenlicht auf den Stoff fällt, wirkt das Muster dreidimensionaler als auf dem Foto.\u003cbr\u003e• Der figurbetonte Schnitt gibt dem ganzen Set eine klare Silhouette – für Momente, in denen man einfach präsent sein möchte.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle jetzt deine Größe – unsere Tabelle hilft dir beim Einschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 64.2, \"bust_max\": 80.4, \"waist_min\": 47.4, \"waist_max\": 63.6, \"hip_min\": 68.4, \"hip_max\": 84.6}, {\"name\": \"M\", \"bust_min\": 68.4, \"bust_max\": 84.6, \"waist_min\": 51.6, \"waist_max\": 67.8, \"hip_min\": 72.6, \"hip_max\": 88.8}, {\"name\": \"L\", \"bust_min\": 72.6, \"bust_max\": 88.8, \"waist_min\": 55.8, \"waist_max\": 72.0, \"hip_min\": 76.8, \"hip_max\": 93.0}, {\"name\": \"XL\", \"bust_min\": 76.8, \"bust_max\": 93.0, \"waist_min\": 60.0, \"waist_max\": 76.2, \"hip_min\": 81.0, \"hip_max\": 97.2}, {\"name\": \"2XL\", \"bust_min\": 81.0, \"bust_max\": 97.2, \"waist_min\": 64.2, \"waist_max\": 80.4, \"hip_min\": 85.2, \"hip_max\": 101.4}, {\"name\": \"3XL\", \"bust_min\": 85.2, \"bust_max\": 101.4, \"waist_min\": 68.4, \"waist_max\": 84.6, \"hip_min\": 89.4, \"hip_max\": 105.6}, {\"name\": \"4XL\", \"bust_min\": 89.4, \"bust_max\": 105.6, \"waist_min\": 72.6, \"waist_max\": 88.8, \"hip_min\": 93.6, \"hip_max\": 109.8}, {\"name\": \"5XL\", \"bust_min\": 93.6, \"bust_max\": 109.8, \"waist_min\": 76.8, \"waist_max\": 93.0, \"hip_min\": 97.8, \"hip_max\": 114.0}, {\"name\": \"6XL\", \"bust_min\": 97.8, \"bust_max\": 114.0, \"waist_min\": 81.0, \"waist_max\": 97.2, \"hip_min\": 102.0, \"hip_max\": 118.2}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyesterfaser (Polyester)\u003c\/li\u003e\n\u003cli\u003e✔ Schnitt: figurnah, zweiteilig, mit Schnürdetail am Oberteil\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Mandala Muster Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini unterwegs unruhig sitzt und am Ende des Tages nachjustiert wurde\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003ePassform und Muster können zusammengehen – wenn Schnitt und Design aufeinander abgestimmt sind.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eBikini verrutscht beim Ins-Wasser-Gehen\u003c\/li\u003e\n\u003cli\u003eUnterteil drückt nach einer Weile am Bund\u003c\/li\u003e\n\u003cli\u003eMuster wirkt auf Fotos anders als in Wirklichkeit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManche Bikinis sehen auf dem Foto genau richtig aus – und machen sich am Strand dann bemerkbar: das Oberteil braucht Korrektur beim Auftauchen, das Unterteil sitzt nach einer Stunde anders als beim Anziehen. Das ist kein seltenes Problem, sondern eine häufige Rückmeldung bei Bikinis, die primär auf Optik ausgelegt wurden.\u003c\/p\u003e\n\u003cp\u003eEin figurnah geschnittener Bikini mit Schnürdetail wie dieser ist auf einen ruhigen Sitz bei normaler Bewegung ausgelegt – Gehen am Strand, ins Wasser gehen, auf der Liege liegen. Das Schnürband am Oberteil kann dazu beitragen, dass der Halt individuell angepasst wird. Bei intensiven Wassersportarten oder starker Strömung ist das Modell allerdings nicht die erste Wahl – dafür gibt es sportlichere Schnitte mit mehr Stützfunktion.\u003c\/p\u003e\n\u003cp\u003eWenn du einen Bikini suchst, der dezent figurnah sitzt, ein lebendiges Muster mitbringt und für entspannte Badetage gedacht ist, kann dieses Modell passen. Wenn du hingegen maximale Bedeckung oder einen sehr zurückhaltenden, einfarbigen Look bevorzugst, ist ein anderes Modell möglicherweise näher an dem, was du suchst.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie viel Halt und wie viel Muster möchtest du an einem Badetag eigentlich haben?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Größentabelle an und vergleiche deine Maße in Ruhe – ohne Zeitdruck.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Strandtag noch ähnlich wie beim Anziehen\u003c\/li\u003e\n\u003cli\u003e→ Muster wird im direkten Sonnenlicht als lebendiger wahrgenommen als erwartet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Buntes Mandala-Muster mit geometrischer Struktur – sichtbar, aber nicht überwältigend\u003c\/li\u003e\n\u003cli\u003e✅ Schnürdetail am Oberteil für individuell anpassbaren Halt bei normaler Belastung\u003c\/li\u003e\n\u003cli\u003e✅ Figurnah geschnitten – für Bademomente am Strand, See und Pool\u003c\/li\u003e\n\u003cli\u003e✅ Leichtes Polyestermaterial – glatt und angenehm auf der Haut\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Weniger geeignet für intensive Wassersportarten oder starke Strömung\u003c\/li\u003e\n\u003cli\u003e⚠️ Für sehr bedeckende oder einfarbig-minimalistische Bademode-Präferenzen nicht ideal\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein formender oder stützender Effekt – wer maximalen Halt sucht, sollte andere Schnitte vergleichen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Mandala Muster Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht nach dem Schwimmen\u003c\/td\u003e\n\u003ctd\u003eSchnürdetail ermöglicht individuell anpassbaren Halt bei normaler Bewegung\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpermaßen – Tabelle zum Vergleichen vor dem Kauf\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt auf Fotos anders als in der Realität\u003c\/td\u003e\n\u003ctd\u003eGeometrisches Mandala-Muster mit klarer Struktur – im Sonnenlicht lebendiger als im Studio\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Mandala Muster Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Mandala Muster Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: polyester fiber (polyester)\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Mandala Muster Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Mandala Muster Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim bunten Mandala Bikini Damen mit Schnürung die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNimm deine Körpermaße (Brust, Taille, Hüfte) als Grundlage und vergleiche sie mit der Größentabelle. Bei Unsicherheit zwischen zwei Größen kann es helfen, die größere Variante zu wählen – figurnah geschnittene Bikinis sitzen bei etwas mehr Spielraum in der Regel angenehmer.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt das Oberteil bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil ist mit einem Schnürband ausgestattet, das einen individuell anpassbaren Halt ermöglicht. Bei normaler Bewegung im Wasser – Schwimmen, Ins-Wasser-Gehen – kann das Schnürband für einen ruhigeren Sitz sorgen. Für intensive Wassersportarten ist ein sportlicher Schnitt mit fester Trägerstruktur in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini mit Mandala-Print richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Anschließend im Feinwäschgang bei 30 °C waschen, nicht im Trockner trocknen. Auf links gewaschen bleibt das Muster länger kräftig.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der Mandala Bikini auch für den Bodensee geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Modell ist für entspannte Badetage am See, am Pool und im Urlaub ausgelegt. Für ruhiges Schwimmen und Aufenthalte am Bodenseeufer ist der Schnitt gut geeignet. Für sportliche Aktivitäten wie Surfen oder Schnorcheln gibt es besser abgestimmte Alternativen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt das Mandala-Muster in Wirklichkeit – ähnlich wie auf dem Foto?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Mandala-Muster mit geometrischen Formen wirkt je nach Licht unterschiedlich. Im direkten Sonnenlicht können die Farben kräftiger erscheinen als auf dem Produktfoto. Die symmetrische Struktur des Musters bleibt in jedem Licht erkennbar.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Buntes Mandala-Muster im Sonnenlicht am Wasser – Farben setzen sich vom hellen Sand ab\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Schnürdetail am Oberteil als sichtbarer Designakzent beim Aufstehen von der Liege\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Mandala Muster Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Mandala Muster Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€22.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Mandala Muster Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Mandala Muster Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/new-style-sexy-bikini-with-rope-fe122d2c.png?v=1776854234\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"22.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"A \/ S","offer_id":54413465256204,"sku":"CJLJ113065001AZ","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"A \/ M","offer_id":54413465288972,"sku":"CJLJ113065002BY","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"A \/ L","offer_id":54413465321740,"sku":"CJLJ113065003CX","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"A \/ XL","offer_id":54413465354508,"sku":"CJLJ113065004DW","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"B \/ S","offer_id":54413465387276,"sku":"CJLJ113065005EV","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"B \/ M","offer_id":54413465420044,"sku":"CJLJ113065006FU","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"B \/ L","offer_id":54413465452812,"sku":"CJLJ113065007GT","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"B \/ XL","offer_id":54413465485580,"sku":"CJLJ113065008HS","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"C \/ S","offer_id":54413465518348,"sku":"CJLJ113065009IR","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"C \/ M","offer_id":54413465551116,"sku":"CJLJ113065010JQ","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"C \/ L","offer_id":54413465583884,"sku":"CJLJ113065011KP","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"C \/ XL","offer_id":54413465616652,"sku":"CJLJ113065012LO","price":22.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/new-style-sexy-bikini-with-rope-fe122d2c.png?v=1776854234"},{"product_id":"womens-three-piece-set-mesh-outerwear-printing-color-contrast-bikini","title":"Badeanzug mit Blütenmotiven","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht ein Bikini-Set aus, das sich am Strand zusammenhängend trägt – und dabei ruhig bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn Oberteil, Hose und Überwurf einfach zusammenpassen – ohne dass man groß nachdenken muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eBei dreiteiligen Sets merkt man den Unterschied oft erst unterwegs – wenn der Look als Ganzes funktioniert oder eben nicht.\u003c\/p\u003e\n  \u003ch2\u003eBadeanzug mit Blütenmotiven und Mesh-Überwurf – 3-teiliges Bikini Set für Strand und Pool\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieses Set gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin dreiteiliges Bikini-Set mit Mesh-Überwurf – pinke Blütenmotive auf schwarzem Grund, leichter Farbkontrast, Polyamid-Elasthan-Stoff der sich anpasst.\u003c\/p\u003e\n\u003cp\u003eDer Badeanzug mit Blütenmotiven arbeitet mit einem klaren Kontrast: dunkler Grund, helle Blüten, ein Muster das am See genauso ruhig wirkt wie am Hotelpool. Das Blütenmotiv ist groß genug um sichtbar zu sein, aber nicht so dominant, dass es das Gesamtbild übernimmt. Der Mesh-Überwurf nimmt das Schwarz wieder auf – so entsteht ein koordinierter Look, bei dem die drei Teile zusammen gedacht sind.\u003c\/p\u003e\n\u003cp\u003eWer am Strand spazieren geht und den Überwurf locker über die Schultern zieht, merkt: Das Set hält optisch zusammen, ohne dass man extra koordinieren muss. Am Beckenrand abgelegt, sieht es wie ein bewusst gewähltes Outfit aus – nicht wie zusammengesuchte Einzelteile. Der Farbkontrast zwischen Blüten und Grund lässt sich auf Fotos gut ablesen, was bei Print-Designs am Handy-Display oft entscheidend ist.\u003c\/p\u003e\n\u003cp\u003eDrei konkrete Situationen, in denen das Set seinen Platz findet: beim Strandspaziergang mit leicht übergeworfenem Mesh-Teil, in der Beachbar wenn man nicht direkt im Wasser ist, und im Urlaub als Resort-Look der zwischen Pool und Promenade funktioniert.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Pinke Blüten auf Schwarz – ein Kontrast, der auf echten Fotos klarer wirkt als verwischte Prints\u003cbr\u003e• Drei aufeinander abgestimmte Teile, die sich zusammen tragen lassen ohne einzeln zusammengestellt zu wirken\u003cbr\u003e• Der Mesh-Überwurf gibt etwas mehr Bedeckung, ohne den Bikini darunter zu verdecken\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle unten deine Größe – oder lies weiter, um einzuschätzen ob Schnitt und Stil zu dir passen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 86.0, \"bust_max\": 89.0, \"waist_min\": 66.0, \"waist_max\": 68.5, \"hip_min\": 93.0, \"hip_max\": 95.0}, {\"name\": \"M\", \"bust_min\": 92.5, \"bust_max\": 96.5, \"waist_min\": 71.0, \"waist_max\": 73.5, \"hip_min\": 98.0, \"hip_max\": 100.0}, {\"name\": \"L\", \"bust_min\": 98.0, \"bust_max\": 101.5, \"waist_min\": 77.5, \"waist_max\": 81.0, \"hip_min\": 104.0, \"hip_max\": 108.0}, {\"name\": \"XL\", \"bust_min\": 102.5, \"bust_max\": 108.5, \"waist_min\": 82.0, \"waist_max\": 88.0, \"hip_min\": 108.7, \"hip_max\": 114.7}, {\"name\": \"XXL\", \"bust_min\": 106.0, \"bust_max\": 112.0, \"waist_min\": 86.0, \"waist_max\": 92.0, \"hip_min\": 112.5, \"hip_max\": 118.5}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Set-Typ: 3-teilig (Bikini-Oberteil, Hose, Mesh-Überwurf)\u003c\/li\u003e\n\u003cli\u003e✔ Material: 78 % Polyamid, 22 % Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Badeanzug mit Blütenmotiven sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Bikini-Sets online anders wirken als am Strand\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eDrei Teile, ein abgestimmter Look – für Strand, Pool und Urlaub.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil und Hose passen für sich, wirken zusammen aber unruhig\u003c\/li\u003e\n\u003cli\u003eBei dreiteiligen Sets ist schwer einzuschätzen ob Cover-up und Bikini harmonieren\u003c\/li\u003e\n\u003cli\u003ePrints sehen auf dem Bildschirm anders aus als im echten Sonnenlicht\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man bestellt ein Set, weil die Einzelteile überzeugend aussehen – und stellt dann am ersten Urlaubstag fest, dass Farben, Print und Schnitt zusammen nicht ganz das ergeben, was man sich vorgestellt hatte. Besonders bei Farbkontrast-Prints kann die Wirkung zwischen Produktbild und echtem Licht spürbar auseinandergehen.\u003c\/p\u003e\n\u003cp\u003eDas liegt oft nicht am Set selbst, sondern an der Art wie kontrastreiche Prints auf Bildschirmen gerendert werden. Ein klarer Kontrast – wie Schwarz mit Pinktönen – lässt sich in der Regel besser einschätzen als Muster mit vielen ähnlichen Farben. Zusätzlich kann bei dreiteiligen Sets die Frage entstehen, ob Überwurf und Bikini als kompletter Look funktionieren oder ob man sie eher getrennt tragen würde.\u003c\/p\u003e\n\u003cp\u003eDieses Set ist als koordinierter dreiteiliger Look aufgebaut – Bikini-Oberteil, Hose und Mesh-Überwurf sind aufeinander abgestimmt. Der Überwurf kann zusätzliche Bedeckung geben, wenn man nicht direkt im Wasser ist, ohne den Bikini komplett zu verdecken. Das kann für manche Trägerin angenehm sein – besonders wenn man zwischen Strand, Strandbar und Spaziergang wechselt. Wenn du einen sehr minimalistischen Zweiteiler ohne Überwurf bevorzugst, ist dieses Set womöglich nicht dein Stil.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst ein dreiteiliger Look mit Blütenprint und Mesh-Überwurf zu der Art, wie du dich am Strand bewegst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau dir die Detailbilder an und entscheide dann, ob Schnitt und Stil zu dir passen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ getragen beim Strandspaziergang mit locker übergeworfenem Mesh-Teil\u003c\/li\u003e\n\u003cli\u003e→ genutzt als Urlaubslook zwischen Pool und Promenade\u003c\/li\u003e\n\u003cli\u003e→ in Outfit- oder Reisefotos mit klarem Farbkontrast gut ablesbar\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dreiteiliger koordinierter Look – Bikini und Mesh-Überwurf aufeinander abgestimmt\u003c\/li\u003e\n\u003cli\u003e✅ Klarer Farbkontrast (Schwarz\/Pink) – lässt sich vor dem Kauf gut einschätzen\u003c\/li\u003e\n\u003cli\u003e✅ Elasthan-Anteil kann für Bewegungsfreiheit und Dehnbarkeit sorgen\u003c\/li\u003e\n\u003cli\u003e✅ Mesh-Überwurf gibt bei Bedarf mehr Bedeckung, ohne den Bikini zu verdecken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Wer starke formende oder stützende Funktion erwartet – dafür ist dieses Set nicht ausgelegt\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer einen sehr minimalistischen Zweiteiler ohne Überwurf bevorzugt\u003c\/li\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder häufiges Schwimmen auf Zeit ist Beachwear dieser Art weniger geeignet\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Badeanzug mit Blütenmotiven\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eEinzelteile wirken oft unkoordiniert, wenn Farben oder Schnitte nicht aufeinander abgestimmt sind.\u003c\/td\u003e\n\u003ctd\u003eDas Set ist als dreiteiliger Look konzipiert – Oberteil, Hose und Mesh-Überwurf sind zusammen gedacht.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLeichte Bikinis lassen wenig Spielraum bei Bedeckung zwischen Pool und Strandbar.\u003c\/td\u003e\n\u003ctd\u003eDer Mesh-Überwurf kann bei Bedarf zusätzliche Bedeckung geben, ohne den Bikini darunter komplett zu verdecken.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMaterialien ohne Elasthan-Anteil passen sich oft weniger an und fühlen sich steifer an.\u003c\/td\u003e\n\u003ctd\u003eDer Elasthan-Anteil (22 %) kann für mehr Dehnbarkeit und Bewegungsfreiheit sorgen.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eKontrastreiche Prints können online anders wirken als in der Realität.\u003c\/td\u003e\n\u003ctd\u003eEin klar definierter Schwarz-Pink-Kontrast lässt sich vor dem Kauf besser einschätzen als Muster mit ähnlichen Farbtönen.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Badeanzug mit Blütenmotiven mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Badeanzug mit Blütenmotiven im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBadeanzug mit Blütenmotiven\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Badeanzug mit Blütenmotiven\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWas enthält das 3-teilige Bikini Set mit Überwurf?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set besteht aus einem Bikini-Oberteil, einer Bikini-Hose und einem leichten Mesh-Überwurf. Alle drei Teile sind aufeinander abgestimmt und können zusammen oder einzeln getragen werden.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich ein Bikini Set mit Mesh Outerwear und Blütenprint richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann in der Feinwäsche bei 30 °C waschen. Nicht im Trockner trocknen – das schont das Material und den Mesh-Überwurf längerfristig.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim Badeanzug mit Blütenmotiven die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein. Bei Unsicherheit zwischen zwei Größen empfiehlt sich bei diesem Schnitt häufig die größere Variante.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieses Bikini-Set auch für den Pool geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set ist für Strand, Pool und Urlaubssituationen ausgelegt. Den Mesh-Überwurf würdest du eher außerhalb des Wassers tragen – beim Spaziergang, in der Beachbar oder auf dem Weg zum Wasser.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt der Farbkontrast des Blütenprints in echt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003ePinke Blüten auf schwarzem Grund bilden einen klaren Kontrast, der sich in der Regel gut einschätzen lässt – besonders im Vergleich zu Mustern mit vielen ähnlichen Farbtönen. Die Detailbilder im Shop geben den besten Eindruck der tatsächlichen Wirkung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-figurwunder-diese-20-modelle-zaubern-eine-traumfigur\"\u003eBadeanzug Figurwunder: Diese 20 Modelle zaubern eine Traumfigur\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-figurwunder-so-schmeicheln-sie-ihrer-figur-am-strand\"\u003eBadeanzug Figurwunder: So schmeicheln Sie Ihrer Figur am Strand\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/modische-plus-size-cover-ups-strandkleider-fur-den-sommer-2024\"\u003eModische Plus-Size Cover-Ups \u0026amp; Strandkleider für den Sommer 2024\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Pinke Blütenmotive auf schwarzem Grund – Nahaufnahme des Prints im Sonnenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Mesh-Überwurf locker über die Schultern, Bikini darunter sichtbar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Badeanzug mit Blütenmotiven eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBadeanzug mit Blütenmotiven\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€35.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Badeanzug mit Blütenmotiven dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 16.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Badeanzug mit Blütenmotiven\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/womens-three-piece-mesh-outerwear-bikini-318cb423-model-shot.png?v=1776776053\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"35.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Rose Red \/ S","offer_id":54413469384972,"sku":"CJYD189280005EV","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red \/ M","offer_id":54413469417740,"sku":"CJYD189280006FU","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red \/ L","offer_id":54413469450508,"sku":"CJYD189280007GT","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red \/ XL","offer_id":54413469483276,"sku":"CJYD189280008HS","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"One Piece Customized Style \/ S","offer_id":54413469516044,"sku":"CJYD189280009IR","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"One Piece Customized Style \/ M","offer_id":54413469548812,"sku":"CJYD189280010JQ","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"One Piece Customized Style \/ L","offer_id":54413469581580,"sku":"CJYD189280011KP","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"One Piece Customized Style \/ XL","offer_id":54413469614348,"sku":"CJYD189280012LO","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow Leaves \/ S","offer_id":54413469647116,"sku":"CJYD189280013MN","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow Leaves \/ M","offer_id":54413469679884,"sku":"CJYD189280014NM","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow Leaves \/ L","offer_id":54413469712652,"sku":"CJYD189280015OL","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow Leaves \/ XL","offer_id":54413469745420,"sku":"CJYD189280016PK","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Orange Color Stripes \/ S","offer_id":54413469778188,"sku":"CJYD189280017QJ","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Orange Color Stripes \/ M","offer_id":54413469810956,"sku":"CJYD189280018RI","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Orange Color Stripes \/ L","offer_id":54413469843724,"sku":"CJYD189280019SH","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Orange Color Stripes \/ XL","offer_id":54413469876492,"sku":"CJYD189280020TG","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red Color Stripes \/ S","offer_id":54413469909260,"sku":"CJYD189280021UF","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red Color Stripes \/ M","offer_id":54413469942028,"sku":"CJYD189280022VE","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red Color Stripes \/ L","offer_id":54413469974796,"sku":"CJYD189280023WD","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Rose Red Color Stripes \/ XL","offer_id":54413470007564,"sku":"CJYD189280024XC","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Black And White Flowers \/ S","offer_id":54413470040332,"sku":"CJYD189280025YB","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Black And White Flowers \/ M","offer_id":54413470073100,"sku":"CJYD189280026ZA","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Black And White Flowers \/ L","offer_id":54413470105868,"sku":"CJYD189280027AZ","price":35.95,"currency_code":"EUR","in_stock":true},{"title":"Black And White Flowers \/ XL","offer_id":54413470138636,"sku":"CJYD189280028BY","price":35.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/womens-three-piece-mesh-outerwear-bikini-318cb423-model-shot.png?v=1776776053"},{"product_id":"three-piece-bikini-printed-split-womens-swimsuit-suit","title":"gelber Bikini Blumen Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen gelben Bikini aus, der am Strand einfach sitzt – den ganzen Tag?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini sich anfühlt, als wäre er genau richtig – ohne dass man ständig nachdenken muss.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages zeigt sich, wie ein Bikini wirklich sitzt – beim Ins-Wasser-Gehen, beim Aufstehen aus dem Sand, beim Hinsetzen am Ufer.\u003c\/p\u003e\n  \u003ch2\u003eGelber Bikini Damen mit Blumen-Detail – für Strand, See und Sommertage\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin gelber Bikini mit zartem Blumenmuster am Saum – dezent gesetzt, klar geschnitten, aus elastischem Material mit angenehmer Bewegungsfreiheit.\u003c\/p\u003e\n\u003cp\u003eDas Gelb ist kein lautes Signalgelb, sondern ein wärmeres Sonnengelb – wie der erste Lichtstreif über dem Bodensee am frühen Morgen. Das Blumenmuster erscheint nicht über den ganzen Stoff verteilt, sondern als ruhiges Detail am Saum: ein Hinweis auf Sommer, kein Statement. Wer Bademode mag, die nicht sofort ins Auge springt, aber trotzdem etwas sagt, könnte genau hier fündig werden.\u003c\/p\u003e\n\u003cp\u003eDie Kombination aus klarem Gelb und dem zurückhaltenden Blumen-Detail wirkt leicht und zugleich geerdet. Am Bodenseeufer, wo das Licht anders fällt als am Mittelmeer, fügt sich dieser Bikini in die Umgebung ein – nicht als Eyecatcher, sondern als Teil des Moments. Als dreiteiliges Set lässt sich das Oberteil flexibel mit dem Slip kombinieren; die Farbe harmoniert mit Weiß, Beige oder Naturfarben, ohne sich aufzudrängen.\u003c\/p\u003e\n\u003cp\u003eDrei Momente, in denen das Design wirkt: Am frühen Morgen beim ersten Gang ins Wasser, wenn das Gelb warm im Licht leuchtet. Beim Hinlegen auf dem Handtuch, wenn das Blumenmuster am Saum sanft sichtbar wird. Beim abendlichen Spaziergang entlang des Ufers, wenn der Sarong locker umgebunden eine zweite Ebene hinzufügt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Gelb wirkt im Sonnenlicht warm, nicht grell – und bleibt dabei angenehm zurückhaltend.\u003cbr\u003e• Das Blumen-Detail am Saum fällt erst beim zweiten Blick auf – genau so viel wie nötig.\u003cbr\u003e• Als Set getragen oder einzeln kombiniert: das Oberteil lässt sich vielseitig einsetzen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, schau die Größen durch – der Größenrechner hilft dir dabei, die passende Wahl einzuschätzen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Elasthan\u003c\/li\u003e\n\u003cli\u003e✔ Design: Gelb mit Blumenmuster am Saum\u003c\/li\u003e\n\u003cli\u003e✔ Produkttyp: Bikini mit Sarong, dreiteilig kombinierbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann gelber Bikini Blumen Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini den ganzen Tag unruhig sitzt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz, Schnitt und ein ruhiges Design – was zusammenpasst, was nicht.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil hält beim Schwimmen nicht wirklich\u003c\/li\u003e\n\u003cli\u003eDie Größe online einzuschätzen ist schwieriger als gedacht\u003c\/li\u003e\n\u003cli\u003eNach ein paar Stunden zieht der Bund unangenehm\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eWer einen Tag am See oder Strand verbringt, bewegt sich mehr als geplant – ins Wasser, aus dem Wasser, auf dem Handtuch drehen, aufstehen. Dabei zeigt sich, ob ein Bikini wirklich sitzt oder ob man ihn ständig im Blick behalten muss. Ein Oberteil, das beim Schwimmen verrutscht, oder ein Bund, der nach zwei Stunden drückt, lenkt ab – von dem, was der Tag eigentlich sein soll.\u003c\/p\u003e\n\u003cp\u003eDas liegt oft nicht an der Trägerin, sondern am Schnitt: Wenn Oberteil und Unterteil aus verschiedenen Größenbereichen kommen müssten, aber als festes Set verkauft werden, entsteht oft ein Kompromiss, der keiner Seite ganz gerecht wird. Elastisches Material kann helfen, ist aber kein Ersatz für einen Schnitt, der auf Bewegung ausgelegt ist.\u003c\/p\u003e\n\u003cp\u003eDieser gelbe Bikini mit Blumenmuster ist auf ruhigen Sitz bei Alltagsbewegungen am Wasser ausgelegt – kein Leistungsschwimmen, kein Sport, sondern ein entspannter Badetag. Wer intensive Wasseraktivitäten plant oder einen sehr sportlichen Schnitt bevorzugt, ist mit einem anderen Modell möglicherweise besser beraten. Für einen ruhigen Tag am See oder Strand, bei dem Komfort und dezentes Design im Vordergrund stehen, kann dieser Bikini eine passende Option sein.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePasst das zu dem, wie du einen Badetag verbringst?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau die verfügbaren Größen durch und finde heraus, was für dich stimmt.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Gehen und Aufstehen ruhig\u003c\/li\u003e\n\u003cli\u003e→ Blumenmuster fällt erst beim zweiten Blick auf – bewusst dezent gehalten\u003c\/li\u003e\n\u003cli\u003e→ Gelb wirkt im Sonnenlicht warm, nicht grell\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Blumen-Detail am Saum – wirkt zurückhaltend, nicht aufdringlich\u003c\/li\u003e\n\u003cli\u003e✅ Elastisches Material – passt sich bei normaler Bewegung an\u003c\/li\u003e\n\u003cli\u003e✅ Als dreiteiliges Set kombinierbar – flexibel in der Zusammenstellung\u003c\/li\u003e\n\u003cli\u003e✅ Warmes Sonnengelb – harmoniert mit Beige, Weiß und Naturfarben\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensives Schwimmen oder sportliche Wasseraktivitäten weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer kräftige Farben oder großflächige Muster bevorzugt, findet hier ein ruhigeres Design\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine belegten Angaben zu Chlor- oder Salzwasserbeständigkeit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ gelber Bikini Blumen Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei normaler Alltagsbewegung am Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht als Orientierungshilfe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBikini-Sets ohne Flexibilität bei Ober-\/Unterteil\u003c\/td\u003e\n\u003ctd\u003eDreiteilig kombinierbar – Oberteil und Slip können separat eingeschätzt werden\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLaute Muster oder große Logos dominieren das Design\u003c\/td\u003e\n\u003ctd\u003eZartes Blumenmuster am Saum – dezent gesetzt, kein Aufdruck über den ganzen Stoff\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei gelber Bikini Blumen Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich gelber Bikini Blumen Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Elasthan\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003egelber Bikini Blumen Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu gelber Bikini Blumen Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim gelben Bikini Damen die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNutze unseren Größenrechner und gib Körpergröße und Gewicht ein – so lässt sich der passende Schnitt gut einschätzen. Bei Unsicherheit zwischen zwei Größen kann es helfen, die Maßangaben direkt zu vergleichen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser geblümte Bikini auch für Schwimmen geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf ruhigen Sitz bei normaler Bewegung am Wasser ausgelegt – für entspannte Badetage am See oder Strand. Für intensives Schwimmen oder sportliche Wasseraktivitäten ist ein speziell dafür entwickeltes Modell in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini mit Blumenmuster richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwäschgang bei 30 °C waschen. Nicht im Trockner trocknen – liegend oder hängend an der Luft trocknen lassen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Oberteil und Unterteil dieses Bikini Sets auch separat kombinieren?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Oberteil und der Slip sind als Set konzipiert, lassen sich aber grundsätzlich auch mit anderen Teilen in ähnlicher Farbgebung kombinieren. Welche Kombination für dich passt, hängt von Schnitt und Farbe der anderen Teile ab.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund bei Bewegung – zum Beispiel beim Aufstehen oder Gehen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bund ist auf angenehmen Sitz bei normaler Alltagsbewegung ausgelegt – beim Gehen, Hinsetzen und ins Wasser gehen. Das elastische Material passt sich dabei mit. Bei sehr intensiver Bewegung kann das Ergebnis variieren.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Warmes Sonnengelb im Morgenlicht am Bodenseeufer\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Blumenmuster am Saum beim Hinlegen auf dem Handtuch sichtbar\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann gelber Bikini Blumen Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003egelber Bikini Blumen Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€38.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass gelber Bikini Blumen Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"gelber Bikini Blumen Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-bikini-printed-split-o1cn018j2s6c-model-shot.png?v=1776775588\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"38.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"C3854 Yellow Printings \/ S","offer_id":54413471645964,"sku":"CJYD231310401AZ","price":38.95,"currency_code":"EUR","in_stock":true},{"title":"C3854 Yellow Printings \/ M","offer_id":54413471678732,"sku":"CJYD231310402BY","price":38.95,"currency_code":"EUR","in_stock":true},{"title":"C3854 Yellow Printings \/ L","offer_id":54413471711500,"sku":"CJYD231310403CX","price":38.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-bikini-printed-split-o1cn018j2s6c-model-shot.png?v=1776775588"},{"product_id":"three-piece-v-buckle-solid-color-printing-triangle-bikini","title":"gelber Bikini tropisches Blättermuster","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen gelben Bikini aus, der am Strand einfach sitzt – und auch so bleibt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini-Set von Anfang an passt – ohne Nachziehen, ohne Nachdenken.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eBeim Aufstehen aus dem Wasser, beim Hinlegen auf dem Handtuch – da zeigt sich, ob ein Bikini wirklich zu einem passt.\u003c\/p\u003e\n  \u003ch2\u003eGelber Bikini Damen mit tropischem Blättermuster – Triangle-Top mit Überwurf für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nTriangle-Form mit V-Schnallen-Detail am Top – für eine natürliche Silhouette ohne Polsterung. Das tropische Blättermuster in Gelb bringt Farbe, der leichte Überwurf ergänzt das Set als dritter Teil für den Weg vom Wasser zur Liege.\u003c\/p\u003e\n\u003cp\u003eDas Motiv ist bunt, aber nicht laut. Großblättrige tropische Formen auf gelbem Grund – eine Bildwelt, die an warme Sommernachmittage erinnert: am Bodenseeufer, auf einer Terrasse, irgendwo wo die Luft ein bisschen nach Sonnencreme riecht. Der Überwurf mit dem gleichen Muster macht das Set zu einem abgestimmten Ganzen, ohne dass man danach suchen müsste.\u003c\/p\u003e\n\u003cp\u003eDas Triangle-Top setzt ein dezentes V-Schnallen-Detail in der Mitte. Das ist kein aufdringlicher Akzent, aber er gibt dem Frontbereich eine klare Linie – statt der oft gesichtslosen Fläche vieler einfacher Dreiecks-Tops. Wer sehr reduzierte Bademode ohne jedes Detail bevorzugt, findet das Buckle-Element vielleicht zu präsent. Wem ein ruhiger, aber sichtbarer Akzent liegt, kann es als bewusstes Merkmal einordnen. Die Träger sind nicht verstellbar – was die Konstruktion schlicht hält, aber bedeutet, dass die Passform stärker von der gewählten Größe abhängt.\u003c\/p\u003e\n\u003cp\u003eDas Set passt gut in Situationen, in denen man nicht zu viel Gedanken ans Outfit verschwenden möchte: Wasser rein, Überwurf überwerfen, weiter. Am See nach einem langen Arbeitstag, auf einem Balkonurlaub mit Blick aufs Meer, oder einfach beim Nichtstun am Pool – das tropische Gelb bringt Stimmung mit, ohne viel Aufwand.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt sofort auf – aber ruhig, nicht überwältigend\u003cbr\u003e• Der Überwurf passt zum Oberteil, ohne dass man suchen muss\u003cbr\u003e• Das Set wirkt abgestimmt, ohne dass es nach Matching-Set-Aufwand aussieht\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du ein abgestimmtes Triangle-Set mit Charakter suchst, lohnt ein Blick auf die Größenübersicht.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": []}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyester Fiber\u003c\/li\u003e\n\u003cli\u003e✔ Set: Triangle-Bikini-Top mit V-Schnallen-Detail, Bikini-Slip, Überwurf mit Blättermuster\u003c\/li\u003e\n\u003cli\u003e✔ Passform: ungepolstert, drahtlos, nicht verstellbare Träger, Hakenverschluss\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann gelber Bikini tropisches Blättermuster sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Set aus drei Teilen bestehen soll – und trotzdem ruhig wirkt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eTriangle-Top, Slip und Überwurf – ein Set, das zusammengehört.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil und Unterteil sehen getrennt aus, obwohl sie ein Set sein sollen\u003c\/li\u003e\n\u003cli\u003eDas Muster ist entweder zu dezent oder zu laut – nichts dazwischen\u003c\/li\u003e\n\u003cli\u003eTriangle-Tops ohne Detail wirken manchmal beliebig\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele Bikinis lassen sich im Produktbild gut an, aber am Strand zeigt sich dann: Top und Slip wirken unabgestimmt, oder das Oberteil sitzt bei jeder Bewegung anders. Das passiert oft, wenn Schnitt, Trägerführung und Detail nicht aufeinander abgestimmt sind – und man das erst merkt, wenn man schon im Wasser war.\u003c\/p\u003e\n\u003cp\u003eBei Triangle-Tops ohne innere Konstruktion liegt das häufig an Trägern, die zu weich sind und sich bei Bewegung verschieben. Nicht verstellbare Träger mit einem festen Hakenverschluss können dazu beitragen, dass das Top ruhiger sitzt – allerdings hängt das stärker von der gewählten Größe ab als bei Modellen mit Verstellmöglichkeit.\u003c\/p\u003e\n\u003cp\u003eDieses Set – Top, Slip und Überwurf – ist auf eine natürliche, leichte Silhouette ausgelegt. Keine Polsterung, kein Bügel, kein Push-up-Effekt. Wer starken Halt oder viel Volumen erwartet, ist mit einem stärker konstruierten Bikini-Top wahrscheinlich besser beraten. Wer eine schlichte Triangle-Form in einem abgestimmten Set mit etwas Farbe und Muster sucht, findet hier eine Option ohne großen Aufwand. Passt das zu dem, was du dir vorstellst?\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du neugierig bist, wie das Muster am Körper wirkt, lohnt ein Blick auf die Produktbilder in der Detailansicht.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Ruhiger Sitz am Strand beim Aufstehen und Bewegen\u003c\/li\u003e\n\u003cli\u003e→ Abgestimmtes Muster über alle drei Teile – kein Suchen nötig\u003c\/li\u003e\n\u003cli\u003e→ Leichter Überwurf für den Weg vom Wasser zur Liege\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dreiteiliges Set – Top, Slip und Überwurf im gleichen Muster, aufeinander abgestimmt\u003c\/li\u003e\n\u003cli\u003e✅ Triangle-Form mit V-Schnallen-Detail – ruhiger Akzent ohne starke Verzierung\u003c\/li\u003e\n\u003cli\u003e✅ Ungepolstert und drahtlos – bei normaler Belastung für eine natürliche Silhouette ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Tropisches Blättermuster in Gelb – kräftige Farbe, die zu Strand und See passt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Nicht ideal für wer starken Push-up-Effekt oder viel Polsterung erwartet\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht ideal für wer sehr verstellbare Träger für Feinanpassung braucht\u003c\/li\u003e\n\u003cli\u003e⚠️ Nicht ideal für intensive Wassersportarten mit hohem Bewegungsanspruch\u003c\/li\u003e\n\u003cli\u003e⚠️ Das Buckle-Detail ist sichtbar – wer sehr reduzierte Bademode ohne jedes Frontdetail bevorzugt, findet es eventuell zu präsent\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ gelber Bikini tropisches Blättermuster\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eTriangle-Tops sitzen unruhig, wenn Träger zu weich oder zu flexibel sind\u003c\/td\u003e\n\u003ctd\u003eNicht verstellbare Träger mit Hakenverschluss können zu einem gleichmäßigeren Sitz beitragen – abhängig von der gewählten Größe\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eViele Dreiecks-Tops wirken im Frontbereich beliebig und ohne Struktur\u003c\/td\u003e\n\u003ctd\u003eDas V-Schnallen-Detail setzt einen sichtbaren Akzent in der Mitte, ohne die schlichte Triangle-Form stark zu verändern\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBei Bikini-Sets passen Oberteil und Unterteil oft nicht wirklich zusammen\u003c\/td\u003e\n\u003ctd\u003eDieses Set ist dreiteilig konzipiert – Top, Slip und Überwurf teilen das gleiche Muster und sind als Einheit gestaltet\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eUngepolsterte Modelle werden manchmal als zu wenig formend eingeschätzt\u003c\/td\u003e\n\u003ctd\u003eDas Top ist bewusst ungepolstert und drahtlos ausgelegt – für wer eine natürliche Silhouette ohne Formgebung bevorzugt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei gelber Bikini tropisches Blättermuster mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich gelber Bikini tropisches Blättermuster im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: Polyester Fiber\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003egelber Bikini tropisches Blättermuster\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu gelber Bikini tropisches Blättermuster\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWas ist im dreiteiligen Triangel Bikini Set mit Überwurf enthalten?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set besteht aus drei Teilen: einem Triangle-Bikini-Top mit V-Schnallen-Detail in der Mitte, einem passenden Bikini-Slip sowie einem leichten Überwurf im gleichen tropischen Blättermuster. Alle drei Teile sind aufeinander abgestimmt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst das Bikini-Top gepolstert oder mit Bügel?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNein – das Top ist ungepolstert und drahtlos. Es ist auf eine natürliche Silhouette ausgelegt, ohne Push-up-Effekt. Wer starken Halt oder viel Formgebung sucht, ist mit einem stärker konstruierten Oberteil besser beraten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich beim gelben Bikini mit tropischem Blättermuster die richtige Größe?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa die Träger nicht verstellbar sind, hängt der Sitz stärker von der gewählten Größe ab als bei Modellen mit Verstellmöglichkeit. Unser Größenrechner hilft dir anhand von Körpergröße und Gewicht bei der Einschätzung – bei Unsicherheit kann eine Größe größer die passendere Wahl sein.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwäscheprogramm waschen. Nicht im Trockner trocknen – liegend an der Luft trocknen lassen, damit Form und Material länger erhalten bleiben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Situationen ist dieses Bikini Set mit Überwurf und Blättermuster gedacht?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set ist auf entspannte Badetage ausgelegt – am See, Pool oder Strand. Der Überwurf eignet sich für den Weg vom Wasser zur Liege oder als leichte Abdeckung zwischendurch. Es ist kein Sportbikini für intensives Schwimmen mit hohem Bewegungsanspruch.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund des Bikini-Slips bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini-Slip hat einen normalen Bund ohne besondere Verstärkung. Bei ruhigen Alltagsbewegungen am Strand bleibt er in der Regel ruhig sitzen. Für intensive Wassersportarten oder starke Bewegungsbelastung ist das Modell nicht ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/die-perfekte-bademode-finden\"\u003eDie perfekte Bademode finden\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/trendige-bademode-fur-damen-2025-stilvoll-am-strand\"\u003eTrendige Bademode für Damen 2025: Stilvoll am Strand\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bademode-fur-frauen\"\u003eBademode für Frauen\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tropisches Blättermuster in Gelb – Frontansicht mit V-Schnallen-Detail des Triangle-Tops\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Überwurf im gleichen Muster – getragen über dem Bikini-Set\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann gelber Bikini tropisches Blättermuster eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003egelber Bikini tropisches Blättermuster\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€31.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass gelber Bikini tropisches Blättermuster dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"gelber Bikini tropisches Blättermuster\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-v-buckle-bikini-o1cn01c2jiyb-model-shot.png?v=1776775372\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"31.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Yellow \/ S","offer_id":54413471777036,"sku":"CJYD241320501AZ","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ M","offer_id":54413471809804,"sku":"CJYD241320502BY","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ L","offer_id":54413471842572,"sku":"CJYD241320503CX","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Yellow \/ XL","offer_id":54413471875340,"sku":"CJYD241320504DW","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White \/ S","offer_id":54413471908108,"sku":"CJYD241320505EV","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White \/ M","offer_id":54413471940876,"sku":"CJYD241320506FU","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White \/ L","offer_id":54413471973644,"sku":"CJYD241320507GT","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White \/ XL","offer_id":54413472006412,"sku":"CJYD241320508HS","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ S","offer_id":54413472039180,"sku":"CJYD241320509IR","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ M","offer_id":54413472071948,"sku":"CJYD241320510JQ","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ L","offer_id":54413472104716,"sku":"CJYD241320511KP","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ XL","offer_id":54413472137484,"sku":"CJYD241320512LO","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ S","offer_id":54413472170252,"sku":"CJYD241320513MN","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ M","offer_id":54413472203020,"sku":"CJYD241320514NM","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ L","offer_id":54413472235788,"sku":"CJYD241320515OL","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"Pink \/ XL","offer_id":54413472268556,"sku":"CJYD241320516PK","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White Flower \/ S","offer_id":54413472301324,"sku":"CJYD241320517QJ","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White Flower \/ M","offer_id":54413472334092,"sku":"CJYD241320518RI","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White Flower \/ L","offer_id":54413472366860,"sku":"CJYD241320519SH","price":31.95,"currency_code":"EUR","in_stock":true},{"title":"White Flower \/ XL","offer_id":54413472399628,"sku":"CJYD241320520TG","price":31.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/three-piece-v-buckle-bikini-o1cn01c2jiyb-model-shot.png?v=1776775372"},{"product_id":"ladies-leopard-print-bikini-swimsuit","title":"Leopardenmuster Bikini Damen","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Leopard Bikini aus, der am Strand ruhig sitzt – und dabei wie selbstverständlich wirkt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Bikini-Oberteil einfach bleibt, wo es ist – den ganzen Tag, ohne Nachziehen.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages zeigt sich, ob ein Bikini wirklich passt – oder ob er ständig um Aufmerksamkeit bittet.\u003c\/p\u003e\n  \u003ch2\u003eLeopard Bikini Damen – dezenter Animal Print für Strand und See\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin Zweiteiler im Leopardenmuster – für Badetage, an denen das Muster für sich spricht, ohne zu laut zu sein. Das Leopardenmuster bleibt bewusst ruhig gehalten: Neutrale Töne, kein Kontrast-Overload, kein Knalldruck.\u003c\/p\u003e\n\u003cp\u003eLeopardenmuster hat in der Bademode eine lange Geschichte – und die überzeugendsten Varianten sind jene, die nicht versuchen, alle Blicke zu stehlen. Dieser Leopard Bikini Damen folgt dieser Logik: Die Farbpalette bewegt sich in gedeckten Naturtönen, sodass das Muster wirkt wie eine ruhige Textur statt wie ein Statement. Am Bodenseeufer, wo das Licht oft diffus und weich ist, entfaltet genau das seinen eigenen Reiz.\u003c\/p\u003e\n\u003cp\u003eDas Muster lässt sich gut kombinieren – mit einem einfarbigen Strandtuch, einem weißen Oversize-Shirt oder einem schlichten Wickelrock. Du sitzt am Ufer, das Licht fällt schräg, und das Leopardenmuster spielt mit Licht und Schatten auf eine Weise, die auffällt, ohne zu dominieren. Beim Aufstehen vom Liegestuhl, beim Ins-Wasser-Gehen, beim Spazieren über die Strandpromenade – das Muster passt sich der Bewegung an, ohne zu viel zu fordern.\u003c\/p\u003e\n\u003cp\u003eAls Geschenk funktioniert dieser Bikini für Menschen, die Stil schätzen, aber keine lautstarken Prints mögen – die lieber subtil als offensichtlich auftreten. Als eigene Wahl passt er zu Badetagen, an denen man einfach da sein möchte, ohne sich um das Outfit Gedanken zu machen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt dir auf – aber nicht jedem sofort\u003cbr\u003e• Du greifst morgens im Koffer danach, weil er zu vielem passt\u003cbr\u003e• Am Abend nach einem langen Badetag fragst du dich, warum du ihn nicht früher hattest\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, wähle jetzt deine Größe – unser Größenrechner hilft bei der Einschätzung.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 81.0, \"bust_max\": 86.0, \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 86.0, \"hip_max\": 91.0}, {\"name\": \"M\", \"bust_min\": 86.0, \"bust_max\": 91.0, \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 91.0, \"hip_max\": 96.0}, {\"name\": \"L\", \"bust_min\": 91.0, \"bust_max\": 96.0, \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 96.0, \"hip_max\": 101.0}, {\"name\": \"XL\", \"bust_min\": 96.0, \"bust_max\": 101.0, \"waist_min\": 76.0, \"waist_max\": 81.0, \"hip_min\": 101.0, \"hip_max\": 106.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Polyesterfaser (Polyester)\u003c\/li\u003e\n\u003cli\u003e✔ Muster: Leopardenmuster in neutralen Tönen\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Leopardenmuster Bikini Damen sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini-Oberteil beim Bewegen seinen Platz verlässt\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eSitz und Komfort am Badetag – was dazu beitragen kann.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil verschiebt sich schon beim ersten Ins-Wasser-Gehen\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Stunde unangenehm\u003c\/li\u003e\n\u003cli\u003eDas Muster sieht auf dem Foto anders aus als in Wirklichkeit\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser – und schon beim ersten Zug merkst du, dass du gleichzeitig am Oberteil nachziehen musst. Oder der Bund sitzt nach einer Weile an einer Stelle, die sich nicht mehr angenehm anfühlt. Das sind Situationen, die viele kennen, und sie haben meist mit dem Schnitt zu tun – nicht mit der Person.\u003c\/p\u003e\n\u003cp\u003eBikini-Oberteile, die bei Bewegung verrutschen, sind häufig nicht auf aktives Tragen ausgelegt – sie sind für statische Fotos optimiert, nicht für echtes Baden. Der Bund, der drückt, hat oft wenig Spielraum für die natürliche Bewegung des Körpers. Das ist kein persönliches Passformproblem, sondern eine Frage des Schnitts.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini im Leopardenmuster ist auf einen ruhigen Sitz bei normaler Bewegung ausgelegt – also beim Schwimmen, Aufstehen vom Liegestuhl, Wasser-Volleyball oder einfach am Ufer entlanglaufen. Er kann dazu beitragen, dass du dich weniger um den Sitz kümmern musst. Wenn du intensive Wassersportarten wie Wellenreiten oder Wasserskifahren planst, ist ein sportlicher Badeanzug mit engerer Passform möglicherweise die passendere Wahl.\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003ePasst ein ruhigerer, dezenterer Schnitt zu dem, was du von einem Badetag erwartest?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWähle deine Größe oben – Ober- und Unterteil können separat gewählt werden.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt beim Schwimmen meist ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Muster wirkt am Wasser ruhiger als erwartet – angenehm unaufdringlich\u003c\/li\u003e\n\u003cli\u003e→ Passt nach einer Woche Strand noch wie am ersten Tag\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Dezentes Leopardenmuster in neutralen Tönen – kombinierbar mit vielen Strandoutfits\u003c\/li\u003e\n\u003cli\u003e✅ Auf ruhigen Sitz bei normaler Bewegung ausgelegt\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – für individuelle Passform\u003c\/li\u003e\n\u003cli\u003e✅ Polyesterfaser – bei normaler Belastung formstabil\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensive Wassersportarten wie Wellenreiten oder Wasserskifahren weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer ein sehr auffälliges, kontrastreiches Muster bevorzugt, findet hier eher einen ruhigeren Look\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Leopardenmuster Bikini Damen\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei normaler Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund drückt nach kurzer Tragezeit unangenehm\u003c\/td\u003e\n\u003ctd\u003eSchnitt mit Bewegungsspielraum für längere Badetage\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLeopardenmuster wirkt zu laut oder aufgesetzt\u003c\/td\u003e\n\u003ctd\u003eRuhige, gedeckte Farbtöne – Muster als dezente Textur, nicht als Statement\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Leopardenmuster Bikini Damen mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Leopardenmuster Bikini Damen im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: polyester fiber (polyester)\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eLeopardenmuster Bikini Damen\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Leopardenmuster Bikini Damen\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen Leopardenmuster Bikini Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eUnser Größenrechner hilft dir bei der Einschätzung – gib Körpergröße und Gewicht ein. Ober- und Unterteil sind separat wählbar, sodass du beide Teile unabhängig voneinander in deiner passenden Größe auswählen kannst. Bei Unsicherheit zwischen zwei Größen empfehlen wir in der Regel die größere Variante für mehr Bewegungsfreiheit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bund dieses Animal Print Bikinis bei Bewegung?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer Bikini ist auf einen ruhigen Sitz bei normaler Belastung ausgelegt – also beim Schwimmen, Gehen und alltäglichen Strandbewegungen. Bei sehr intensiven Wasseraktivitäten kann ein engerer Sportbadeanzug die passendere Wahl sein.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini aus Polyesterfaser richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann bei 30 °C im Feinwaschgang waschen. Nicht im Trockner trocknen – an der Luft trocknen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür welche Situationen eignet sich dieser schlichte Leopard Bikini Damen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür entspannte Badetage am See, Strand oder Pool – überall dort, wo du dich bewegen möchtest, ohne ständig am Bikini nachzujustieren. Für Hochleistungswassersport wie Wellenreiten ist ein spezieller Sportbadeanzug in der Regel besser geeignet.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eSind Ober- und Unterteil des Leopardenmuster Bikini Sets separat erhältlich?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, Ober- und Unterteil können separat in der jeweils passenden Größe gewählt werden. Das kann helfen, wenn Oberkörper und Hüfte unterschiedliche Größen haben.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Leopardenmuster in gedeckten Naturtönen am Bodenseeufer im Morgenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Bikini-Trägerin geht ins ruhige Seewasser – Oberteil bleibt ruhig sitzen\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Leopardenmuster Bikini Damen eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eLeopardenmuster Bikini Damen\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€20.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Leopardenmuster Bikini Damen dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Leopardenmuster Bikini Damen\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/ladies-leopard-print-bikini-model.png?v=1776610401\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"20.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Leopard spots \/ M","offer_id":54413472497932,"sku":"CJYDYYBJ00922-Leopard spots-M","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard spots \/ S","offer_id":54413472629004,"sku":"CJYDYYBJ00922-Leopard spots-S","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard spots \/ L","offer_id":54413473251596,"sku":"CJYDYYBJ00922-Leopard spots-L","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard spots \/ XL","offer_id":54413473743116,"sku":"CJYDYYBJ00922-Leopard spots-XL","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard pink \/ M","offer_id":54413472694540,"sku":"CJYDYYBJ00922-Leopard pink-M","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard pink \/ S","offer_id":54413472530700,"sku":"CJYDYYBJ00922-Leopard pink-S","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard pink \/ L","offer_id":54413473775884,"sku":"CJYDYYBJ00922-Leopard pink-L","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard pink \/ XL","offer_id":54413472891148,"sku":"CJYDYYBJ00922-Leopard pink-XL","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Serpentine red \/ M","offer_id":54413472661772,"sku":"CJYDYYBJ00922-Serpentine red-M","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Serpentine red \/ S","offer_id":54413473612044,"sku":"CJYDYYBJ00922-Serpentine red-S","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Serpentine red \/ L","offer_id":54413473382668,"sku":"CJYDYYBJ00922-Serpentine red-L","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Serpentine red \/ XL","offer_id":54413473677580,"sku":"CJYDYYBJ00922-Serpentine red-XL","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard red \/ M","offer_id":54413473022220,"sku":"CJYDYYBJ00922-Leopard red-M","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard red \/ S","offer_id":54413472727308,"sku":"CJYDYYBJ00922-Leopard red-S","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard red \/ L","offer_id":54413473513740,"sku":"CJYDYYBJ00922-Leopard red-L","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Leopard red \/ XL","offer_id":54413473546508,"sku":"CJYDYYBJ00922-Leopard red-XL","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Printed blue \/ M","offer_id":54413472792844,"sku":"CJYDYYBJ00922-Printed blue-M","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Printed blue \/ S","offer_id":54413473153292,"sku":"CJYDYYBJ00922-Printed blue-S","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Printed blue \/ L","offer_id":54413473710348,"sku":"CJYDYYBJ00922-Printed blue-L","price":20.95,"currency_code":"EUR","in_stock":true},{"title":"Printed blue \/ XL","offer_id":54413472956684,"sku":"CJYDYYBJ00922-Printed blue-XL","price":20.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/ladies-leopard-print-bikini-model.png?v=1776610401"},{"product_id":"starry-sky-bikini-set","title":"Bikini Sternenmuster pink blau","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der beim Schwimmen ruhig sitzt – und dabei noch gut aussieht?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses entspannte Gefühl, wenn ein Bikini den ganzen Tag sitzt, ohne dass du einmal daran denken musst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eViele merken den Unterschied nicht sofort – sondern erst beim dritten Ins-Wasser-Gehen, wenn nichts verrutscht ist.\u003c\/p\u003e\n  \u003ch2\u003eBikini Sternenmuster pink blau – zweiteiliges Set für See, Pool und Strand\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nEin zweiteiliges Bikini-Set aus Nylon – ausgelegt für entspannte Badetage, mit einem ruhigen Sternenmuster in Pink und Blau, das sich eher dezent zeigt als laut auftritt.\u003c\/p\u003e\n\u003cp\u003eDas Sternenmuster wirkt auf dem ersten Blick wie ein kleiner Abend-Himmel über dem Bodensee – nicht knallig, sondern mit einem leisen Funkeln. Die Kombination aus Pink und Blau bewegt sich irgendwo zwischen Sonnenuntergang und Dämmerung: vertraut, aber nicht beliebig. Wenn man im flachen Uferwasser steht und die Farben sich im Licht verändern, zeigt das Muster seine ruhige Qualität.\u003c\/p\u003e\n\u003cp\u003eDas Design passt zu Menschen, die am Strand keine Bühne brauchen – sondern einfach da sein wollen. Beim Aufstehen vom Handtuch, beim Spaziergang am Ufer, beim Kaffee nach dem Bad: Das Sternenmuster fügt sich ein, ohne zu verschwinden. Mit einem einfarbigen Strandtuch oder einer hellen Shorts lässt es sich unkompliziert kombinieren, ohne dass man groß nachdenken muss.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini kann passen, wenn du schlichte Prints magst, die etwas sagen – ohne zu viel zu sagen. Für einen Urlaub am See, ein Wochenende am Pool oder einen langen Sommertag am Strand, an dem Komfort und Aussehen gleichwertig sein dürfen.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster wirkt im Licht anders als auf dem Foto – etwas lebendiger, weniger flach.\u003cbr\u003e• Pink und Blau bleiben auch nass lesbar – kein Verblassen im ersten Augenblick.\u003cbr\u003e• Das Set sieht aus wie eines – auch wenn Ober- und Unterteil separat gewählt werden.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, kannst du dir Schnitt und Größe über unseren Größenrechner einschätzen lassen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"S\", \"bust_min\": 72.0, \"bust_max\": 80.0, \"waist_min\": 60.0, \"waist_max\": 66.0, \"hip_min\": 78.0, \"hip_max\": 86.0}, {\"name\": \"M\", \"bust_min\": 80.0, \"bust_max\": 88.0, \"waist_min\": 64.0, \"waist_max\": 72.0, \"hip_min\": 86.0, \"hip_max\": 94.0}, {\"name\": \"L\", \"bust_min\": 88.0, \"bust_max\": 96.0, \"waist_min\": 70.0, \"waist_max\": 76.0, \"hip_min\": 94.0, \"hip_max\": 102.0}, {\"name\": \"XL\", \"bust_min\": 96.0, \"bust_max\": 102.0, \"waist_min\": 76.0, \"waist_max\": 86.0, \"hip_min\": 102.0, \"hip_max\": 110.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Material: Nylon\u003c\/li\u003e\n\u003cli\u003e✔ Ausführung: Zweiteiliges Bikini-Set\u003c\/li\u003e\n\u003cli\u003e✔ Muster: Sternenmuster in Pink und Blau\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Sternenmuster pink blau sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn Bikinis im Wasser unruhig werden – und danach nicht mehr sitzen\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eWas beim Kauf oft unklar bleibt – und worauf es bei Passform und Material ankommen kann.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eDas Oberteil hält beim Schwimmen nicht, obwohl die Größe stimmt\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt nach einer Weile, besonders wenn man sitzt\u003c\/li\u003e\n\u003cli\u003eDas Gefühl nass ist unangenehm – klebrig oder zu schwer\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eManche Bikinis sehen auf dem Foto gut aus – und machen dann am Strand Arbeit. Das Oberteil verrutscht beim Ins-Wasser-Gehen, der Bund drückt nach dem Hinsetzen, und nass fühlt sich alles irgendwie falsch an. Das ist kein Einzelfall, sondern ein häufiges Muster bei Bademode, die auf Optik, aber weniger auf Bewegung ausgelegt ist.\u003c\/p\u003e\n\u003cp\u003eOft liegt es an der Materialwahl oder am Schnitt: Stoffe, die nass schwer werden oder wenig Elastizität haben, reagieren auf Bewegung anders als erwartet. Auch die Bundform entscheidet, ob ein Bikini nach einer Stunde noch sitzt wie beim Anziehen – oder ob man ständig nachkorrigiert.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini ist aus Nylon gefertigt – einem Material, das bei normaler Belastung leicht bleibt und sich auch nass angenehm anfühlt. Ob das für dich passt, hängt davon ab, was du vom Stoff erwartest. Wenn du eher einen sportlich-funktionalen Bikini für intensives Wassersport-Training suchst, ist dieser Schnitt vielleicht nicht dein erster Griff. Für entspannte Badetage am See, am Pool oder am Strand kann er eine ruhige Option sein.\n\u003cbr\u003e\u003cbr\u003ePasst ein Bikini mit dezent gemustertem Nylon zu dem, was du dir für diesen Sommer vorstellst?\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eWenn du Fragen zur Passform hast, erreichst du uns jederzeit – ohne Kaufverpflichtung.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt nach einem langen Badetag am See noch wie beim Anziehen\u003c\/li\u003e\n\u003cli\u003e→ Das Muster wirkt im Licht lebendiger als auf dem Foto\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Nylon-Material – bei normaler Belastung leicht und angenehm auch nass\u003c\/li\u003e\n\u003cli\u003e✅ Dezentes Sternenmuster in Pink und Blau – zurückhaltend, aber erkennbar\u003c\/li\u003e\n\u003cli\u003e✅ Zweiteiliges Set – Ober- und Unterteil können separat eingeschätzt werden\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder Leistungsschwimmen weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer kräftige Prints oder auffällige Farben bevorzugt, findet hier ein eher ruhiges Muster\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Sternenmuster pink blau\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eNylon-Schnitt auf ruhigen Sitz bei normaler Bewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBademode fühlt sich nass schwer und klebrig an\u003c\/td\u003e\n\u003ctd\u003eNylon bleibt bei normaler Belastung leicht – auch nach dem Ins-Wasser-Gehen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGröße online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eGrößenrechner mit Körpergröße und Gewicht als Anhaltspunkt verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt nach einer Saison ausgeblichen\u003c\/td\u003e\n\u003ctd\u003ePflegeanleitung beachten – kurz ausspülen und Feinwäsche bei 30 °C erhält Farbe länger\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Sternenmuster pink blau mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Sternenmuster pink blau im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: nylon\/nylon\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Sternenmuster pink blau\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Sternenmuster pink blau\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für diesen Bikini Sternenmuster pink blau?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa Bikini-Größen je nach Schnitt und Hersteller unterschiedlich ausfallen können, empfehlen wir, unseren Größenrechner zu nutzen. Gib Körpergröße und Gewicht ein – so bekommst du einen Anhaltspunkt für die passende Größe. Bei Unsicherheit zwischen zwei Größen kann es helfen, die größere zu wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bikini bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Set ist aus Nylon gefertigt, einem Material, das bei normaler Belastung leicht bleibt und sich auch nass angenehm anfühlt. Bei ruhigen Schwimmbewegungen und Strandalltag bleibt der Sitz in der Regel stabil. Für intensiven Wassersport oder Leistungsschwimmen ist dieser Schnitt weniger ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, lauwarmem Wasser ausspülen. Im Feinwaschgang bei 30 °C waschen, nicht im Trockner trocknen. So bleibt Form und Farbe des Sternenmusters länger erhalten.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst dieser Bikini auch für den Seeurlaub geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, das Set ist auf entspannte Badetage ausgelegt – am See, Pool oder Strand. Das dezente Sternenmuster in Pink und Blau passt gut zu einem ruhigen Sommer-Look. Für sehr sportliche Wasseraktivitäten ist er weniger konzipiert.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil des Bikini-Sets separat wählen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas ist je nach Verfügbarkeit möglich. Wenn du unterschiedliche Größen für Ober- und Unterteil benötigst, schau dir die Einzelteile in der Produktauswahl an oder kontaktiere uns – wir helfen dir weiter.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Sternenmuster im flachen Uferwasser – Pink und Blau im Sonnenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Set auf einem hellen Handtuch ausgebreitet – Muster und Farbkombination aus der Nähe\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Sternenmuster pink blau eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Sternenmuster pink blau\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€22.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Sternenmuster pink blau dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Sternenmuster pink blau\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/starry-sky-bikini-set-model-v12.png?v=1776608094\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"22.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Red \/ S","offer_id":54413475283212,"sku":"CJYDYYLJ00460-Red-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ M","offer_id":54413475315980,"sku":"CJYDYYLJ00460-Purple-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Green \/ L","offer_id":54413475348748,"sku":"CJYDYYLJ00460-Green-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ XL","offer_id":54413475381516,"sku":"CJYDYYLJ00460-Purple-XL","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ S","offer_id":54413475414284,"sku":"CJYDYYLJ00460-Purple-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Green \/ M","offer_id":54413475447052,"sku":"CJYDYYLJ00460-Green-M","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Green \/ XL","offer_id":54413475479820,"sku":"CJYDYYLJ00460-Green-XL","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ XL","offer_id":54413475512588,"sku":"CJYDYYLJ00460-Red-XL","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ L","offer_id":54413475545356,"sku":"CJYDYYLJ00460-Red-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Green \/ S","offer_id":54413475578124,"sku":"CJYDYYLJ00460-Green-S","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Purple \/ L","offer_id":54413475610892,"sku":"CJYDYYLJ00460-Purple-L","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"Red \/ M","offer_id":54413475643660,"sku":"CJYDYYLJ00460-Red-M","price":22.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/starry-sky-bikini-set-model-v12.png?v=1776608094"},{"product_id":"solid-color-bikini-swimsuit-sexy-black-retro-high-waist-bikini-swimsuit","title":"schwarzer Bikini high waist","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen schwarzen Bikini aus, der am See sitzt – und nach dem Schwimmen noch genauso?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses ruhige Gefühl, wenn ein Bikini einfach bleibt, wo er ist – ohne dass du daran denkst.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eUnd genau hier merken viele den Unterschied – nicht beim Anziehen, sondern wenn der Badetag länger wird.\u003c\/p\u003e\n  \u003ch2\u003eSchwarzer Bikini Damen mit hohem Bund – schlicht für See, Strand und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nHoher Hüftbund, der die Taille betont – klares Schwarz ohne Muster, Retro-Schnitt, der zeitlos bleibt.\u003c\/p\u003e\n\u003cp\u003eDieser schwarze Bikini für Damen lebt von dem, was er nicht hat: kein Aufdruck, kein Muster, keine auffällige Schnalle. Nur eine ruhige Silhouette, die sich am Bodenseeufer genauso stimmig anfühlt wie am Mittelmeer. Das Schwarz ist tief und gleichmäßig – eine Farbe, die nicht fragt, sondern einfach da ist.\u003c\/p\u003e\n\u003cp\u003eDer High-Waist-Schnitt setzt an der Taille an und gibt der Bikinihose einen Halt, der sich beim Aufstehen vom Handtuch oder beim Ins-Wasser-Gehen kaum verändert. Das Oberteil bleibt im Verhältnis dazu schlank – die Kombination aus hohem Bund und reduziertem Top ergibt eine Linie, die an Vintagebademode der sechziger Jahre erinnert, ohne nostalgisch zu wirken. Wer schlichte Bademode schätzt und Muster eher nicht mag, findet hier eine Form, die sich zurückhält und dabei präsent ist.\u003c\/p\u003e\n\u003cp\u003eAm Strand beim Spazierengehen, wenn das Oberteil den Armbewegungen folgt ohne zu verrutschen. Am Seeufer auf dem Steg, wenn der hohe Bund beim Hinsetzen ruhig bleibt. Im Urlaub, wenn man den Bikini mit einem weiten Leinenrock kombiniert und vom Wasser direkt zum Eiscafé geht – Schwarz macht das möglich, ohne dass man zweimal darüber nachdenkt.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Der Bund liegt nach einer Stunde im Wasser noch genauso wie beim Anziehen – kein Nachziehen, kein Korrigieren.\u003cbr\u003e• Das tiefe Schwarz lässt sich mit fast allem kombinieren – Pareo, Shorts, Kleid – ohne zu planen.\u003cbr\u003e• Der Schnitt erinnert an Retro-Bademode, wirkt dabei aber nicht verkleidet – eher wie eine stille Entscheidung für Zeitlosigkeit.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn du magst, schau dir die verfügbaren Größen an – der Größenrechner hilft dir dabei, Ober- und Unterteil passend zu wählen.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"bust_min\": 76.0, \"bust_max\": 81.0, \"waist_min\": 104.1, \"waist_max\": 126.6, \"hip_min\": 81.0, \"hip_max\": 86.0}, {\"name\": \"S\", \"bust_min\": 81.0, \"bust_max\": 86.0, \"waist_min\": 114.6, \"waist_max\": 137.1, \"hip_min\": 86.0, \"hip_max\": 91.0}, {\"name\": \"M\", \"bust_min\": 86.0, \"bust_max\": 91.0, \"waist_min\": 61.0, \"waist_max\": 66.0, \"hip_min\": 91.0, \"hip_max\": 97.0}, {\"name\": \"L\", \"bust_min\": 91.0, \"bust_max\": 97.0, \"waist_min\": 66.0, \"waist_max\": 71.0, \"hip_min\": 97.0, \"hip_max\": 102.0}, {\"name\": \"XL\", \"bust_min\": 97.0, \"bust_max\": 102.0, \"waist_min\": 71.0, \"waist_max\": 76.0, \"hip_min\": 102.0, \"hip_max\": 107.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Schnitt: High Waist, Retro-Silhouette\u003c\/li\u003e\n\u003cli\u003e✔ Farbe: Schwarz (uni, kein Muster)\u003c\/li\u003e\n\u003cli\u003e✔ Besonderheit: Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann schwarzer Bikini high waist sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn der Bikini im Wasser nachgibt, bevor der Tag vorbei ist\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin ruhiger Sitz beginnt mit einem Schnitt, der dafür ausgelegt ist.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil bleibt nicht dort, wo es sein soll\u003c\/li\u003e\n\u003cli\u003eHoher Bund drückt nach kurzer Zeit\u003c\/li\u003e\n\u003cli\u003eSchwimmen und der Sitz verändert sich\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eDu gehst ins Wasser, schwimmst ein paar Züge – und beim Herausgehen merkst du, dass der Bund sich verschoben hat oder das Oberteil korrigiert werden muss. Das passiert nicht, weil etwas kaputt ist. Es passiert, weil viele Bikinis nicht für Bewegung, sondern nur fürs Liegen geschnitten sind.\u003c\/p\u003e\n\u003cp\u003eDer Schnitt spielt dabei eine größere Rolle als oft angenommen. Ein niedriger Bund hat weniger Auflagefläche und gibt bei Bewegung früher nach. Ein Oberteil ohne ausreichend Halt unter den Trägern bewegt sich mit dem Wasser mit. Das ist keine Frage der Materialqualität allein – es ist eine Frage der Konstruktion.\u003c\/p\u003e\n\u003cp\u003eDieser High-Waist-Bikini ist auf stabilen Sitz bei Alltagsbewegung ausgelegt – beim Schwimmen, Aufstehen, Gehen am Strand. Ob das für deine Bedürfnisse ausreicht, hängt auch davon ab, was du vorhast: Für intensives Schwimmen oder Wassersport mit vielen Sprüngen ist ein solcher Freizeitbikini eher nicht die erste Wahl – da sind speziell konstruierte Sportbikinis besser geeignet. Für einen entspannten Badetag am See oder Strand, bei dem Bewegung normal aber nicht sportlich-intensiv ist, kann er gut passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWie aktiv wirst du deinen Bikini am häufigsten tragen – eher liegend und schwimmend, oder auch bei ausgedehnterer Bewegung im Wasser?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein, und du bekommst einen Anhaltspunkt für Ober- und Unterteil separat.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eSchau in Ruhe durch die verfügbaren Größen – Ober- und Unterteil können unabhängig voneinander gewählt werden.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Oberteil bleibt beim Schwimmen meist ruhig sitzen\u003c\/li\u003e\n\u003cli\u003e→ Hoher Bund liegt nach einem langen Badetag noch genauso wie beim Anziehen\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Hoher Bund – ausgelegt für stabilen Sitz bei normaler Bewegung\u003c\/li\u003e\n\u003cli\u003e✅ Zeitloses Schwarz ohne Muster – vielseitig kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – für individuelle Passform\u003c\/li\u003e\n\u003cli\u003e✅ Retro-Schnitt – betont die Taille, schlanke Silhouette\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensiven Wassersport oder häufiges Springen eher nicht geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer Muster, Print oder auffällige Details sucht, findet hier ein sehr schlichtes Modell\u003c\/li\u003e\n\u003cli\u003e⚠️ Kein Sporttop-Träger – kein maximaler Halt bei sportlichen Aktivitäten\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ schwarzer Bikini high waist\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei normaler Alltagsbewegung im Wasser ausgelegt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eHoher Bund drückt oder schiebt sich nach unten\u003c\/td\u003e\n\u003ctd\u003eHigh-Waist-Schnitt mit breiter Bundpartie – kann bei normaler Belastung ruhig sitzen\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOnline-Größen bei Bikinis schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner mit Körpergröße und Gewicht verfügbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster oder Aufdruck wirkt schnell unruhig\u003c\/td\u003e\n\u003ctd\u003eUni-Schwarz ohne Motiv – bleibt zeitlos und kombinierbar\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei schwarzer Bikini high waist mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich schwarzer Bikini high waist im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eschwarzer Bikini high waist\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu schwarzer Bikini high waist\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen schwarzen Bikini mit hohem Bund?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDa Bikiniober- und -unterteil unterschiedliche Größen haben können, empfehlen wir unseren Größenrechner. Gib Körpergröße und Gewicht ein – du bekommst einen Anhaltspunkt für beide Teile separat. Bei Unsicherheit zwischen zwei Größen kann es helfen, beim Unterteil die größere Variante zu wählen, besonders wenn der hohe Bund komfortabel sitzen soll.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der hohe Bund bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer High-Waist-Schnitt ist auf stabilen Sitz bei normaler Alltagsbewegung ausgelegt – beim Schwimmen, Gehen und Hinsetzen. Bei sehr intensiven Wassersportarten oder häufigem Springen ist ein speziell konstruierter Sportbikini in der Regel die bessere Wahl.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eFür wen eignet sich ein schlichter High Waist Bikini schwarz im Retro-Schnitt?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDieser Bikini passt gut, wenn du reduzierten Stil ohne Muster bevorzugst und einen zeitlosen Schnitt suchst, der sich für See, Strand und Urlaub eignet. Wer lieber auffällige Prints oder sportliche Funktionalität möchte, findet in anderen Schnitten möglicherweise passenderes.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich diesen schwarzen Bikini richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem Wasser ausspülen, dann im Feinwaschgang bei 30 °C waschen. Nicht im Trockner trocknen – liegend trocknen lassen erhält Form und Farbe länger.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil in verschiedenen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa – Ober- und Unterteil sind separat wählbar. Das ist besonders hilfreich, wenn Ober- und Unterkörper in unterschiedlichen Konfektionsgrößen liegen. Unser Größenrechner gibt dir für beide Teile einen Anhaltspunkt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Tiefschwarz, gleichmäßige Farbe – kein Muster, keine Ablenkung\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Hoher Bund betont die Taille, schlanke Silhouette von vorne und von der Seite\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann schwarzer Bikini high waist eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eschwarzer Bikini high waist\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€20.99\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass schwarzer Bikini high waist dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"schwarzer Bikini high waist\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/solid-black-retro-high-waist-bikini-5310119574028.png?v=1776601517\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"20.99\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Black \/ M","offer_id":54413475709196,"sku":"CJYDYYYJ00138-Black-M","price":20.99,"currency_code":"EUR","in_stock":true},{"title":"Black \/ L","offer_id":54413475741964,"sku":"CJYDYYYJ00138-Black-L","price":20.99,"currency_code":"EUR","in_stock":true},{"title":"Black \/ S","offer_id":54413475774732,"sku":"CJYDYYYJ00138-Black-S","price":20.99,"currency_code":"EUR","in_stock":true},{"title":"Black \/ XL","offer_id":54413475807500,"sku":"CJYDYYYJ00138-Black-XL","price":20.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/solid-black-retro-high-waist-bikini-5310119574028.png?v=1776601517"},{"product_id":"printed-high-waist-bikini","title":"Bikini Blumenmuster orange blau","description":"\u003cdiv class=\"bn-product-copy\"\u003e\n  \u003cdiv class=\"bn-problem-hook\"\u003e\u003cp\u003eWas macht einen Bikini aus, der am See den ganzen Tag ruhig sitzt – und trotzdem auffällt?\u003c\/p\u003e\u003c\/div\u003e\n  \u003cp class=\"bn-energy\"\u003eVielleicht kennst du dieses Gefühl, wenn ein Bikini einfach passt – ohne Nachziehen, ohne Korrigieren, einfach da.\u003c\/p\u003e\n  \u003cp class=\"bn-soft-reality\"\u003eIm Laufe eines Badetages zeigt sich, ob ein Bikini mitgeht – oder ständig die Aufmerksamkeit auf sich zieht.\u003c\/p\u003e\n  \u003ch2\u003eBikini Blumenmuster orange blau – High Waist Schnitt für See, Pool und Urlaub\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eWofür dieser Bikini gemacht ist:\u003c\/strong\u003e\u003cbr\u003e\nHoher Hüftbund für einen ruhigeren Sitz bei Bewegung – mit dezentem Blumenmuster in Orange und Blau, das zurückhaltend wirkt, ohne zu verschwinden.\u003c\/p\u003e\n\u003cp\u003eDas orange-blaue Blumenmuster orientiert sich an einer Farbwelt, die man am Bodensee kennt: warmes Licht auf ruhigem Wasser, Blüten im Gegenlicht. Die Farben sind nicht laut, aber sie halten den Blick. Auf weißem Strandsand wirkt das Muster anders als am Seeufer unter alten Bäumen – in beiden Situationen hat es etwas Stimmiges.\u003c\/p\u003e\n\u003cp\u003eDer Blumenprint ist flächig, nicht überladen. Orange und Blau setzen sich gegenseitig in Szene, ohne dass eine Farbe dominiert. Das macht den Bikini kombinierbar – mit einem hellen Leinentuch, einem schlichten Shirt oder einem Strandkorb-Nachmittag ohne großes Outfit-Denken. Wer lebhafte, großflächige Muster bevorzugt, findet hier eher zurückhaltende Botanik.\u003c\/p\u003e\n\u003cp\u003eMorgens beim ersten Sprung ins Wasser, nachmittags beim Aufstehen aus dem Liegestuhl, abends noch schnell ans Ufer – in diesen Momenten zeigt sich, ob ein Bikini einfach mitgeht. Das Blumenmuster bleibt in all diesen Situationen gleich ruhig im Hintergrund, ohne aufgesetzt zu wirken.\u003c\/p\u003e\n\u003ch3\u003eWoran du es merkst\u003c\/h3\u003e\n\u003cp\u003e• Das Muster fällt auf, ohne zu überreden – ein zurückhaltender Blickfang am Wasser.\u003cbr\u003e• Der hohe Bund bleibt beim Sitzen und Aufstehen meist an Ort und Stelle.\u003cbr\u003e• Orange und Blau wirken mit verschiedenen Strandtüchern und Coverups zusammen, ohne viel Planung.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWenn das zu dir passt, findest du die Größenauswahl direkt oben auf der Seite.\u003c\/strong\u003e\u003c\/p\u003e\n\n    \u003cdiv class=\"bn-size-calculator\"\u003e\n        \u003ch3\u003e📏 Größenrechner\u003c\/h3\u003e\n        \u003cp class=\"bn-calc-subtitle\"\u003eFinde deine perfekte Größe\u003c\/p\u003e\n\n        \u003cdiv class=\"bn-calc-form\" id=\"bn-calc-form-bikini\"\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_height\"\u003eKörpergröße (cm)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_height\" name=\"bn_height\" placeholder=\"z.B. 175\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_weight\"\u003eGewicht (kg)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_weight\" name=\"bn_weight\" placeholder=\"z.B. 70\"\u003e\n            \u003c\/div\u003e\n            \n            \u003cdiv class=\"bn-calc-field\"\u003e\n                \u003clabel for=\"bn_bust\"\u003eBrustumfang (cm) (optional)\u003c\/label\u003e\n                \u003cinput type=\"number\" id=\"bn_bust\" name=\"bn_bust\" placeholder=\"z.B. 90\"\u003e\n            \u003c\/div\u003e\n            \n\n            \u003cbutton type=\"button\" class=\"bn-calc-button\" onclick=\"calculateSize_bikini()\"\u003eGröße berechnen\u003c\/button\u003e\n\n            \u003cdiv id=\"bn-calc-result\" class=\"bn-calc-result\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\n\u003cstyle\u003e\n\n    .bn-size-calculator {\n        max-width: 500px;\n        margin: 40px auto;\n        padding: 30px;\n        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n        border-radius: 20px;\n        box-shadow: 0 15px 40px rgba(0,0,0,0.2);\n        color: white;\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n    }\n\n    .bn-size-calculator h3 {\n        text-align: center;\n        margin: 0 0 10px 0;\n        font-size: 28px;\n        font-weight: 700;\n    }\n\n    .bn-calc-subtitle {\n        text-align: center;\n        margin: 0 0 25px 0;\n        opacity: 0.9;\n        font-size: 16px;\n    }\n\n    .bn-calc-form {\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n    }\n\n    .bn-calc-field {\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n    }\n\n    .bn-calc-field label {\n        font-size: 14px;\n        font-weight: 600;\n        opacity: 0.95;\n    }\n\n    .bn-calc-field input,\n    .bn-calc-select {\n        padding: 14px;\n        border: none;\n        border-radius: 10px;\n        font-size: 16px;\n        background: rgba(255,255,255,0.95);\n        color: #1a202c;\n        transition: all 0.3s;\n    }\n\n    .bn-calc-field input:focus,\n    .bn-calc-select:focus {\n        outline: none;\n        background: white;\n        box-shadow: 0 0 0 3px rgba(255,255,255,0.3);\n    }\n\n    .bn-calc-button {\n        margin-top: 10px;\n        padding: 16px;\n        background: #08890e;\n        color: white;\n        border: none;\n        border-radius: 12px;\n        font-size: 18px;\n        font-weight: 700;\n        cursor: pointer;\n        transition: all 0.3s;\n        text-transform: uppercase;\n        letter-spacing: 0.5px;\n    }\n\n    .bn-calc-button:hover {\n        background: #06660a;\n        transform: translateY(-2px);\n        box-shadow: 0 8px 20px rgba(0,0,0,0.3);\n    }\n\n    .bn-calc-button:active {\n        transform: translateY(0);\n    }\n\n    .bn-calc-result {\n        margin-top: 20px;\n        padding: 20px;\n        background: rgba(255,255,255,0.2);\n        border-radius: 12px;\n        text-align: center;\n        font-size: 20px;\n        font-weight: 700;\n        min-height: 60px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        backdrop-filter: blur(10px);\n    }\n\n    .bn-calc-result:empty {\n        display: none;\n    }\n\n    \/* 🔥 NEU: Geschlechts-abhängige Felder ausblenden *\/\n    .bn-show-if-women,\n    .bn-show-if-men {\n        display: none;\n    }\n\n    @media (max-width: 600px) {\n        .bn-size-calculator {\n            margin: 20px;\n            padding: 20px;\n        }\n    }\n    \n\u003c\/style\u003e\n\n\u003cscript\u003e\n\n\/\/ 🔥 Geschlechts-abhängige Felder ein-\/ausblenden\nfunction toggleGenderFields_bikini() {\n    const genderSelect = document.getElementById('bn_gender');\n    if (!genderSelect) return;\n    \n    const gender = genderSelect.value;\n    \n    \/\/ Alle Felder mit \"bn-show-if-women\" oder \"bn-show-if-men\"\n    document.querySelectorAll('.bn-show-if-women').forEach(el =\u003e {\n        el.style.display = (gender === 'women') ? 'flex' : 'none';\n    });\n    \n    document.querySelectorAll('.bn-show-if-men').forEach(el =\u003e {\n        el.style.display = (gender === 'men') ? 'flex' : 'none';\n    });\n}\n\n\/\/ Event Listener für Geschlechts-Auswahl (robust: funktioniert auch nach Shopify-DOM-Injection)\n(function() {\n    function initGenderToggle_bikini() {\n        const genderSelect = document.getElementById('bn_gender');\n        if (genderSelect) {\n            genderSelect.addEventListener('change', toggleGenderFields_bikini);\n            toggleGenderFields_bikini();\n        } else {\n            setTimeout(initGenderToggle_bikini, 100);\n        }\n    }\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', initGenderToggle_bikini);\n    } else {\n        initGenderToggle_bikini();\n    }\n})();\n\nfunction calculateSize_bikini() {\n    const height = parseFloat(document.getElementById('bn_height')?.value || 0);\n    const weight = parseFloat(document.getElementById('bn_weight')?.value || 0);\n    const hip = parseFloat(document.getElementById('bn_hip')?.value || 0);\n    const bust = parseFloat(document.getElementById('bn_bust')?.value || 0);\n    const waist = parseFloat(document.getElementById('bn_waist')?.value || 0);\n    const chest = parseFloat(document.getElementById('bn_chest')?.value || 0);\n\n    const sizeSets = [{\"calib\": {\"height\": 163, \"weight\": 63, \"bust\": 90, \"hip\": 87, \"size_true\": \"M\"}, \"sizes\": [{\"name\": \"XS\", \"bust_min\": 81.0, \"bust_max\": 84.0, \"waist_min\": 61.0, \"waist_max\": 64.0, \"hip_min\": 88.0, \"hip_max\": 90.0}, {\"name\": \"S\", \"bust_min\": 86.0, \"bust_max\": 89.0, \"waist_min\": 66.0, \"waist_max\": 69.0, \"hip_min\": 93.0, \"hip_max\": 95.0}, {\"name\": \"One Size\", \"bust_min\": 86.0, \"bust_max\": 91.0, \"waist_min\": 69.0, \"waist_max\": 71.0, \"hip_min\": 94.0, \"hip_max\": 97.0}, {\"name\": \"M\", \"bust_min\": 91.0, \"bust_max\": 94.0, \"waist_min\": 71.0, \"waist_max\": 74.0, \"hip_min\": 98.0, \"hip_max\": 100.0}, {\"name\": \"L\", \"bust_min\": 98.0, \"bust_max\": 102.0, \"waist_min\": 77.0, \"waist_max\": 81.0, \"hip_min\": 104.0, \"hip_max\": 107.0}, {\"name\": \"XL\", \"bust_min\": 105.0, \"bust_max\": 109.0, \"waist_min\": 85.0, \"waist_max\": 89.0, \"hip_min\": 112.0, \"hip_max\": 116.0}]}];\n    const tolerance = {\"height_weight\": 1.0, \"weight_weight\": 1.0, \"hip_weight\": 3.0, \"bust_weight\": 3.0, \"waist_weight\": 1.5, \"chest_weight\": 0.5};\n\n    \/\/ 🔥 NEU v7: Für Hoodie → Filter nach Herren\/Damen\n    const genderSelect = document.getElementById('bn_gender');\n    let filteredSizeSets = sizeSets;\n\n    if (genderSelect) {\n        const selectedGender = genderSelect.value;\n        filteredSizeSets = sizeSets.filter(s =\u003e (s.calib?.group || 'men') === selectedGender);\n        \n        if (filteredSizeSets.length === 0) {\n            document.getElementById('bn-calc-result').innerHTML = \n                '⚠️ Keine Models für die gewählte Gruppe verfügbar.';\n            return;\n        }\n        \n        console.log('🔥 Filtered by gender:', selectedGender, '→', filteredSizeSets.length, 'model(s)');\n    }\n\n    console.log('🔥 Multi-Model Calculator Debug:', { height, weight, hip, bust, waist, chest, sizeSets: filteredSizeSets, tolerance });\n\n    if (!filteredSizeSets || filteredSizeSets.length === 0) {\n        document.getElementById('bn-calc-result').innerHTML = '⚠️ Keine Größentabelle verfügbar.';\n        return;\n    }\n\n    \/\/ 🔥 SCHRITT 1: Berechne für JEDES Model-Set die Distanz zum User\n    const setScores = [];\n    for (let i = 0; i \u003c filteredSizeSets.length; i++) {\n        const set = filteredSizeSets[i];\n        const calib = set.calib || {};\n\n        let cDiff = 0;\n        let cCount = 0;\n\n        if (calib.height \u0026\u0026 height \u003e 0) {\n            cDiff += Math.pow(height - calib.height, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.weight \u0026\u0026 weight \u003e 0) {\n            cDiff += Math.pow(weight - calib.weight, 2) * 1.0;\n            cCount++;\n        }\n        if (calib.bust \u0026\u0026 bust \u003e 0) {\n            cDiff += Math.pow(bust - calib.bust, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.hip \u0026\u0026 hip \u003e 0) {\n            cDiff += Math.pow(hip - calib.hip, 2) * 1.5;\n            cCount++;\n        }\n        if (calib.waist \u0026\u0026 waist \u003e 0) {\n            cDiff += Math.pow(waist - calib.waist, 2) * 1.5;\n            cCount++;\n        }\n\n        const score = cCount \u003e 0 ? Math.sqrt(cDiff \/ cCount) : 9999;\n        const weight_factor = score \u003e 0 ? 1.0 \/ (1.0 + score \/ 10.0) : 1.0;\n\n        setScores.push({\n            index: i,\n            score: score,\n            weight: weight_factor,\n            calib: calib,\n            sizes: set.sizes || []\n        });\n    }\n\n    \/\/ Normalisiere Gewichte (Summe = 1.0)\n    const totalWeight = setScores.reduce((sum, s) =\u003e sum + s.weight, 0);\n    if (totalWeight \u003e 0) {\n        setScores.forEach(s =\u003e s.weight \/= totalWeight);\n    }\n\n    console.log('🔥 Model Scores:', setScores.map(s =\u003e ({\n        calib: s.calib,\n        score: s.score.toFixed(1),\n        weight: (s.weight * 100).toFixed(1) + '%'\n    })));\n\n    \/\/ 🔥 SCHRITT 2: Für jede Size sammle gewichtete Scores aus ALLEN Model-Sets\n    const sizeVotes = {};\n\n    for (const setScore of setScores) {\n        const sizes = setScore.sizes;\n        const setWeight = setScore.weight;\n\n        for (const size of sizes) {\n            let diff = 0;\n            let count = 0;\n\n            \/\/ Körpergröße\n            if (size.height_min !== undefined \u0026\u0026 size.height_max !== undefined \u0026\u0026 height \u003e 0) {\n                const heightCenter = (size.height_min + size.height_max) \/ 2;\n                diff += Math.pow(height - heightCenter, 2) * tolerance.height_weight;\n                count++;\n            }\n\n            \/\/ Gewicht\n            if (size.weight_min !== undefined \u0026\u0026 size.weight_max !== undefined \u0026\u0026 weight \u003e 0) {\n                const weightCenter = (size.weight_min + size.weight_max) \/ 2;\n                diff += Math.pow(weight - weightCenter, 2) * tolerance.weight_weight;\n                count++;\n            }\n\n            \/\/ Hüftumfang\n            if (size.hip_min !== undefined \u0026\u0026 size.hip_max !== undefined \u0026\u0026 hip \u003e 0) {\n                const hipCenter = (size.hip_min + size.hip_max) \/ 2;\n                diff += Math.pow(hip - hipCenter, 2) * tolerance.hip_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\n            if (size.bust_min !== undefined \u0026\u0026 size.bust_max !== undefined \u0026\u0026 bust \u003e 0) {\n                const bustCenter = (size.bust_min + size.bust_max) \/ 2;\n                diff += Math.pow(bust - bustCenter, 2) * tolerance.bust_weight;\n                count++;\n            }\n\n            \/\/ Taillenumfang\n            if (size.waist_min !== undefined \u0026\u0026 size.waist_max !== undefined \u0026\u0026 waist \u003e 0) {\n                const waistCenter = (size.waist_min + size.waist_max) \/ 2;\n                diff += Math.pow(waist - waistCenter, 2) * tolerance.waist_weight;\n                count++;\n            }\n\n            \/\/ Brustumfang\/Chest\n            if (size.chest_min !== undefined \u0026\u0026 size.chest_max !== undefined \u0026\u0026 chest \u003e 0) {\n                const chestCenter = (size.chest_min + size.chest_max) \/ 2;\n                diff += Math.pow(chest - chestCenter, 2) * tolerance.chest_weight;\n                count++;\n            }\n\n            if (count \u003e 0) {\n                const sizeDiff = Math.sqrt(diff \/ count);\n\n                \/\/ 🔥 Gewichte diesen Score mit dem Model-Gewicht\n                const weightedScore = sizeDiff * (1.0 \/ (setWeight + 0.01));\n\n                if (!sizeVotes[size.name]) {\n                    sizeVotes[size.name] = {\n                    name: size.name,\n                    totalScore: 0,\n                    count: 0\n                    };\n                }\n\n                sizeVotes[size.name].totalScore += weightedScore;\n                sizeVotes[size.name].count++;\n            }\n        }\n    }\n\n    \/\/ 🔥 SCHRITT 3: Finde die Size mit dem besten durchschnittlichen Score\n    let bestSize = '';\n    let bestAvgScore = Number.POSITIVE_INFINITY;\n\n    for (const sizeName in sizeVotes) {\n        const vote = sizeVotes[sizeName];\n        const avgScore = vote.totalScore \/ vote.count;\n\n        if (avgScore \u003c bestAvgScore) {\n            bestAvgScore = avgScore;\n            bestSize = sizeName;\n        }\n    }\n\n    console.log('🔥 Size Votes:', sizeVotes);\n    console.log('🔥 Best Size:', bestSize, 'Score:', bestAvgScore.toFixed(2));\n\n    if (bestSize) {\n        document.getElementById('bn-calc-result').innerHTML = \n            '✅ Deine empfohlene Größe: \u003cstrong\u003e' + bestSize + '\u003c\/strong\u003e';\n    } else {\n        document.getElementById('bn-calc-result').innerHTML = \n            '⚠️ Bitte fülle alle Felder aus.';\n    }\n}\n\n\u003c\/script\u003e\n\n\n  \u003cdiv class=\"bn-quick-benefits\"\u003e\u003cul\u003e\n\u003cli\u003e✔ Schnitt: High Waist Bikini, Ober- und Unterteil separat wählbar\u003c\/li\u003e\n\u003cli\u003e✔ Design: Blumenmuster in Orange und Blau, dezent und flächig\u003c\/li\u003e\n\u003cli\u003e✔ Pflege: Nach dem Tragen kurz mit klarem Wasser ausspülen, Feinwäsche 30 °C, nicht im Trockner trocknen\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-mini-cta\"\u003eWenn Schnitt und Größe zu dir passen, kann Bikini Blumenmuster orange blau sich im Alltag deutlich anders anfühlen.\u003c\/p\u003e\n  \u003cdiv class=\"bn-comfort\"\u003e\n  \u003ch2\u003eWenn ein Bikini im Wasser mehr Aufmerksamkeit fordert als der Badetag selbst\u003c\/h2\u003e\n  \u003cp class=\"bn-subheadline\"\u003eEin Bikini, der ruhig sitzt – und ein Muster, das einfach da ist.\u003c\/p\u003e\n  \u003cdiv class=\"bn-questions\"\u003e\n  \u003ch3\u003eWenn du dich hier wiedererkennst\u003c\/h3\u003e\n  \u003cul\u003e\n\u003cli\u003eOberteil verrutscht beim Schwimmen und muss ständig nachgezogen werden\u003c\/li\u003e\n\u003cli\u003eDer Bund drückt oder rollt sich ab\u003c\/li\u003e\n\u003cli\u003eDas Muster wirkt am Körper anders als auf dem Foto\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n  \u003cp\u003eViele kennen das: Man geht ins Wasser, taucht kurz unter – und schon sitzt irgendetwas nicht mehr so, wie es soll. Das Oberteil hat sich gedreht, der Bund ist nach unten gerutscht. Für den Rest des Badetages bleibt ein leises Unbehagen, ob alles noch an Ort und Stelle ist.\u003c\/p\u003e\n\u003cp\u003eDas liegt oft an Schnitten, die für ruhiges Liegen ausgelegt sind, aber nicht für Bewegung im Wasser. Ein hoher Hüftbund kann dazu beitragen, dass der Untere Teil stabiler sitzt – weil er mehr Körperfläche bedeckt und weniger Spielraum hat, sich zu verschieben. Kein Versprechen, aber in der Regel macht der Schnitt einen spürbaren Unterschied im Alltag am Wasser.\u003c\/p\u003e\n\u003cp\u003eDieser Bikini mit Blumenmuster orange blau ist für ruhige Situationen am Wasser ausgelegt – Strand, See, Pool, Urlaub. Wer intensive Wassersportarten wie Surfen oder Turmspringen plant, braucht dafür in der Regel speziellere Schnitte mit zusätzlichen Verschlüssen. Wenn du eher an entspannte Badetage denkst, könnte dieser Schnitt passen.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMagst du eher das Gefühl von viel Freiheit und wenig Stoff – oder bevorzugst du, dass ein Bikini auch bei einer unerwarteten Welle ruhig bleibt?\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eUnser Größenrechner hilft dir, Schnitt und Größe einzuschätzen – gib Körpergröße und Gewicht ein.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eOber- und Unterteil sind separat wählbar, damit beides für dich passt – auch wenn Oberteil und Unterteil verschiedene Größen brauchen.\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-social-proof\"\u003e\n\u003ch3\u003eViele achten besonders auf\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003e→ Sitzt beim Aufstehen und Bewegen im Wasser meist ruhig\u003c\/li\u003e\n\u003cli\u003e→ Blumenmuster wirkt am Körper dezenter als erwartet – angenehm unaufdringlich\u003c\/li\u003e\n\u003cli\u003e→ Hoher Bund als angenehme Alternative zu tief sitzenden Schnitten\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"bn-decision-anchor\"\u003e\n\u003ch3\u003eDas hilft dir bei der Entscheidung\u003c\/h3\u003e\n\u003cul class=\"bn-decision-pro\"\u003e\n\u003cli\u003e✅ Hoher Hüftbund – ausgelegt für stabileren Sitz bei Bewegung im Wasser\u003c\/li\u003e\n\u003cli\u003e✅ Dezentes Blumenmuster in Orange und Blau – zurückhaltend kombinierbar\u003c\/li\u003e\n\u003cli\u003e✅ Ober- und Unterteil separat wählbar – für unterschiedliche Proportionen\u003c\/li\u003e\n\u003cli\u003e✅ Ruhiges Design für entspannte Badetage an See, Pool und Strand\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cul class=\"bn-decision-contra\"\u003e\n\u003cli\u003e⚠️ Für intensive Wassersportarten oder Leistungsschwimmen weniger geeignet\u003c\/li\u003e\n\u003cli\u003e⚠️ Wer sehr ausdrucksstarke, großformatige Prints bevorzugt, findet hier eher florale Zurückhaltung\u003c\/li\u003e\n\u003cli\u003e⚠️ Keine speziellen Sportbefestigungen oder Knochen – eher Freizeitschnitt\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n  \n\n  \u003cdiv class=\"bn-compare\"\u003e\n\u003cdiv class=\"bn-compare-header\"\u003e\n\u003cspan class=\"bn-compare-icon\"\u003e⚖️\u003c\/span\u003e\u003ch3\u003eTypische Unterschiede\u003c\/h3\u003e\n\u003cp class=\"bn-compare-sub\"\u003eWas viele bei ähnlichen Produkten bemängeln – und worauf dieses ausgelegt ist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-other\"\u003e❌ Typisch bei ähnlichen\u003c\/span\u003e\u003c\/th\u003e\n\u003cth\u003e\u003cspan class=\"bn-compare-th-this\"\u003e✅ Bikini Blumenmuster orange blau\u003c\/span\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eOberteil verrutscht beim Schwimmen und muss nachgezogen werden\u003c\/td\u003e\n\u003ctd\u003eAuf stabilen Sitz bei Alltagsbewegung im Wasser ausgelegt – kein Versprechen, aber in der Regel ruhiger durch den Schnitt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eBund rollt sich ab oder drückt bei längerem Tragen\u003c\/td\u003e\n\u003ctd\u003eHoher Hüftbund mit mehr Körperauflage – kann dazu beitragen, dass er bei normaler Belastung besser an Ort und Stelle bleibt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGrößen bei Bikinis online schwer einzuschätzen\u003c\/td\u003e\n\u003ctd\u003eOber- und Unterteil separat wählbar, Größenrechner mit Körpergröße und Gewicht als Anhaltspunkt\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMuster wirkt am Körper ganz anders als auf dem Foto\u003c\/td\u003e\n\u003ctd\u003eFlächiges, dezentes Blumenmuster – zurückhaltend, nicht überladen, wirkt auf verschiedenen Hauttypen ähnlich ruhig\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n  \u003cp class=\"bn-loop\"\u003eGenau solche Situationen haben wir bei Bikini Blumenmuster orange blau mitgedacht – damit du beim Tragen weniger nachjustieren musst.\u003c\/p\u003e\n\n  \n\u003cdiv class=\"bn-lupe\"\u003e\n  \u003ch3\u003eSo fühlt sich Bikini Blumenmuster orange blau im Alltag an\u003c\/h3\u003e\n  \u003cp class=\"bn-lupe-intro\"\u003eKonkrete Momente, in denen du merkst: Das passt.\u003c\/p\u003e\n  \n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e💧\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eIm Wasser\u003c\/h4\u003e\n      \u003cp\u003eDer Schnitt ist auf stabilen Sitz ausgelegt – auch bei Bewegung.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🌊\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eNach dem Schwimmen\u003c\/h4\u003e\n      \u003cp\u003eDas Material trocknet schnell. Kein schweres, nasses Gefühl auf der Haut.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e☀️\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003eAm Strand\u003c\/h4\u003e\n      \u003cp\u003eSalzwasser, Sonne, Sand: Der Stoff behält seine Form. Keine Verfärbungen, kein Ausleiern.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bn-lupe-item\"\u003e\n    \u003cdiv class=\"bn-lupe-icon\"\u003e🧴\u003c\/div\u003e\n    \u003cdiv class=\"bn-lupe-content\"\u003e\n      \u003ch4\u003ePflege\u003c\/h4\u003e\n      \u003cp\u003eKurz ausspülen, aufhängen, fertig. Feinwäsche 30°C, nicht im Trockner – Pflegehinweise beachten für längere Haltbarkeit.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-material\"\u003e\n  \u003ch3\u003ePflege \u0026amp; Material\u003c\/h3\u003e\n  \u003cdiv\u003e• Material: 78% Polyamid, 22% Elasthan\u003cbr\u003e• Pflege: Feinwäsche 30 °C, nicht im Trockner\u003c\/div\u003e\n\u003c\/div\u003e\n  \n\n  \n  \n\u003cdiv class=\"bn-target\"\u003e\n  \u003ch3\u003eKann gut passen, wenn …\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e→ Du suchst \u003cstrong\u003eBikini Blumenmuster orange blau\u003c\/strong\u003e mit Passform, die zu dir passen kann\u003c\/li\u003e\n\u003cli\u003e→ Du magst \u003cstrong\u003eruhige, schlichte Designs\u003c\/strong\u003e ohne Aufdringlichkeit\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort im Alltag\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du legst Wert auf \u003cstrong\u003eKomfort und Langlebigkeit\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003e→ Du möchtest \u003cstrong\u003eFehlkäufe vermeiden\u003c\/strong\u003e\n\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-specs\"\u003e\n  \u003ch3\u003eProduktdetails auf einen Blick\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\n\u003cstrong\u003ePflege:\u003c\/strong\u003e Feinwäsche 30°C, nicht im Trockner\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \n\u003cdiv class=\"bn-faq\" itemscope itemtype=\"https:\/\/schema.org\/FAQPage\"\u003e\n  \u003ch3\u003eHäufig gestellte Fragen zu Bikini Blumenmuster orange blau\u003c\/h3\u003e\n  \n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie sitzt der Bikini Blumenmuster orange blau bei Bewegung im Wasser?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDer hohe Hüftbund ist darauf ausgelegt, beim Gehen, Schwimmen und Aufstehen ruhiger zu sitzen als niedrig geschnittene Modelle. Bei normaler Belastung im Freizeitbereich bleibt er in der Regel an Ort und Stelle – für intensive Wassersportarten ist er weniger ausgelegt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eKann ich Ober- und Unterteil in verschiedenen Größen bestellen?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, Ober- und Unterteil sind separat wählbar. Das ist besonders hilfreich, wenn Oberkörper und Hüfte verschiedene Größen haben. Nutze den Größenrechner mit Körpergröße und Gewicht als Anhaltspunkt.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie finde ich die richtige Größe für einen High Waist Bikini mit Blumenprint?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eFür das Unterteil orientiere dich an deiner Hosengröße oder Hüftweite. Das Oberteil richtet sich nach deiner BH-Größe oder Brustweite. Unser Größenrechner gibt dir auf Basis von Körpergröße und Gewicht einen ersten Anhaltspunkt – bei Unsicherheit tendieren viele dazu, oben etwas größer zu wählen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie pflege ich einen Bikini mit Blumenmuster richtig?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eNach dem Tragen kurz mit klarem, kühlem Wasser ausspülen. Bei 30 °C im Feinwaschgang waschen, nicht im Trockner trocknen und nicht direkt in der Sonne liegend trocknen lassen. So bleiben Form und Farben länger stabil.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eIst der Bikini auch für den Bodensee geeignet?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eJa, der Bikini ist für ruhige Wassersituationen wie See, Pool und Strandurlaub ausgelegt. Für intensive Wassersportarten empfehlen sich Modelle mit zusätzlichen Befestigungen.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv itemscope itemprop=\"mainEntity\" itemtype=\"https:\/\/schema.org\/Question\"\u003e\n    \u003ch4 itemprop=\"name\"\u003eWie wirkt das orange-blaue Blumenmuster in der Realität?\u003c\/h4\u003e\n    \u003cdiv itemscope itemprop=\"acceptedAnswer\" itemtype=\"https:\/\/schema.org\/Answer\"\u003e\n      \u003cp itemprop=\"text\"\u003eDas Muster ist flächig und zurückhaltend – nicht überladen. Orange und Blau halten sich farblich die Waage, was den Bikini kombinierbar macht. Wer sehr lebhafte oder großformatige Prints bevorzugt, findet hier eher dezente Botanik.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n  \u003cdiv class=\"bn-related-articles\"\u003e\n  \u003ch3\u003eRatgeber\u003c\/h3\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzug-grosse-grossen\"\u003eGroße Größen Badeanzüge\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/bugel-bikini\"\u003eBügel Bikini\u003c\/a\u003e\u003c\/li\u003e\n    \u003cli\u003e\u003ca href=\"\/blogs\/badeanzug-damen\/badeanzuge-fur-jeden-typ\"\u003eBadeanzug-Guide 2025\u003c\/a\u003e\u003c\/li\u003e\n  \u003c\/ul\u003e\n\u003c\/div\u003e\n\n  \u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Orangefarbene Blüten auf blauem Grund – sichtbar am Bodenseeufer im Gegenlicht\" style=\"display:none\"\u003e\u003c\/span\u003e\u003cspan class=\"bn-visual-anchor\" data-visual-intent=\"Hoher Hüftbund beim Aufstehen aus dem Wasser – ruhig, ohne Nachziehen\" style=\"display:none\"\u003e\u003c\/span\u003e\n\n  \u003cdetails class=\"bn-ship\"\u003e\u003csummary\u003eLieferung\u003c\/summary\u003e\u003cdiv\u003e\u003cdiv class=\"bn-shipping-info\"\u003e\n    \u003ch4\u003e📦 Lieferzeit\u003c\/h4\u003e\n    \u003cp\u003e\u003cstrong\u003e5–11 Tage\u003c\/strong\u003e nach Bestelleingang\u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; color: #6b7280; margin-top: 8px;\"\u003e\n        Wir produzieren auf Bestellung – das reduziert Überproduktion und Lagerware, bei bedruckter Ware!\n    \u003c\/p\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003c\/details\u003e\n  \n  \u003cdiv class=\"bn-return-policy\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/div\u003e\n  \u003cdiv class=\"bn-source\"\u003e\u003csmall class=\"bn-source\"\u003eQuelle: Bodenseemarke – Angaben geprüft i. S. d. EU-GPSR.\u003cbr\u003eHersteller: Eugen Noll Bodenseemarke GbR, Zaunkönigweg 8, 88048 Friedrichshafen, DE, info@bodenseemarke.com\u003c\/small\u003e\u003c\/div\u003e\n\n  \u003cp class=\"bn-loop-end\"\u003eWenn du dich in den Szenen oben wiederfindest, kann Bikini Blumenmuster orange blau eine passende Option sein.\u003c\/p\u003e\n\n  \u003cdiv class=\"bn-bottom-cta\"\u003e\n\u003cp class=\"bn-cta-title\"\u003eBikini Blumenmuster orange blau\u003c\/p\u003e\n\u003cp class=\"bn-cta-price\"\u003e\u003cspan class=\"bn-cta-current\"\u003e€25.95\u003c\/span\u003e\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"bn-cta-button\" onclick=\"var t=document.querySelector('.product-form__input')||document.querySelector('[name=id]')||document.querySelector('form[action*=cart]');if(t){t.scrollIntoView({behavior:'smooth',block:'center'})}else{window.scrollTo({top:0,behavior:'smooth'})}\"\u003eGröße wählen \u0026amp; bestellen ↑\u003c\/button\u003e\u003cp class=\"bn-cta-trust\"\u003eOhne Druck bestellen. 30 Tage Zeit zum Entscheiden.\u003c\/p\u003e\n\u003cp class=\"bn-cta-stars\"\u003e★★★★★\u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"bn-closing-note\"\u003e\n    \u003cp\u003e\n        Am Ende geht es nicht um das Kleidungsstück selbst, sondern um die Momente, die du darin erlebst. \n        Wir hoffen, dass Bikini Blumenmuster orange blau dich dabei genau so begleiten kann, wie du es dir wünschst.\n    \u003c\/p\u003e\n    \u003cp style=\"font-size: 0.9rem; margin-top: 1rem; font-style: normal;\"\u003e\n        \u003ca href=\"\/pages\/uber-uns\" style=\"color: #3b82f6; text-decoration: none; font-weight: 500;\"\u003eUnsere Philosophie erfahren →\u003c\/a\u003e\n    \u003c\/p\u003e\n\u003c\/div\u003e\n\n  \u003csmall class=\"bn-updated\"\u003eZuletzt aktualisiert: 20.05.2026\u003c\/small\u003e\n\n  \n\n\u003cstyle\u003e\n\n  .bn-product-copy{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px!important;line-height:1.7!important;color:#111827}\n  .bn-product-copy h2{font-size:1.8rem!important;margin:24px 0 12px;line-height:1.3}\n  .bn-product-copy h3{font-size:1.25rem!important;margin:20px 0 10px;line-height:1.4}\n  .bn-product-copy p{margin:12px 0;font-size:1rem!important;line-height:1.7!important}\n  .bn-product-copy li{font-size:1rem!important;line-height:1.7!important}\n @media(max-width:768px){\n    .bn-product-copy{font-size:15px!important;line-height:1.65!important}\n    .bn-product-copy h2{font-size:1.45rem!important;margin:18px 0 10px}\n    .bn-product-copy h3{font-size:1.15rem!important;margin:16px 0 8px}\n    .bn-product-copy p,.bn-product-copy li{font-size:0.97rem!important;line-height:1.65!important}\n  }\n  .bn-subheadline{color:#374151}\n  .bn-questions{margin:14px 0;padding:16px;background:#f9fafb;border-radius:8px}\n  .bn-questions ul{margin:8px 0 0 20px}\n  .bn-questions li{margin:6px 0}\n  .bn-pricebox{margin:16px 0;padding:12px;background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:8px}\n  details.bn-ship, details.bn-returns{margin:10px 0;background:#f9fafb;padding:10px 12px;border-radius:8px}\n  details summary{cursor:pointer;font-weight:600}\n  .bn-material{margin:16px 0}\n  .bn-sizechart{margin:16px 0}\n  .bn-fit{margin:16px 0}\n  .bn-mini-cta{margin:20px 0;padding:16px;background:#f0f9ff;border-left:4px solid #3b82f6;font-weight:500;font-style:italic}\n  .bn-loop{margin:16px 0;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;font-weight:500}\n  .bn-loop-end{margin:20px 0;padding:16px;background:#f0fdf4;border-left:4px solid #10b981;font-weight:500;font-style:italic}\n  .bn-target{margin:20px 0;padding:20px;background:#f0f9ff;border-radius:8px;border-left:4px solid #3b82f6}\n  .bn-target h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-specs{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px}\n  .bn-specs h3{margin:0 0 12px 0;font-size:1.2rem}\n  .bn-faq{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #d1fae5;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.05)}\n  .bn-faq\u003eh3{margin:0;padding:18px 24px;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-bottom:2px solid #bbf7d0;font-size:1.1rem;color:#065f46;font-weight:700}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]{padding:16px 24px;border-top:1px solid #f0fdf4}\n  .bn-faq [itemtype=\"https:\/\/schema.org\/Question\"]:first-of-type{border-top:none}\n  .bn-faq h4{margin:0 0 8px 0;font-size:0.95rem;font-weight:600;color:#1e293b;cursor:pointer}\n  .bn-faq h4::before{content:\"❓ \";font-size:0.85rem}\n  .bn-faq p[itemprop=\"text\"]{margin:0;font-size:0.9rem;color:#475569;line-height:1.6;padding-left:1.4rem}\n  .bn-entity{margin:20px 0;padding:20px;background:#fef3c7;border-radius:8px;border-left:4px solid #f59e0b}\n  .bn-lupe{margin:30px 0;padding:24px;background:#f0f9ff;border-radius:12px;border-left:4px solid #3b82f6}\n  .bn-lupe h3{margin:0 0 8px 0;font-size:1.3rem}\n  .bn-lupe-intro{margin:0 0 20px 0;color:#374151;font-style:italic}\n  .bn-lupe-item{display:flex;gap:16px;margin:16px 0;padding:16px;background:white;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}\n  .bn-lupe-icon{font-size:32px;flex-shrink:0}\n  .bn-lupe-content h4{margin:0 0 6px 0;font-size:1.05rem;font-weight:600}\n  .bn-lupe-content p{margin:0;color:#374151;line-height:1.5}\n  .bn-updated{display:block;margin-top:8px;color:#6b7280}\n  .bn-return-policy{margin:16px 0;padding:12px;background:#f9fafb;border-left:3px solid #2563eb;font-size:0.95rem}\n  .bn-product-image{width:100%;height:auto;margin:20px 0;border-radius:8px}\n  .bn-gpsr{margin-top:32px}\n  .bn-quick-benefits{margin:14px 0 20px 0;padding:12px 16px;background:#f9fafb;border-radius:8px}\n  .bn-quick-benefits ul{margin:0;padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}\n  .bn-quick-benefits li{font-size:0.9rem;color:#374151;font-weight:500}\n  .bn-problem-hook{margin:0 0 16px 0;padding:14px 20px;background:#fef9ec;border-left:4px solid #f59e0b;border-radius:6px;font-style:italic;color:#6b7280;font-size:0.95rem}\n  .bn-social-proof{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-social-proof h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-social-proof ul{margin:0;padding-left:0;list-style:none}\n  .bn-social-proof li{margin:8px 0;color:#374151}\n  .bn-decision-anchor{margin:20px 0;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}\n  .bn-decision-anchor h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-decision-anchor ul{margin:6px 0;padding-left:0;list-style:none}\n  .bn-decision-anchor li{margin:6px 0;line-height:1.5}\n  .bn-compare{margin:32px 0;padding:0;background:#fff;border-radius:12px;border:2px solid #e5e7eb;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06)}\n  .bn-compare-header{padding:20px 24px 16px;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-bottom:2px solid #bae6fd;display:flex;align-items:flex-start;gap:12px}\n  .bn-compare-icon{font-size:1.6rem;flex-shrink:0;margin-top:2px}\n  .bn-compare-header h3{margin:0 0 4px 0;font-size:1.15rem;color:#0c4a6e;font-weight:700}\n  .bn-compare-sub{margin:0;font-size:0.85rem;color:#0369a1;font-style:italic}\n  .bn-compare table{width:100%;border-collapse:collapse;margin:0}\n  .bn-compare th{padding:14px 16px;text-align:left;font-size:0.85rem;font-weight:700;letter-spacing:0.3px}\n  .bn-compare th:first-child{background:#fff1f2;color:#be123c;border-right:2px solid #e5e7eb;width:50%}\n  .bn-compare th:last-child{background:#f0fdf4;color:#15803d}\n  .bn-compare-th-other,.bn-compare-th-this{display:block}\n  .bn-compare td{padding:13px 16px;font-size:0.9rem;line-height:1.45;vertical-align:top;border-top:1px solid #f1f5f9}\n  .bn-compare td:first-child{background:#fff;color:#64748b;border-right:2px solid #e5e7eb}\n  .bn-compare td:last-child{background:#f8fff9;color:#1e293b;font-weight:500}\n  .bn-compare tr:last-child td{border-bottom:none}\n  .bn-related-articles{margin:20px 0;padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #6366f1}\n  .bn-related-articles h3{margin:0 0 12px 0;font-size:1.1rem}\n  .bn-related-articles ul{margin:8px 0;padding-left:20px}\n  .bn-related-articles li{margin:6px 0}\n  .bn-related-articles a{color:#4f46e5;text-decoration:none;font-weight:500}\n  .bn-related-articles a:hover{text-decoration:underline}\n  .bn-bottom-cta{margin:3rem 0 1rem 0;padding:2rem;background:var(--color-background-primary,#fff);border:0.5px solid var(--color-border-tertiary,#e5e7eb);border-radius:12px;text-align:center}\n  .bn-cta-title{font-size:1.05rem;font-weight:500;margin:0 0 8px 0;color:var(--color-text-primary,#111827)}\n  .bn-cta-price{margin:0 0 18px 0;font-size:1.1rem}\n  .bn-cta-original{text-decoration:line-through;color:#9ca3af;margin-right:10px;font-size:1rem}\n  .bn-cta-sale{color:#dc2626;font-weight:500;font-size:1.25rem}\n  .bn-cta-current{font-weight:500;font-size:1.25rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-button{display:block;width:100%;padding:14px 28px;background:#f9ca51;color:#111827;border:none;border-radius:8px;font-size:0.95rem;font-weight:500;cursor:pointer;letter-spacing:0.3px;transition:opacity 0.2s}\n  .bn-cta-button:hover{opacity:0.88}\n  .bn-cta-trust{margin:14px 0 6px 0;font-weight:500;font-size:0.9rem;color:var(--color-text-primary,#111827)}\n  .bn-cta-stars{margin:0;font-size:1.2rem;color:#f9ca51;letter-spacing:2px}\n  .bn-closing-note{margin-top:3rem;padding:2rem;border-top:1px solid #eee;text-align:center;font-style:italic;color:#4b5563}\n  .bn-closing-note a{color:#3b82f6;text-decoration:none;font-weight:500}\n  .bn-shipping-info h4{margin:0 0 8px 0;font-size:1.05rem;font-weight:600}\n  .bn-shipping-info p{margin:6px 0}\n  .bn-energy{margin:8px 0 12px 0;padding:14px 20px;font-style:italic;color:#374151;font-size:1.05rem;line-height:1.8;background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px}\n  .bn-soft-reality{margin:8px 0 20px 0;padding:10px 20px;color:#6b7280;font-size:0.95rem;font-style:italic;line-height:1.7;background:#f9fafb;border-radius:8px}\n  \n\u003c\/style\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\/\", \"@type\": \"Product\", \"name\": \"Bikini Blumenmuster orange blau\", \"brand\": {\"@type\": \"Brand\", \"name\": \"Bodenseemarke\"}, \"image\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/printed-high-waist-bikini-breite-tr-ger.png?v=1776592126\", \"category\": \"bikini\", \"offers\": {\"@type\": \"Offer\", \"availability\": \"https:\/\/schema.org\/InStock\", \"price\": \"25.95\", \"priceCurrency\": \"EUR\"}}\u003c\/script\u003e","brand":"Bodenseemarke","offers":[{"title":"Orange \/ XXL","offer_id":54413475873036,"sku":"CJYDYYYJ00182-Orange-XXL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ S","offer_id":54413475905804,"sku":"CJYDYYYJ00182-Black-S","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ M","offer_id":54413475938572,"sku":"CJYDYYYJ00182-Black-M","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ L","offer_id":54413475971340,"sku":"CJYDYYYJ00182-Black-L","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Black \/ XL","offer_id":54413476004108,"sku":"CJYDYYYJ00182-Black-XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ L","offer_id":54413476036876,"sku":"CJYDYYYJ00182-Orange-L","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ M","offer_id":54413476069644,"sku":"CJYDYYYJ00182-Orange-M","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ 3XL","offer_id":54413476102412,"sku":"CJYDYYYJ00182-Orange-3XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ XL","offer_id":54413476135180,"sku":"CJYDYYYJ00182-Orange-XL","price":25.95,"currency_code":"EUR","in_stock":true},{"title":"Orange \/ S","offer_id":54413476167948,"sku":"CJYDYYYJ00182-Orange-S","price":25.95,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/files\/printed-high-waist-bikini-breite-tr-ger.png?v=1776592126"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0528\/5635\/7044\/collections\/WhatsApp_Image_2026-03-27_at_08.07.34_c6a72bc6-1895-4925-bd04-d665679bcf34.jpg?v=1780471493","url":"https:\/\/www.bodenseemarke.com\/collections\/bademode.oembed?page=5","provider":"Bodenseemarke","version":"1.0","type":"link"}