{"id":1022,"date":"2026-09-14T19:12:03","date_gmt":"2026-09-14T19:12:03","guid":{"rendered":"https:\/\/czechpeptide.com\/?page_id=1022"},"modified":"2026-09-16T18:29:04","modified_gmt":"2026-09-16T18:29:04","slug":"ghk-cu50mg","status":"publish","type":"page","link":"https:\/\/czechpeptide.com\/cz\/ghk-cu50mg\/","title":{"rendered":"ghkcu50mg"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>GHK-Cu &#8211; Product Page<\/title>\n    \n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&#038;display=swap\" rel=\"stylesheet\">\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    \n    <script>\n        tailwind.config = {\n            theme: {\n                extend: {\n                    fontFamily: {\n                        sans: ['Inter', 'sans-serif'],\n                    },\n                    colors: {\n                        brand: {\n                            DEFAULT: '#b142f5',\n                            hover: '#9a2ad9',\n                            light: '#f7ebff',\n                            border: '#d794f9'\n                        }\n                    }\n                }\n            }\n        }\n    <\/script>\n\n    <style>\n        body { background-color: #fcfcfd; color: #1f2937; }\n        .product-image-bg { background: radial-gradient(circle at center, #f7ebff 0%, #f3f4f6 70%); }\n        input[type=\"number\"]::-webkit-inner-spin-button,\n        input[type=\"number\"]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }\n        input[type=\"number\"] { -moz-appearance: textfield; }\n        .tab-content { display: none; animation: fadeIn 0.2s ease-in-out; }\n        .tab-content.active { display: block; }\n        @keyframes fadeIn { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: translateY(0); } }\n        @keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }\n        .logo-slider { display: flex; width: max-content; animation: scroll 35s linear infinite; }\n        .logo-slider:hover { animation-play-state: paused; }\n    <\/style>\n<\/head>\n<body class=\"antialiased min-h-screen pb-12\">\n\n    <main class=\"max-w-6xl mx-auto px-2 sm:px-6 py-4 sm:py-8\">\n        \n        <div class=\"flex flex-row gap-2 sm:gap-6 lg:gap-8 items-start\">\n            \n            <!-- LEFT COLUMN -->\n            <div class=\"w-[45%] lg:w-1\/2 flex flex-col gap-2 sm:gap-4\">\n                \n                <!-- Product Image -->\n                <div class=\"product-image-bg rounded-xl sm:rounded-2xl flex items-center justify-center h-[180px] sm:h-[400px] lg:h-[500px] border border-purple-200 shadow-sm relative overflow-hidden p-2\">\n                    <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/04\/ghkcu.png\" alt=\"GHK-Cu Vial\" class=\"max-w-[95%] max-h-[95%] object-contain mix-blend-multiply drop-shadow-xl hover:scale-105 transition-transform duration-500 cursor-zoom-in\" onclick=\"openImageModal(this.src)\">\n                <\/div>\n                \n                <!-- Info Cards (PC Only) -->\n                <div class=\"hidden sm:grid grid-cols-1 sm:grid-cols-2 gap-2 sm:gap-3\">\n                    <div class=\"bg-white border border-purple-200 rounded-lg sm:rounded-xl p-2 sm:p-3 flex items-start gap-1.5 sm:gap-3 shadow-sm\">\n                        <div class=\"bg-brand-light text-brand p-1 sm:p-1.5 rounded-md hidden sm:block\">\n                            <svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19.428 15.428a2 2 0 00-1.022-.547l-2.387-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z\"><\/path><\/svg>\n                        <\/div>\n                        <div>\n                            <p class=\"font-bold text-[9px] sm:text-xs text-gray-900 leading-tight\">Peptide appearance<\/p>\n                            <p class=\"text-[8px] sm:text-[11px] text-gray-500 mt-0.5\">Lyophilized form<\/p>\n                        <\/div>\n                    <\/div>\n                    <div class=\"bg-white border border-purple-200 rounded-lg sm:rounded-xl p-2 sm:p-3 flex items-start gap-1.5 sm:gap-3 shadow-sm\">\n                        <div class=\"bg-brand-light text-brand p-1 sm:p-1.5 rounded-md hidden sm:block\">\n                            <svg class=\"w-5 h-5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19.428 15.428a2 2 0 00-1.022-.547l-2.387-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z\"><\/path><\/svg>\n                        <\/div>\n                        <div>\n                            <p class=\"font-bold text-[9px] sm:text-xs text-gray-900 leading-tight\">Solution not bundled<\/p>\n                            <a href=\"#\" class=\"text-[8px] sm:text-[11px] text-brand font-medium mt-0.5 hover:underline block\">Bacteriostatic water<\/a>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Frequently Bought Together (Mobile Only) -->\n                <div class=\"border border-purple-200 rounded-lg p-2 bg-brand-light\/30 shadow-inner mt-1 block sm:hidden\">\n                    <span class=\"text-[9px] font-bold text-brand uppercase block mb-1.5 text-center\">Frequently Bought Together<\/span>\n                    <div class=\"flex flex-col gap-2 bg-white p-2 rounded-md border border-purple-100 shadow-sm transition-all hover:border-brand-light\">\n                        <div class=\"flex items-center gap-1.5\">\n                            <div class=\"h-8 w-8 bg-brand-light rounded-md flex items-center justify-center flex-shrink-0 border border-purple-100 p-0.5\">\n                                <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/08\/bacteriostatic-scaled.png\" alt=\"Bacteriostatic Water\" class=\"max-h-full object-contain mix-blend-multiply\">\n                            <\/div>\n                            <div class=\"flex-1\">\n                                <p class=\"font-bold text-[9px] text-gray-900 leading-tight\">Bacteriostatic Water (3ml)<\/p>\n                                <p class=\"text-brand font-bold text-[9px] mt-0.5\">+ 99 K\u010d<\/p>\n                            <\/div>\n                        <\/div>\n                        <div class=\"flex items-center justify-end gap-1.5 w-full border-t border-purple-50 pt-1.5\">\n                            <span class=\"text-[10px] font-bold text-gray-700 uppercase tracking-wide\">Add<\/span>\n                            <label class=\"relative inline-flex items-center cursor-pointer\">\n                                <input type=\"checkbox\" class=\"sr-only peer bac-checkbox\" onchange=\"toggleSuggestedProduct(event)\">\n                                <div class=\"w-7 h-4 bg-gray-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-3 after:w-3 after:transition-all peer-checked:bg-brand shadow-inner\"><\/div>\n                            <\/label>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Accordion -->\n                <div class=\"bg-white border border-purple-200 rounded-lg sm:rounded-xl shadow-sm overflow-hidden mt-1 sm:mt-0\">\n                    \n                    <!-- Primary Benefits Accordion -->\n                    <div class=\"border-b border-purple-100\">\n                        <button onclick=\"toggleAccordion('acc-1')\" class=\"w-full px-2 sm:px-4 py-2 sm:py-3 text-left flex justify-between items-center focus:outline-none hover:bg-brand-light\/50 transition-colors\">\n                            <span class=\"font-bold text-[10px] sm:text-sm text-gray-900 pr-1\">Primary Benefits<\/span>\n                            <svg id=\"icon-acc-1\" class=\"w-3 h-3 sm:w-4 sm:h-4 text-brand transition-transform duration-200 flex-shrink-0\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 4v16m8-8H4\"><\/path><\/svg>\n                        <\/button>\n                        <div id=\"content-acc-1\" class=\"hidden px-2 sm:px-4 pb-2 sm:pb-4 text-[9px] sm:text-xs text-gray-600 leading-relaxed\">\n                            <ul class=\"list-disc pl-3 sm:pl-4 space-y-1.5\">\n                                <li><strong>Tissue Repair:<\/strong> Widely researched for its role in extracellular matrix remodeling and wound healing.<\/li>\n                                <li><strong>Anti-Aging Properties:<\/strong> Studied for stimulating collagen synthesis and reducing fine lines.<\/li>\n                                <li><strong>Anti-Inflammatory:<\/strong> Evaluated for its potential to suppress pro-inflammatory cytokines.<\/li>\n                                <li><strong>Hair Growth:<\/strong> Frequently investigated for enlarging hair follicles and promoting hair growth.<\/li>\n                            <\/ul>\n                        <\/div>\n                    <\/div>\n                    \n                    <!-- Dosing Instructions Accordion -->\n                    <div class=\"border-b border-purple-100\">\n                        <button onclick=\"toggleAccordion('acc-2')\" class=\"w-full px-2 sm:px-4 py-2 sm:py-3 text-left flex justify-between items-center focus:outline-none hover:bg-brand-light\/50 transition-colors\">\n                            <span class=\"font-bold text-[10px] sm:text-sm text-gray-900 pr-1\">Usage and Dosing<\/span>\n                            <svg id=\"icon-acc-2\" class=\"w-3 h-3 sm:w-4 sm:h-4 text-brand transition-transform duration-200 flex-shrink-0\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 4v16m8-8H4\"><\/path><\/svg>\n                        <\/button>\n                        <div id=\"content-acc-2\" class=\"hidden px-2 sm:px-4 pb-3 sm:pb-4 text-[9px] sm:text-xs text-gray-600 leading-relaxed space-y-3\">\n                            <div>\n                                <h4 class=\"text-[10px] sm:text-sm font-bold text-gray-900 mb-1\">Dosing &#038; Reconstitution Guide<\/h4>\n                                <p class=\"text-[9px] sm:text-xs\">Educational guide for reconstitution and common dosing patterns<\/p>\n                                <p class=\"text-[9px] sm:text-xs\"><strong>Standard \/ Conservative Approach<\/strong> (3 mL = 16.67 mg\/mL; 5 days\/week)<\/p>\n                            <\/div>\n                            \n                            <!-- Phase Table -->\n                            <div class=\"overflow-x-auto border border-purple-100 rounded-lg\">\n                                <table class=\"w-full min-w-[280px] text-left bg-white\">\n                                    <thead class=\"bg-brand-light text-brand\">\n                                        <tr>\n                                            <th class=\"p-1.5 sm:p-2 border-b border-purple-100 font-bold text-[8px] sm:text-[10px] uppercase\">Week\/Phase<\/th>\n                                            <th class=\"p-1.5 sm:p-2 border-b border-purple-100 font-bold text-[8px] sm:text-[10px] uppercase\">Dose per Injection<\/th>\n                                            <th class=\"p-1.5 sm:p-2 border-b border-purple-100 font-bold text-[8px] sm:text-[10px] uppercase text-right\">Units (per injection) (mL)<\/th>\n                                        <\/tr>\n                                    <\/thead>\n                                    <tbody class=\"text-[9px] sm:text-xs\">\n                                        <tr>\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 font-medium text-gray-900\">Weeks 1-4<\/td>\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 text-gray-700\">1.0 mg (1000 mcg)<\/td>\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 text-brand font-medium text-right\">6 units (0.06 mL)<\/td>\n                                        <\/tr>\n                                        <tr class=\"bg-gray-50\/50\">\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 font-medium text-gray-900\">Weeks 5-8<\/td>\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 text-gray-700\">1.5 mg (1500 mcg)<\/td>\n                                            <td class=\"p-1.5 sm:p-2 border-b border-purple-50 text-brand font-medium text-right\">9 units (0.09 mL)<\/td>\n                                        <\/tr>\n                                        <tr>\n                                            <td class=\"p-1.5 sm:p-2 font-medium text-gray-900\">Weeks 9-12+<\/td>\n                                            <td class=\"p-1.5 sm:p-2 text-gray-700\">2.0 mg (2000 mcg)<\/td>\n                                            <td class=\"p-1.5 sm:p-2 text-brand font-medium text-right\">12 units (0.12 mL)<\/td>\n                                        <\/tr>\n                                    <\/tbody>\n                                <\/table>\n                            <\/div>\n                            <p class=\"text-[9px] sm:text-xs text-gray-500 mt-1\">\n                                Frequency: Once daily, 5 days per week, progressing from 1.0 mg to 1.5 mg and then 2.0 mg as shown above. At 16.67 mg\/mL, those doses equal 6, 9, and 12 U-100 units<sup>[18]<\/sup>. Use a U-100 syringe with markings that clearly display every value in the table.\n                            <\/p>\n                        <\/div>\n                    <\/div>\n                    \n                    <!-- Side Effects Accordion -->\n                    <div>\n                        <button onclick=\"toggleAccordion('acc-3')\" class=\"w-full px-2 sm:px-4 py-2 sm:py-3 text-left flex justify-between items-center focus:outline-none hover:bg-brand-light\/50 transition-colors\">\n                            <span class=\"font-bold text-[10px] sm:text-sm text-gray-900 pr-1\">Side Effects<\/span>\n                            <svg id=\"icon-acc-3\" class=\"w-3 h-3 sm:w-4 sm:h-4 text-brand transition-transform duration-200 flex-shrink-0\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 4v16m8-8H4\"><\/path><\/svg>\n                        <\/button>\n                        <div id=\"content-acc-3\" class=\"hidden px-2 sm:px-4 pb-2 sm:pb-4 text-[9px] sm:text-xs text-gray-600 leading-relaxed\">\n                            <ul class=\"list-disc pl-3 sm:pl-4 space-y-1\">\n                                <li>Mild flushing or warmth after administration.<\/li>\n                                <li>Mild redness at the injection site.<\/li>\n                                <li>Temporary fatigue, vivid dreams, or sleep changes.<\/li>\n                                <li>Slight water retention.<\/li>\n                            <\/ul>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Calculator Button -->\n                <a href=\"https:\/\/czechpeptide.com\/calculator\" target=\"_blank\" class=\"w-full mt-1 sm:mt-2 flex justify-center items-center gap-1.5 text-brand hover:text-white font-bold py-2 sm:py-3 px-4 bg-brand-light hover:bg-brand rounded-lg sm:rounded-xl transition-all border border-brand text-[10px] sm:text-sm shadow-sm group\">\n                    <svg class=\"w-4 h-4 sm:w-5 sm:h-5 group-hover:scale-110 transition-transform\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\"><\/path><\/svg>\n                    Calculate your dose\n                <\/a>\n\n            <\/div>\n\n            <!-- RIGHT COLUMN -->\n            <div class=\"w-[55%] lg:w-1\/2 flex flex-col gap-2 sm:gap-5\">\n                \n                <div>\n                    <span class=\"text-[9px] sm:text-[11px] font-bold tracking-wider text-brand uppercase\">Peptide Blend<\/span>\n                    <h1 class=\"text-lg sm:text-3xl lg:text-4xl font-extrabold text-gray-900 sm:mt-1 tracking-tight leading-none sm:leading-tight\">GHK-Cu 50mg<\/h1>\n                    \n                    <div class=\"flex items-center gap-1 sm:gap-1.5 mt-1 sm:mt-2.5\">\n                        <span id=\"stock-dot\" class=\"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-green-500\"><\/span>\n                        <span class=\"text-[10px] sm:text-xs font-bold text-green-600\" id=\"stock-status\">In stock<\/span>\n                    <\/div>\n                <\/div>\n\n                <p class=\"text-gray-600 leading-snug sm:leading-relaxed text-[9px] sm:text-sm hidden sm:block\">\n                    GHK-Cu is the copper complex of the peptide glycyl-L-histidyl-L-lysine. Published studies look at copper binding, extracellular matrix, microbes, nerve cells, and gene expression. \n                    <a href=\"#overview-tab\" onclick=\"document.getElementById('tab-overview').click()\" class=\"text-brand font-semibold hover:underline\">More &rarr;<\/a>\n                <\/p>\n\n                <hr class=\"border-purple-100 sm:border-purple-200 my-1 sm:my-0\">\n\n                <!-- Mass & Quantity -->\n                <div class=\"flex flex-col gap-3 sm:gap-4 w-full\">\n                    <!-- Standard options - retained for blend but IDs can be adapted -->\n                    <div class=\"flex flex-col sm:flex-row sm:items-center gap-1.5 sm:gap-3 w-full\">\n                        <span class=\"text-[10px] sm:text-[11px] font-bold text-gray-500 sm:w-16\">MASS<\/span>\n                        <div class=\"flex gap-1.5 sm:gap-2 flex-wrap\">\n                            <button id=\"mass-50mg\" onclick=\"selectMass(50)\" class=\"bg-brand text-white px-3 sm:px-3 py-1.5 sm:py-1.5 rounded-full text-[10px] sm:text-xs font-bold shadow-sm transition-transform active:scale-95\">50mg<\/button>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"flex flex-col sm:flex-row sm:items-center gap-1.5 sm:gap-3 w-full\">\n                        <span class=\"text-[10px] sm:text-[11px] font-bold text-gray-500 sm:w-16\">QUANTITY<\/span>\n                        <div class=\"flex items-center border border-purple-200 rounded-full bg-white shadow-sm overflow-hidden h-8 sm:h-8 w-max max-w-full\">\n                            <button onclick=\"handleQtyChange(-1)\" class=\"px-3 sm:px-3 text-brand hover:bg-brand-light\/50 h-full transition-colors text-sm sm:text-base font-bold\">&minus;<\/button>\n                            <input type=\"number\" id=\"qty-input\" value=\"1\" min=\"1\" onchange=\"handleQtyInput()\" class=\"w-8 sm:w-10 text-center font-bold text-[11px] sm:text-sm text-gray-900 bg-transparent border-none focus:outline-none focus:ring-0 p-0\">\n                            <button onclick=\"handleQtyChange(1)\" class=\"px-3 sm:px-3 text-brand hover:bg-brand-light\/50 h-full transition-colors text-sm sm:text-base font-bold\">&plus;<\/button>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Bundle & Save -->\n                <div class=\"flex flex-col gap-1 sm:gap-2 sm:mt-1\">\n                    <span class=\"text-[9px] sm:text-[11px] font-bold text-gray-900 uppercase\">Bundle &#038; Save<\/span>\n                    <div class=\"grid grid-cols-3 gap-1 sm:gap-2\">\n                        \n                        <div id=\"bundle-1\" onclick=\"selectBundle(1)\" class=\"bundle-card border-2 border-brand rounded-md sm:rounded-xl p-1 sm:p-2.5 cursor-pointer relative transition-all hover:shadow-md bg-brand-light\">\n                            <div class=\"flex flex-col items-center text-center gap-1 sm:gap-1.5\">\n                                <img decoding=\"async\" src=\"https:\/\/placehold.co\/30x60\/transparent\/b142f5?text=1\" alt=\"1 Vial\" class=\"h-5 sm:h-8 object-contain\">\n                                <div>\n                                    <p class=\"font-extrabold text-[8px] sm:text-xs text-brand leading-tight\">1 VIAL<\/p>\n                                    <p class=\"text-[7px] sm:text-[9px] text-gray-500 font-medium leading-none mt-0.5\">Normal<\/p>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                        <div id=\"bundle-2\" onclick=\"selectBundle(2)\" class=\"bundle-card border border-purple-200 rounded-md sm:rounded-xl p-1 sm:p-2.5 cursor-pointer relative transition-all hover:border-brand hover:shadow-md bg-white\">\n                            <div class=\"absolute -top-2 sm:-top-2.5 left-1\/2 -translate-x-1\/2 bg-green-500 text-white text-[6px] sm:text-[9px] font-bold px-1 sm:px-2 py-0.5 rounded-full uppercase whitespace-nowrap shadow-sm\">\n                                Save 10%\n                            <\/div>\n                            <div class=\"flex flex-col items-center text-center gap-1 sm:gap-1.5 mt-1 sm:mt-0\">\n                                <img decoding=\"async\" src=\"https:\/\/placehold.co\/40x60\/transparent\/b142f5?text=2\" alt=\"2 Vials\" class=\"h-5 sm:h-8 object-contain\">\n                                <div>\n                                    <p class=\"font-extrabold text-[8px] sm:text-xs text-gray-900 leading-tight\">2 VIALS<\/p>\n                                    <p class=\"text-[7px] sm:text-[9px] text-green-600 font-bold leading-none mt-0.5\">10% off<\/p>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                        <div id=\"bundle-3\" onclick=\"selectBundle(3)\" class=\"bundle-card border border-purple-200 rounded-md sm:rounded-xl p-1 sm:p-2.5 cursor-pointer relative transition-all hover:border-brand hover:shadow-md bg-white\">\n                            <div class=\"absolute -top-2 sm:-top-2.5 left-1\/2 -translate-x-1\/2 bg-brand text-white text-[6px] sm:text-[9px] font-bold px-1 sm:px-2 py-0.5 rounded-full uppercase whitespace-nowrap shadow-sm\">\n                                Best Value\n                            <\/div>\n                            <div class=\"flex flex-col items-center text-center gap-1 sm:gap-1.5 mt-1 sm:mt-0\">\n                                <img decoding=\"async\" src=\"https:\/\/placehold.co\/50x60\/transparent\/b142f5?text=3%2B\" alt=\"3+ Vials\" class=\"h-5 sm:h-8 object-contain\">\n                                <div>\n                                    <p class=\"font-extrabold text-[8px] sm:text-xs text-gray-900 leading-tight\">3+ VIALS<\/p>\n                                    <p class=\"text-[7px] sm:text-[9px] text-brand font-bold leading-none mt-0.5\">15% off<\/p>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                    <\/div>\n                <\/div>\n\n                <!-- Add to Cart -->\n                <div class=\"flex gap-2 sm:gap-3 mt-1 sm:mt-1\">\n                    <button onclick=\"document.getElementById('tab-tests').click(); document.getElementById('overview-tab').scrollIntoView({behavior:'smooth'});\" class=\"border border-purple-200 text-brand hover:bg-brand-light font-bold px-4 py-2 sm:py-2.5 rounded-full transition-colors shadow-sm hidden sm:block text-xs sm:text-sm\">\n                        Tests\n                    <\/button>\n                    <button id=\"add-to-cart-btn\" onclick=\"addToCart()\" class=\"flex-1 bg-brand hover:bg-brand-hover text-white font-bold py-2.5 sm:py-2.5 rounded-full shadow-lg transition-transform active:scale-[0.98] flex items-center justify-center gap-1 sm:gap-1.5 text-[11px] sm:text-base disabled:opacity-50 disabled:cursor-not-allowed\">\n                        <span id=\"btn-text\">Add to cart &#8211; <span id=\"btn-total-price\">2 032<\/span> K\u010d<\/span>\n                    <\/button>\n                <\/div>\n\n                <!-- Badges -->\n                <div class=\"flex flex-col sm:grid sm:grid-cols-3 gap-1 sm:gap-3 border border-purple-200 rounded-lg sm:rounded-xl p-2 sm:p-3 bg-white shadow-sm text-[8px] sm:text-[10px] lg:text-xs font-semibold text-gray-700\">\n                    <div class=\"flex items-center gap-1 sm:gap-1.5 justify-start\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/Zasilkovna_Claim.png\" alt=\"Z\u00e1silkovna\" class=\"h-3 sm:h-4 object-contain flex-shrink-0\">\n                        <span>Z-Box \/ Adress<\/span>\n                    <\/div>\n                    <div class=\"flex items-center gap-1 sm:gap-1.5\">\n                        <svg class=\"w-3 h-3 sm:w-4 sm:h-4 text-gray-500 flex-shrink-0\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M16 11V7a4 4 0 00-8 0v4M5 9h14l1 12H4L5 9z\"><\/path><\/svg>\n                        <span>Discreet packaging<\/span>\n                    <\/div>\n                    <div class=\"flex items-center gap-1 sm:gap-1.5\">\n                        <svg class=\"w-3 h-3 sm:w-4 sm:h-4 text-brand flex-shrink-0\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4\"><\/path><\/svg>\n                        <span>Free shipping > 3000CZK<\/span>\n                    <\/div>\n                <\/div>\n\n                <!-- Frequently Bought Together (PC Only) -->\n                <div class=\"border border-purple-200 rounded-lg sm:rounded-xl p-2 sm:p-3 bg-brand-light\/30 shadow-inner mt-0.5 sm:mt-1 hidden sm:block\">\n                    <span class=\"text-[9px] sm:text-[10px] font-bold text-brand uppercase block mb-1.5 sm:mb-2\">Frequently Bought Together<\/span>\n                    <div class=\"flex items-center gap-2 sm:gap-3 bg-white p-1.5 sm:p-2.5 rounded-md sm:rounded-lg border border-purple-100 shadow-sm transition-all hover:border-brand-light hover:shadow-md\">\n                        <div class=\"h-8 w-8 sm:h-12 sm:w-12 bg-brand-light rounded-md flex items-center justify-center flex-shrink-0 border border-purple-100 overflow-hidden p-0.5 sm:p-1\">\n                            <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/08\/bacteriostatic-scaled.png\" alt=\"Bacteriostatic Water\" class=\"max-h-full object-contain mix-blend-multiply\">\n                        <\/div>\n                        <div class=\"flex-1\">\n                            <p class=\"font-bold text-[9px] sm:text-xs text-gray-900 leading-tight\">Bacteriostatic Water (3ml)<\/p>\n                            <p class=\"text-[8px] sm:text-[10px] text-gray-500 mt-0.5 hidden sm:block\">Essential for reconstitution<\/p>\n                            <p class=\"text-brand font-bold text-[9px] sm:text-xs mt-0.5\">+ 99 K\u010d<\/p>\n                        <\/div>\n                        <div class=\"flex-shrink-0 flex items-center gap-2 pl-1\">\n                            <span class=\"text-[11px] font-bold text-gray-700 uppercase tracking-wide\">Add<\/span>\n                            <label class=\"relative inline-flex items-center cursor-pointer\">\n                                <input type=\"checkbox\" class=\"sr-only peer bac-checkbox\" onchange=\"toggleSuggestedProduct(event)\">\n                                <div class=\"w-9 h-5 bg-gray-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-4 after:w-4 after:transition-all peer-checked:bg-brand shadow-inner\"><\/div>\n                            <\/label>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Payment Methods -->\n                <div class=\"flex items-center justify-between px-1 transition-all duration-300\">\n                    <span class=\"text-[7px] sm:text-[9px] uppercase font-bold text-gray-400\">We accept<\/span>\n                    <div class=\"flex gap-2 sm:gap-3 items-center\">\n                        <span class=\"font-bold text-green-600 text-[9px] sm:text-xs flex items-center gap-0.5 sm:gap-1\">\n                            <svg class=\"w-2.5 h-2.5 sm:w-3.5 sm:h-3.5\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z\"><\/path><\/svg>\n                            Hotovost\n                        <\/span>\n                        <span class=\"font-bold italic text-blue-900 text-[10px] sm:text-sm\">VISA<\/span>\n                        <span class=\"font-bold text-red-500 text-[10px] sm:text-sm relative flex items-center\">\n                            <span class=\"absolute -left-2 rounded-full w-2.5 h-2.5 sm:w-3.5 sm:h-3.5 bg-red-500 opacity-80 mix-blend-multiply\"><\/span>\n                            <span class=\"absolute -left-0.5 rounded-full w-2.5 h-2.5 sm:w-3.5 sm:h-3.5 bg-yellow-500 opacity-80 mix-blend-multiply\"><\/span>\n                            <span class=\"ml-2.5 sm:ml-3 text-[9px] sm:text-xs font-bold text-transparent\">MC<\/span>\n                        <\/span>\n                        <span class=\"font-bold text-black text-[9px] sm:text-xs flex items-center gap-0.5 sm:gap-1\"><svg class=\"w-2.5 h-2.5 sm:w-3.5 sm:h-3.5\" viewBox=\"0 0 384 512\" fill=\"currentColor\"><path d=\"M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.3 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.3zM344 38.6c-27.1 27.6-67.4 29.8-67.4 29.8-1.5-27.4 12.5-61.5 31.8-82 25.4-26.5 64-28.7 64-28.7-2.1 27-14 62-28.4 80.9z\"\/><\/svg> Pay<\/span>\n                    <\/div>\n                <\/div>\n\n            <\/div>\n        <\/div>\n\n        <!-- EXPANDABLE TABS SECTION -->\n        <div class=\"mt-8 sm:mt-12 border border-purple-200 rounded-2xl bg-white shadow-sm overflow-hidden\" id=\"overview-tab\">\n            <div class=\"flex border-b border-purple-100 overflow-x-auto hide-scrollbar\">\n                <button id=\"tab-tests\" onclick=\"switchTab('tests')\" class=\"tab-btn flex-1 min-w-[100px] py-3 px-4 text-xs sm:text-sm font-bold text-center border-b-2 border-brand text-brand transition-colors\">Tests<\/button>\n                <button id=\"tab-overview\" onclick=\"switchTab('overview')\" class=\"tab-btn flex-1 min-w-[100px] py-3 px-4 text-xs sm:text-sm font-bold text-center border-b-2 border-transparent text-gray-500 hover:text-brand transition-colors\">Overview<\/button>\n                <button id=\"tab-specs\" onclick=\"switchTab('specs')\" class=\"tab-btn flex-1 min-w-[100px] py-3 px-4 text-xs sm:text-sm font-bold text-center border-b-2 border-transparent text-gray-500 hover:text-brand transition-colors\">Specifications<\/button>\n                <button id=\"tab-handling\" onclick=\"switchTab('handling')\" class=\"tab-btn flex-1 min-w-[100px] py-3 px-4 text-xs sm:text-sm font-bold text-center border-b-2 border-transparent text-gray-500 hover:text-brand transition-colors\">Handling<\/button>\n                <button id=\"tab-references\" onclick=\"switchTab('references')\" class=\"tab-btn flex-1 min-w-[100px] py-3 px-4 text-xs sm:text-sm font-bold text-center border-b-2 border-transparent text-gray-500 hover:text-brand transition-colors\">References<\/button>\n            <\/div>\n\n            <div class=\"p-4 sm:p-8\">\n                \n                <!-- Tab Content: Tests -->\n                <div id=\"content-tests\" class=\"tab-content active\">\n                    <div class=\"flex flex-col sm:flex-row sm:items-end justify-between gap-4 mb-6\">\n                        <div>\n                            <span class=\"text-[10px] font-bold tracking-wider text-brand uppercase\">Analytical Documentation<\/span>\n                            <h3 class=\"text-xl sm:text-3xl font-extrabold text-gray-900 mt-1\">Latest test results<\/h3>\n                        <\/div>\n                        <div class=\"flex gap-2\">\n                            <button id=\"test-mass-50mg\" onclick=\"selectMass(50)\" class=\"bg-brand-light text-brand border border-brand px-3 sm:px-4 py-1.5 rounded-lg sm:rounded-xl text-[10px] sm:text-xs font-bold transition-colors\">50mg Vial<\/button>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n                        <!-- Third-Party Analytical Testing -->\n                        <div class=\"bg-white border border-purple-200 rounded-2xl p-5 sm:p-6 shadow-sm flex flex-col justify-between\">\n                            <div>\n                                <div class=\"flex items-center justify-between mb-3\">\n                                    <span class=\"bg-green-100 text-green-700 text-[10px] font-bold px-3 py-1 rounded-full uppercase tracking-wider flex items-center gap-1\">\n                                        <span class=\"w-1.5 h-1.5 rounded-full bg-green-500\"><\/span> Verified Batch\n                                    <\/span>\n                                    <span class=\"text-gray-400 text-xs font-medium\">HPLC \/ FTIR<\/span>\n                                <\/div>\n                                <h4 class=\"text-base sm:text-lg font-extrabold text-gray-900 mb-1\">Third-Party Lab Results<\/h4>\n                                <p class=\"text-xs text-gray-600 mb-4 leading-relaxed\">\n                                    Every batch is independently tested by accredited analytical laboratories to certify identity, sequence, and purity standards (>98%).\n                                <\/p>\n                            <\/div>\n                            \n                            <div class=\"flex flex-col sm:flex-row gap-2 pt-2 border-t border-purple-50\">\n                                <a href=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/mjuqrj5-1.pdf\" target=\"_blank\" class=\"flex-1 inline-flex items-center justify-center gap-2 bg-brand hover:bg-brand-hover text-white text-xs font-bold py-2.5 px-4 rounded-xl transition-all shadow-sm\">\n                                    <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z\"><\/path><\/svg>\n                                    Lab Report (PDF)\n                                <\/a>\n                                <button class=\"flex-1 inline-flex items-center justify-center gap-2 bg-brand-light hover:bg-brand text-brand hover:text-white border border-brand text-xs font-bold py-2.5 px-4 rounded-xl transition-all\">\n                                    <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"><\/path><\/svg>\n                                    View Certificate\n                                <\/button>\n                            <\/div>\n                        <\/div>\n\n                        <!-- Safety Data Sheet (SDS) -->\n                        <div class=\"bg-white border border-purple-200 rounded-2xl p-5 sm:p-6 shadow-sm flex flex-col justify-between\">\n                            <div>\n                                <div class=\"flex items-center justify-between mb-3\">\n                                    <span class=\"bg-purple-100 text-brand text-[10px] font-bold px-3 py-1 rounded-full uppercase tracking-wider\">\n                                        Safety Compliance\n                                    <\/span>\n                                    <span class=\"text-gray-400 text-xs font-medium\">GHS \/ REACH<\/span>\n                                <\/div>\n                                <h4 class=\"text-base sm:text-lg font-extrabold text-gray-900 mb-1\">Safety Data Sheet (SDS)<\/h4>\n                                <p class=\"text-xs text-gray-600 mb-4 leading-relaxed\">\n                                    Complete hazard analysis, physical-chemical properties, handling guidelines, and laboratory toxicological profile.\n                                <\/p>\n                            <\/div>\n                            \n                            <div class=\"pt-2 border-t border-purple-50\">\n                                <a href=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/GHK-Cu_SDS-1.pdf\" target=\"_blank\" class=\"w-full inline-flex items-center justify-center gap-2 bg-brand-light hover:bg-brand text-brand hover:text-white border border-brand text-xs font-bold py-2.5 px-4 rounded-xl transition-all shadow-sm\">\n                                    <svg class=\"w-4 h-4\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\"><\/path><\/svg>\n                                    Open Safety Data Sheet (SDS)\n                                <\/a>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Tab Content: Overview -->\n                <div id=\"content-overview\" class=\"tab-content text-gray-700 leading-relaxed text-[11px] sm:text-sm space-y-3\">\n                    <h4 class=\"font-bold text-gray-900 text-sm\">Research overview: GHK-CU<\/h4>\n                    <p>GHK-Cu combines a defined three-amino-acid peptide with copper. Its complex form, copper binding, and analytical identity matter when studies are compared.<\/p>\n                    <p>Studies cover matrix-related cell work, microbial tests, nervous-system models, and gene activity. They provide research context, not a promised result for this material.<\/p>\n                    <h4 class=\"font-bold text-gray-900 text-sm mt-4\">Copper binding and matrix models<\/h4>\n                    <p>Studies measure copper binding, fibroblast activity, collagen markers, and extracellular-matrix signals. These topics support controlled chemistry and cell-culture work.<\/p>\n                    <p>Gene-expression studies must be read with their exact tissue, timepoint, and test method.<\/p>\n                    <h4 class=\"font-bold text-gray-900 text-sm mt-4\">Microbial and neural research<\/h4>\n                    <p>Other studies use microbial tests and nervous-system models. These model types should be read separately instead of combined into one broad claim.<\/p>\n                <\/div>\n                \n                <!-- Tab Content: Specifications -->\n                <div id=\"content-specs\" class=\"tab-content text-gray-700 leading-relaxed\">\n                    <h3 class=\"text-base sm:text-lg font-extrabold text-brand mb-4 border-b border-purple-100 pb-2\">Specifications<\/h3>\n                    <div class=\"space-y-4\">\n                        <div>\n                            <h4 class=\"font-bold text-gray-900 uppercase text-[10px] sm:text-xs tracking-wider mb-1\">Molecular profile Sequence<\/h4>\n                            <p class=\"bg-brand-light p-2.5 sm:p-3 rounded-lg font-mono text-[10px] sm:text-xs break-all border border-purple-100\">\n                                Gly-His-Lys\n                            <\/p>\n                        <\/div>\n                        \n                        <div class=\"grid grid-cols-1 md:grid-cols-3 gap-4\">\n                            <div>\n                                <h4 class=\"font-bold text-gray-900 uppercase text-[10px] sm:text-xs tracking-wider mb-1\">Molecular mass<\/h4>\n                                <ul class=\"list-disc list-inside text-[11px] sm:text-xs pl-1\">\n                                    <li>401.91 g\/mol<\/li>\n                                <\/ul>\n                            <\/div>\n                            <div>\n                                <h4 class=\"font-bold text-gray-900 uppercase text-[10px] sm:text-xs tracking-wider mb-1\">CAS number<\/h4>\n                                <ul class=\"list-disc list-inside text-[11px] sm:text-xs pl-1\">\n                                    <li>89030-95-5<\/li>\n                                <\/ul>\n                            <\/div>\n                            <div>\n                                <h4 class=\"font-bold text-gray-900 uppercase text-[10px] sm:text-xs tracking-wider mb-1\">Molecular formula<\/h4>\n                                <ul class=\"list-disc list-inside text-[11px] sm:text-xs pl-1 break-all\">\n                                    <li>C14H22CuN6O4<\/li>\n                                <\/ul>\n                            <\/div>\n                        <\/div>\n\n                        <div class=\"pt-3 border-t border-purple-100\">\n                            <h4 class=\"font-extrabold text-gray-900 text-sm mb-3\">Material record<\/h4>\n                            <div class=\"grid grid-cols-1 sm:grid-cols-2 gap-3\">\n                                <div class=\"bg-brand-light border border-purple-100 p-3 rounded-lg\">\n                                    <h5 class=\"font-bold text-brand text-xs mb-0.5\">Physical appearance<\/h5>\n                                    <p class=\"text-[11px] sm:text-xs\">Blue to blue-green lyophilized powder<br><strong class=\"mt-1 block\">Salt form:<\/strong> 1:1 GHK\u2013Cu(II) complex<\/p>\n                                <\/div>\n                                <div class=\"bg-brand-light border border-purple-100 p-3 rounded-lg\">\n                                    <h5 class=\"font-bold text-brand text-xs mb-0.5\">Solubility<\/h5>\n                                    <p class=\"text-[11px] sm:text-xs\">Soluble in bacteriostatic water and suitable aqueous laboratory solvents.<\/p>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                        <div class=\"bg-brand-light\/50 border-l-4 border-brand p-3 mt-3\">\n                            <p class=\"text-[11px] sm:text-xs font-medium text-gray-700\"><strong>Product note:<\/strong> Copper-binding tripeptide complex; supplied strictly for research use only.<\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Tab Content: Handling -->\n                <div id=\"content-handling\" class=\"tab-content\">\n                    <div class=\"space-y-6 text-xs sm:text-sm text-gray-700\">\n                        <div>\n                            <h3 class=\"font-extrabold text-brand mb-2 text-sm sm:text-base\">Peptides in transport<\/h3>\n                            <p class=\"leading-relaxed\">Peptides in lyophilized form are supplied in glass vials by standard shipping methods and do not require refrigeration. Short-term temperature fluctuations during transport will not reduce their quality and efficacy. Even at high summer temperatures, the peptides in lyophilized form are stable for several weeks.<\/p>\n                        <\/div>\n                        <div>\n                            <h3 class=\"font-extrabold text-brand mb-2 text-sm sm:text-base\">Storage of lyophilized peptides<\/h3>\n                            <p class=\"leading-relaxed mb-2\">Lyophilized peptides should be stored in a dry place, protected from light and moisture. The following storage conditions are generally recommended:<\/p>\n                            <ul class=\"list-disc list-inside space-y-1 ml-2\">\n                                <li><strong>Room temperature (15\u201325 \u00b0C):<\/strong> Up to 3 months<\/li>\n                                <li><strong>Refrigerated (2\u20138 \u00b0C):<\/strong> Up to 6 months<\/li>\n                                <li><strong>Frozen (-20 \u00b0C or below):<\/strong> 3\u20135 years (recommended for long-term storage)<\/li>\n                            <\/ul>\n                            <p class=\"mt-2 text-gray-500 italic text-[11px] sm:text-xs\">Allow the vial to reach room temperature after taking it out of the refrigerator or freezer.<\/p>\n                        <\/div>\n                        <div>\n                            <h3 class=\"font-extrabold text-brand mb-2 text-sm sm:text-base\">Storage of reconstituted peptides<\/h3>\n                            <p class=\"leading-relaxed mb-2\">Once reconstituted, peptide solutions are generally less stable than their lyophilized form and should be stored under refrigerated conditions whenever possible. The following storage conditions are generally recommended:<\/p>\n                            <ul class=\"list-disc list-inside space-y-1 ml-2\">\n                                <li><strong>Room temperature (15\u201325 \u00b0C):<\/strong> Avoid prolonged storage<\/li>\n                                <li><strong>Refrigerated (2\u20138 \u00b0C):<\/strong> Typically 4\u20138 weeks<\/li>\n                                <li><strong>Frozen (-20 \u00b0C or below):<\/strong> Up to 3\u20134 months<\/li>\n                            <\/ul>\n                            <p class=\"mt-2 text-gray-500 italic text-[11px] sm:text-xs\">To preserve peptide integrity, avoid repeated freeze\u2013thaw cycles, as these may accelerate peptide degradation.<\/p>\n                        <\/div>\n                        <div class=\"bg-brand-light\/50 border-l-4 border-brand p-4 rounded-r-lg mt-4\">\n                            <h4 class=\"font-bold text-gray-900 mb-1\">Important:<\/h4>\n                            <p class=\"text-[11px] sm:text-xs leading-relaxed text-gray-700\">Most manufacturers recommend discarding reconstituted peptides within 4 weeks when stored at 2\u20138 \u00b0C. This recommendation is intentionally conservative and may not reflect the actual chemical stability of every peptide. In our own stability studies, many peptides reconstituted in bacteriostatic water showed no detectable degradation after 12 weeks of refrigerated storage. As peptide stability is highly sequence- and formulation-dependent, this result should not be extrapolated to all peptides without supporting stability data.<\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Tab Content: References -->\n                <div id=\"content-references\" class=\"tab-content text-gray-700 text-xs sm:text-sm\"><p class=\"text-center py-6 italic text-gray-400\">Scientific references and citations will be displayed here.<\/p><\/div>\n            <\/div>\n        <\/div>\n        \n        <!-- LOGO SLIDESHOW SECTION -->\n        <div class=\"mt-8 sm:mt-12 py-6 sm:py-8 bg-white border border-purple-200 rounded-2xl shadow-sm overflow-hidden relative\">\n            <p class=\"text-center text-gray-900 font-bold mb-4 sm:mb-6 text-xs sm:text-base\">Each new formulation begins with data from reliable scientific sources:<\/p>\n            \n            <div class=\"w-full overflow-hidden\">\n                <div class=\"logo-slider gap-4 sm:gap-10 items-center px-4\">\n                    <!-- SET 1 -->\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/pubchem.png\" alt=\"PubChem\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/chemickelisty.png\" alt=\"Chemicke Listy\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/logo-4.webp\" alt=\"Logo 4\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/04\/janoshik-1.png\" alt=\"Janoshik\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/04\/liquilabs-scaled.png\" alt=\"LiquiLabs\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/2020-06-01_14-33-25.jpeg\" alt=\"Science Resource\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <!-- SET 2 -->\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/pubchem.png\" alt=\"PubChem\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/chemickelisty.png\" alt=\"Chemicke Listy\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/logo-4.webp\" alt=\"Logo 4\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/04\/janoshik-1.png\" alt=\"Janoshik\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/04\/liquilabs-scaled.png\" alt=\"LiquiLabs\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                    <div class=\"bg-white border border-purple-100 p-2 sm:p-3 rounded-lg shadow-sm min-w-[100px] sm:min-w-[140px] h-12 sm:h-16 flex items-center justify-center\">\n                        <img decoding=\"async\" src=\"https:\/\/czechpeptide.com\/wp-content\/uploads\/2026\/09\/2020-06-01_14-33-25.jpeg\" alt=\"Science Resource\" class=\"max-h-full max-w-full object-contain\">\n                    <\/div>\n                <\/div>\n            <\/div>\n            \n            <div class=\"absolute top-0 bottom-0 left-0 w-8 sm:w-24 bg-gradient-to-r from-white to-transparent z-10 pointer-events-none\"><\/div>\n            <div class=\"absolute top-0 bottom-0 right-0 w-8 sm:w-24 bg-gradient-to-l from-white to-transparent z-10 pointer-events-none\"><\/div>\n        <\/div>\n    <\/main>\n\n    <!-- Fullscreen Image Zoom Modal -->\n    <div id=\"image-zoom-modal\" class=\"fixed inset-0 z-[100] hidden bg-black\/90 backdrop-blur-sm flex items-center justify-center p-4 transition-opacity\" onclick=\"closeImageModal()\">\n        <button onclick=\"closeImageModal()\" class=\"absolute top-4 right-4 text-white hover:text-brand bg-black\/50 rounded-full p-2 z-50\">\n            <svg class=\"w-6 h-6\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 18L18 6M6 6l12 12\"><\/path><\/svg>\n        <\/button>\n        <img decoding=\"async\" id=\"zoomed-image\" src=\"\" class=\"max-w-full max-h-full object-contain transform scale-95 transition-transform duration-300\" alt=\"Zoomed Product\">\n    <\/div>\n\n    <!-- Cart Modal -->\n    <div id=\"cart-modal\" class=\"fixed inset-0 z-50 hidden bg-gray-900 bg-opacity-50 backdrop-blur-sm flex items-center justify-center p-4 transition-opacity\">\n        <div class=\"bg-white rounded-2xl border-2 border-brand p-6 max-w-sm w-full shadow-2xl transform scale-95 transition-transform\" id=\"cart-modal-content\">\n            <div class=\"flex items-center justify-center w-12 h-12 bg-green-100 rounded-full mb-4 mx-auto\">\n                <svg class=\"w-6 h-6 text-green-600\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 13l4 4L19 7\"><\/path><\/svg>\n            <\/div>\n            <h2 class=\"text-xl font-extrabold text-center text-gray-900 mb-1\">Added to Cart!<\/h2>\n            <p class=\"text-center text-sm text-gray-500 mb-6\">\n                <span id=\"modal-qty-text\" class=\"font-bold text-brand\">1x<\/span> GHK-Cu added.\n            <\/p>\n            <div class=\"flex flex-col gap-2.5\">\n                <button onclick=\"goToCart()\" class=\"w-full bg-brand hover:bg-brand-hover text-white font-bold py-3 rounded-full shadow-md transition-transform active:scale-95 text-sm\">Go to Cart<\/button>\n                <button onclick=\"closeModal()\" class=\"w-full bg-white border-2 border-brand text-brand hover:bg-brand-light font-bold py-2.5 rounded-full transition-colors text-sm\">Continue Shopping<\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n\n   <!-- Script -->\n    <script>\n        let currentQuantity = 1;\n        let basePrice = 2032; \/\/ fallback only, used if the live price lookup below fails\n        let currentMass = 50; \n        const suggestedProductPrice = 99; \n        let mainProductId = 404; \n        const bacWaterId = 542;\n\n        \/\/ Cached Store API session info, used by the add-to-cart flow.\n        let cartNonce = null;\n\n        const qtyInput = document.getElementById('qty-input');\n        const priceDisplay = document.getElementById('btn-total-price');\n        \n        const bacCheckboxes = document.querySelectorAll('.bac-checkbox');\n        \n        const bundleCards = [\n            document.getElementById('bundle-1'),\n            document.getElementById('bundle-2'),\n            document.getElementById('bundle-3')\n        ];\n\n        \/\/ IMAGE ZOOM LOGIC\n        const imageZoomModal = document.getElementById('image-zoom-modal');\n        const zoomedImage = document.getElementById('zoomed-image');\n\n        function openImageModal(src) {\n            zoomedImage.src = src;\n            imageZoomModal.classList.remove('hidden');\n            setTimeout(() => {\n                zoomedImage.classList.remove('scale-95');\n                zoomedImage.classList.add('scale-100');\n            }, 10);\n            document.body.style.overflow = 'hidden'; \n        }\n\n        function closeImageModal() {\n            zoomedImage.classList.remove('scale-100');\n            zoomedImage.classList.add('scale-95');\n            setTimeout(() => {\n                imageZoomModal.classList.add('hidden');\n                document.body.style.overflow = ''; \n            }, 150); \n        }\n\n        \/*\n         * PRICE LOOKUP\n         * This calls the WooCommerce Store API, which is built into WooCommerce (>= 8.6)\n         * or provided by the WooCommerce Blocks plugin on older versions.\n         * IMPORTANT ASSUMPTION: this file is embedded ON czechpeptide.com itself (same\n         * origin as the shop). I switched the URL to a relative path (\"\/wp-json\/...\")\n         * on purpose: a relative path only works same-origin, and it avoids CORS\n         * problems entirely. If this page is ever hosted somewhere else (a different\n         * domain, or previewed inside an unrelated sandbox), this fetch will fail and\n         * silently fall back to the hardcoded price below \u2014 open the browser console\n         * to see the real error if that happens.\n         *\/\n        async function fetchProductData() {\n            try {\n                const response = await fetch('\/wp-json\/wc\/store\/v1\/products\/' + mainProductId, {\n                    headers: { 'Accept': 'application\/json' }\n                });\n\n                if (!response.ok) {\n                    throw new Error('Store API returned HTTP ' + response.status + ' for product ' + mainProductId);\n                }\n\n                const data = await response.json();\n\n                if (data && data.prices && data.prices.price) {\n                    const minorUnit = data.prices.currency_minor_unit ?? 2;\n                    const fetchedPrice = parseInt(data.prices.price, 10) \/ Math.pow(10, minorUnit);\n                    if (Number.isFinite(fetchedPrice) && fetchedPrice > 0) {\n                        basePrice = fetchedPrice;\n                    }\n                } else {\n                    console.warn('Store API response for product', mainProductId, 'had no usable price field:', data);\n                }\n\n                \/\/ Stock Logic\n                const stockDot = document.getElementById('stock-dot');\n                const stockStatus = document.getElementById('stock-status');\n                const addToCartBtn = document.getElementById('add-to-cart-btn');\n\n                if (data.is_in_stock === false) {\n                    stockStatus.innerText = \"Out of stock\";\n                    stockStatus.className = \"text-[10px] sm:text-xs font-bold text-red-600\";\n                    stockDot.className = \"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-red-500\";\n                    addToCartBtn.disabled = true;\n                } else {\n                    if (data.add_to_cart && data.add_to_cart.maximum > 0 && data.add_to_cart.maximum <= 10) {\n                        stockStatus.innerText = \"Low in stock\";\n                        stockStatus.className = \"text-[10px] sm:text-xs font-bold text-yellow-600\";\n                        stockDot.className = \"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-yellow-500\";\n                    } else {\n                        stockStatus.innerText = \"In stock\";\n                        stockStatus.className = \"text-[10px] sm:text-xs font-bold text-green-600\";\n                        stockDot.className = \"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-green-500\";\n                    }\n                    addToCartBtn.disabled = false;\n                }\n\n                calculateAndUpdateUI();\n            } catch (error) {\n                \/\/ Logged clearly on purpose: a silent catch here previously made it look\n                \/\/ like the \"real\" WooCommerce price was loading when it was actually\n                \/\/ always the hardcoded fallback. Check this in DevTools > Console.\n                console.error('Could not fetch live product data for product ' + mainProductId + ', using fallback price. Reason:', error);\n                if (mainProductId === 904) basePrice = 3500; \n                else basePrice = 2032;\n                calculateAndUpdateUI();\n            }\n        }\n\n        async function selectMass(mass) {\n            if (currentMass === mass) return; \n            \n            currentMass = mass;\n            const btn5 = document.getElementById('mass-50mg');\n            const btn10 = document.getElementById('mass-10mg');\n            \n            const testBtn5 = document.getElementById('test-mass-50mg');\n            const testBtn10 = document.getElementById('test-mass-10mg');\n            \n            if (mass === 50) {\n                mainProductId = 404;\n                btn5.className = \"bg-brand text-white px-3 sm:px-3 py-1.5 sm:py-1.5 rounded-full text-[10px] sm:text-xs font-bold shadow-sm transition-transform active:scale-95\";\n                btn10.className = \"bg-white border border-purple-200 text-brand hover:bg-brand-light px-3 sm:px-3 py-1.5 sm:py-1.5 rounded-full text-[10px] sm:text-xs font-bold shadow-sm transition-all active:scale-95\";\n                \n                if (testBtn5 && testBtn10) {\n                    testBtn5.className = \"bg-brand-light text-brand border border-brand px-3 sm:px-4 py-1.5 rounded-lg sm:rounded-xl text-[10px] sm:text-xs font-bold transition-colors\";\n                    testBtn10.className = \"bg-white border border-purple-200 text-gray-600 px-3 sm:px-4 py-1.5 rounded-lg sm:rounded-xl text-[10px] sm:text-xs font-bold transition-colors\";\n                }\n            } else {\n                mainProductId = 904;\n                btn10.className = \"bg-brand text-white px-3 sm:px-3 py-1.5 sm:py-1.5 rounded-full text-[10px] sm:text-xs font-bold shadow-sm transition-transform active:scale-95\";\n                btn5.className = \"bg-white border border-purple-200 text-brand hover:bg-brand-light px-3 sm:px-3 py-1.5 sm:py-1.5 rounded-full text-[10px] sm:text-xs font-bold shadow-sm transition-all active:scale-95\";\n                \n                if (testBtn5 && testBtn10) {\n                    testBtn10.className = \"bg-brand-light text-brand border border-brand px-3 sm:px-4 py-1.5 rounded-lg sm:rounded-xl text-[10px] sm:text-xs font-bold transition-colors\";\n                    testBtn5.className = \"bg-white border border-purple-200 text-gray-600 px-3 sm:px-4 py-1.5 rounded-lg sm:rounded-xl text-[10px] sm:text-xs font-bold transition-colors\";\n                }\n            }\n            \n            await fetchProductData(); \n            calculateAndUpdateUI();\n        }\n\n        function formatPrice(price) {\n            return price.toLocaleString('cs-CZ');\n        }\n\n        function calculateAndUpdateUI() {\n            let discount = 0;\n            if (currentQuantity === 2) discount = 0.10;\n            else if (currentQuantity >= 3) discount = 0.15;\n\n            let total = Math.round((basePrice * currentQuantity) * (1 - discount));\n            \n            if (bacCheckboxes.length > 0 && bacCheckboxes[0].checked) {\n                total += suggestedProductPrice;\n            }\n\n            priceDisplay.innerText = formatPrice(total);\n\n            if(bundleCards[0] && bundleCards[1] && bundleCards[2]) {\n                bundleCards.forEach(card => {\n                    card.classList.remove('border-2', 'border-brand', 'bg-brand-light');\n                    card.classList.add('border', 'border-purple-200', 'bg-white');\n                    const textLabel = card.querySelector('p.font-extrabold');\n                    if (textLabel) {\n                        textLabel.classList.remove('text-brand');\n                        textLabel.classList.add('text-gray-900');\n                    }\n                });\n                let activeIndex = 0;\n                if (currentQuantity === 2) activeIndex = 1;\n                if (currentQuantity >= 3) activeIndex = 2;\n                \n                bundleCards[activeIndex].classList.remove('border', 'border-purple-200', 'bg-white');\n                bundleCards[activeIndex].classList.add('border-2', 'border-brand', 'bg-brand-light');\n                const activeText = bundleCards[activeIndex].querySelector('p.font-extrabold');\n                if (activeText) {\n                    activeText.classList.remove('text-gray-900');\n                    activeText.classList.add('text-brand');\n                }\n            }\n        }\n\n        function handleQtyChange(delta) {\n            let newQty = currentQuantity + delta;\n            if (newQty < 1) newQty = 1; \n            currentQuantity = newQty;\n            qtyInput.value = currentQuantity;\n            calculateAndUpdateUI();\n        }\n\n        function handleQtyInput() {\n            let val = parseInt(qtyInput.value);\n            if (isNaN(val) || val < 1) { val = 1; qtyInput.value = 1; }\n            currentQuantity = val;\n            calculateAndUpdateUI();\n        }\n\n        function toggleSuggestedProduct(event) { \n            const isChecked = event.target.checked;\n            bacCheckboxes.forEach(cb => cb.checked = isChecked);\n            calculateAndUpdateUI(); \n        }\n\n        function selectBundle(vialsThreshold) {\n            if (vialsThreshold === 1) currentQuantity = 1;\n            else if (vialsThreshold === 2) currentQuantity = 2;\n            else if (vialsThreshold === 3) {\n                if (currentQuantity < 3) currentQuantity = 3;\n            }\n            qtyInput.value = currentQuantity;\n            calculateAndUpdateUI();\n        }\n\n        function switchTab(tabId) {\n            document.querySelectorAll('.tab-btn').forEach(btn => {\n                btn.classList.remove('border-brand', 'text-brand');\n                btn.classList.add('border-transparent', 'text-gray-500');\n            });\n            document.querySelectorAll('.tab-content').forEach(content => {\n                content.classList.remove('active');\n            });\n            const activeBtn = document.getElementById(`tab-${tabId}`);\n            const activeContent = document.getElementById(`content-${tabId}`);\n            if(activeBtn && activeContent) {\n                activeBtn.classList.remove('border-transparent', 'text-gray-500');\n                activeBtn.classList.add('border-brand', 'text-brand');\n                activeContent.classList.add('active');\n            }\n        }\n\n        function toggleAccordion(id) {\n            const content = document.getElementById('content-' + id);\n            const icon = document.getElementById('icon-' + id);\n            \n            if (content.classList.contains('hidden')) {\n                content.classList.remove('hidden');\n                icon.style.transform = 'rotate(180deg)';\n            } else {\n                content.classList.add('hidden');\n                icon.style.transform = 'rotate(0deg)';\n            }\n        }\n\n        const modal = document.getElementById('cart-modal');\n        const modalContent = document.getElementById('cart-modal-content');\n\n        \/*\n         * ADD TO CART\n         * The original code POSTed a FormData body to the site's homepage with\n         * mode: 'no-cors'. Two things made that unreliable:\n         *  1. In 'no-cors' mode the browser gives you an opaque response, so the\n         *     code could never actually tell whether WooCommerce accepted the\n         *     item \u2014 it always showed \"Added to Cart!\" even on failure.\n         *  2. Posting to \"\/\" isn't a documented WooCommerce cart entry point, so\n         *     behavior there depends on the theme\/page builder and isn't guaranteed.\n         *\n         * This version uses WooCommerce's own Store API (the same API the block-based\n         * Cart\/Checkout blocks use), which is designed for exactly this and lets us\n         * read a real success\/failure response:\n         *   GET  \/wp-json\/wc\/store\/v1\/cart         -> gives a Nonce + (for guests) a Cart-Token\n         *   POST \/wp-json\/wc\/store\/v1\/cart\/add-item -> adds {id, quantity}\n         *\n         * ASSUMPTION I'm making: this file is served from czechpeptide.com itself, so\n         * these relative URLs are same-origin and the visitor's cart cookie\/session is\n         * sent automatically. If this ever runs on a different domain than the shop,\n         * this will fail (cross-site requests can't share the cart session), and you'd\n         * need the shop to explicitly enable CORS with credentials for your origin.\n         *\n         * As a safety net, if the Store API call fails for any reason, this falls back\n         * to WooCommerce's classic add-to-cart link\n         * (\"\/?add-to-cart=ID&quantity=N\"), which has worked on essentially every\n         * WooCommerce install for years, so the customer can still complete the action\n         * instead of hitting a dead end.\n         *\/\n        async function ensureCartSession(forceRefresh) {\n            if (cartNonce && !forceRefresh) return;\n            const res = await fetch('\/wp-json\/wc\/store\/v1\/cart', {\n                method: 'GET',\n                credentials: 'same-origin',\n                headers: { 'Accept': 'application\/json' }\n            });\n            if (!res.ok) {\n                throw new Error('Could not start a cart session (HTTP ' + res.status + ')');\n            }\n            cartNonce = res.headers.get('Nonce') || res.headers.get('X-WC-Store-API-Nonce');\n            if (!cartNonce) {\n                \/\/ Some proxies\/CDNs strip custom response headers. If that happens the\n                \/\/ Store API add-item call below will 403 and we fall back automatically.\n                console.warn('No Store API nonce header received \u2014 add-to-cart may fail and fall back to the classic method.');\n            }\n        }\n\n        async function storeApiAddItem(id, quantity) {\n            await ensureCartSession(false);\n\n            const buildHeaders = () => {\n                const headers = {\n                    'Content-Type': 'application\/json',\n                    'Accept': 'application\/json'\n                };\n                if (cartNonce) {\n                    headers['Nonce'] = cartNonce;\n                    headers['X-WC-Store-API-Nonce'] = cartNonce;\n                }\n                return headers;\n            };\n\n            let res = await fetch('\/wp-json\/wc\/store\/v1\/cart\/add-item', {\n                method: 'POST',\n                credentials: 'same-origin',\n                headers: buildHeaders(),\n                body: JSON.stringify({ id, quantity })\n            });\n\n            \/\/ A stale\/expired nonce is a common transient failure - refresh once and retry.\n            if (res.status === 403) {\n                await ensureCartSession(true);\n                res = await fetch('\/wp-json\/wc\/store\/v1\/cart\/add-item', {\n                    method: 'POST',\n                    credentials: 'same-origin',\n                    headers: buildHeaders(),\n                    body: JSON.stringify({ id, quantity })\n                });\n            }\n\n            if (!res.ok) {\n                const errBody = await res.json().catch(() => null);\n                throw new Error((errBody && errBody.message) || ('Add to cart failed (HTTP ' + res.status + ')'));\n            }\n\n            return res.json();\n        }\n\n        function classicAddToCartFallback(id, quantity) {\n            window.location.href = '\/?add-to-cart=' + encodeURIComponent(id) + '&quantity=' + encodeURIComponent(quantity);\n        }\n\n        async function addToCart() {\n            const btn = document.getElementById('add-to-cart-btn');\n            const btnContent = document.getElementById('btn-text');\n            const originalContent = btnContent.innerHTML;\n            \n            btnContent.innerText = \"Adding...\";\n            btn.disabled = true;\n\n            try {\n                await storeApiAddItem(mainProductId, currentQuantity);\n\n                if (bacCheckboxes.length > 0 && bacCheckboxes[0].checked) {\n                    await storeApiAddItem(bacWaterId, 1);\n                }\n\n                document.getElementById('modal-qty-text').innerText = currentQuantity + 'x';\n                modal.classList.remove('hidden');\n                setTimeout(() => {\n                    modalContent.classList.remove('scale-95');\n                    modalContent.classList.add('scale-100');\n                }, 10);\n\n                btnContent.innerHTML = originalContent;\n                btn.disabled = false;\n\n            } catch (error) {\n                console.error(\"Store API add-to-cart failed, falling back to classic add-to-cart link:\", error);\n                \/\/ This navigates the browser away, so there's no need to restore the\n                \/\/ button state - the page is about to unload.\n                classicAddToCartFallback(mainProductId, currentQuantity);\n            }\n        }\n\n        function closeModal() {\n            modalContent.classList.remove('scale-100');\n            modalContent.classList.add('scale-95');\n            setTimeout(() => { modal.classList.add('hidden'); }, 150); \n        }\n\n        function goToCart() {\n            window.location.href = '\/cart\/';\n        }\n\n        fetchProductData(); \n        calculateAndUpdateUI();\n\n    <\/script>\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>GHK-Cu &#8211; Product Page Peptide appearance Lyophilized form Solution not bundled Bacteriostatic water Frequently Bought Together Bacteriostatic Water (3ml) + [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1022","page","type-page","status-publish","hentry"],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"Wikii","author_link":"https:\/\/czechpeptide.com\/cz\/author\/wikii\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":"GHK-Cu &#8211; Product Page Peptide appearance Lyophilized form Solution not bundled Bacteriostatic water Frequently Bought Together Bacteriostatic Water (3ml) + [&hellip;]","_links":{"self":[{"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/pages\/1022","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/comments?post=1022"}],"version-history":[{"count":10,"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/pages\/1022\/revisions"}],"predecessor-version":[{"id":1094,"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/pages\/1022\/revisions\/1094"}],"wp:attachment":[{"href":"https:\/\/czechpeptide.com\/cz\/wp-json\/wp\/v2\/media?parent=1022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}