{"product_id":"breastfeeding-cover","title":"Multifunctional Breastfeeding Cover","description":"\u003c!-- GentleRoots Multifunctional Breastfeeding Cover --\u003e\n\u003csection class=\"gr-cover-section\" id=\"gentleroots-cover\"\u003e\n  \u003cdiv class=\"gr-background-shape gr-shape-one\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"gr-background-shape gr-shape-two\"\u003e\u003c\/div\u003e\n\n  \u003cdiv class=\"gr-container\"\u003e\n    \u003cdiv class=\"gr-product-grid\"\u003e\n      \n      \u003c!-- PRODUCT IMAGE --\u003e\n      \u003cdiv class=\"gr-image-column gr-reveal\"\u003e\n        \u003cdiv class=\"gr-image-frame\"\u003e\n          \u003cdiv class=\"gr-image-badge\"\u003e\n            Soft • Breathable • Versatile\n          \u003c\/div\u003e\n\n          \u003cimg id=\"grMainImage\" class=\"gr-main-image\" src=\"YOUR-COFFEE-PRODUCT-IMAGE.jpg\" alt=\"GentleRoots multifunctional breastfeeding cover in Coffee\"\u003e\n\n          \u003cdiv class=\"gr-image-glow\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"gr-image-thumbnails\"\u003e\n          \u003cbutton class=\"gr-thumbnail active\" type=\"button\" data-image=\"YOUR-COFFEE-PRODUCT-IMAGE.jpg\" data-alt=\"GentleRoots breastfeeding cover in Coffee\" aria-label=\"View Coffee breastfeeding cover\"\u003e\n            \u003cspan class=\"gr-colour-circle gr-coffee-circle\"\u003e\u003c\/span\u003e\n            Coffee\n          \u003c\/button\u003e\n\n          \u003cbutton class=\"gr-thumbnail\" type=\"button\" data-image=\"YOUR-GREEN-PRODUCT-IMAGE.jpg\" data-alt=\"GentleRoots breastfeeding cover in Green\" aria-label=\"View Green breastfeeding cover\"\u003e\n            \u003cspan class=\"gr-colour-circle gr-green-circle\"\u003e\u003c\/span\u003e\n            Green\n          \u003c\/button\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003c!-- PRODUCT INFORMATION --\u003e\n      \u003cdiv class=\"gr-content-column\"\u003e\n        \u003cdiv class=\"gr-eyebrow gr-reveal\"\u003e\n          GentleRoots Baby Essentials\n        \u003c\/div\u003e\n\n        \u003ch1 class=\"gr-title gr-reveal\"\u003e\n          Multifunctional\n          \u003cspan\u003eBreastfeeding Cover\u003c\/span\u003e\n        \u003c\/h1\u003e\n\n        \u003ch2 class=\"gr-subtitle gr-reveal\"\u003e\n          Nurse with Confidence, Anywhere.\n        \u003c\/h2\u003e\n\n        \u003cp class=\"gr-description gr-reveal\"\u003e\n          The GentleRoots Multifunctional Breastfeeding Cover is crafted from\n          soft, breathable muslin gauze for the modern mum who values comfort,\n          privacy and effortless style.\n        \u003c\/p\u003e\n\n        \u003cp class=\"gr-description gr-reveal\"\u003e\n          Whether you are at a café, relaxing in the park or shopping with your\n          little one, this versatile cover allows you to nurse discreetly and\n          confidently.\n        \u003c\/p\u003e\n\n        \u003cdiv class=\"gr-divider gr-reveal\"\u003e\n          \u003cspan\u003e\u003c\/span\u003e\n          \u003cp\u003eWhy You’ll Love It\u003c\/p\u003e\n          \u003cspan\u003e\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"gr-benefits\"\u003e\n          \u003carticle class=\"gr-benefit-card gr-reveal\"\u003e\n            \u003cdiv class=\"gr-benefit-icon\"\u003e\n              \u003csvg viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\n                \u003cpath d=\"M12 2C8.5 6.2 5 9.7 5 14a7 7 0 0 0 14 0c0-4.3-3.5-7.8-7-12Z\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv\u003e\n              \u003ch3\u003eBreathable Muslin Gauze\u003c\/h3\u003e\n              \u003cp\u003e\n                Lightweight and airy to help keep both mum and baby comfortable\n                throughout every season.\n              \u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/article\u003e\n\n          \u003carticle class=\"gr-benefit-card gr-reveal\"\u003e\n            \u003cdiv class=\"gr-benefit-icon\"\u003e\n              \u003csvg viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\n                \u003cpath d=\"M4 5h16v14H4z\"\u003e\u003c\/path\u003e\n                \u003cpath d=\"M8 2v6M16 2v6M8 16h8\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv\u003e\n              \u003ch3\u003eGenerous Coverage\u003c\/h3\u003e\n              \u003cp\u003e\n                The 90 cm × 70 cm drape provides comfortable coverage and added\n                privacy while nursing.\n              \u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/article\u003e\n\n          \u003carticle class=\"gr-benefit-card gr-reveal\"\u003e\n            \u003cdiv class=\"gr-benefit-icon\"\u003e\n              \u003csvg viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\n                \u003ccircle cx=\"12\" cy=\"12\" r=\"4\"\u003e\u003c\/circle\u003e\n                \u003cpath d=\"M12 2v2M12 20v2M4.93 4.93l1.42 1.42M17.65 17.65l1.42 1.42M2 12h2M20 12h2M4.93 19.07l1.42-1.42M17.65 6.35l1.42-1.42\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv\u003e\n              \u003ch3\u003eStroller Sunshade\u003c\/h3\u003e\n              \u003cp\u003e\n                Easily doubles as a stroller cover to provide light protection\n                from direct sun and wind while you are on the move.\n              \u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/article\u003e\n\n          \u003carticle class=\"gr-benefit-card gr-reveal\"\u003e\n            \u003cdiv class=\"gr-benefit-icon\"\u003e\n              \u003csvg viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\n                \u003cpath d=\"M12 21s-7-4.35-7-10a4 4 0 0 1 7-2.65A4 4 0 0 1 19 11c0 5.65-7 10-7 10Z\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv\u003e\n              \u003ch3\u003eGentle on Baby’s Skin\u003c\/h3\u003e\n              \u003cp\u003e\n                Soft natural-feel fabric designed with delicate newborn skin in\n                mind.\n              \u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/article\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"gr-colour-selector gr-reveal\"\u003e\n          \u003cp class=\"gr-selector-label\"\u003e\n            Select your colour:\n            \u003cstrong id=\"grSelectedColour\"\u003eCoffee\u003c\/strong\u003e\n          \u003c\/p\u003e\n\n          \u003cdiv class=\"gr-colour-buttons\"\u003e\n            \u003cbutton class=\"gr-colour-option active\" type=\"button\" data-colour=\"Coffee\" data-image=\"YOUR-COFFEE-PRODUCT-IMAGE.jpg\" data-alt=\"GentleRoots breastfeeding cover in Coffee\" aria-label=\"Select Coffee\"\u003e\n              \u003cspan class=\"gr-swatch gr-coffee\"\u003e\u003c\/span\u003e\n              Coffee\n            \u003c\/button\u003e\n\n            \u003cbutton class=\"gr-colour-option\" type=\"button\" data-colour=\"Green\" data-image=\"YOUR-GREEN-PRODUCT-IMAGE.jpg\" data-alt=\"GentleRoots breastfeeding cover in Green\" aria-label=\"Select Green\"\u003e\n              \u003cspan class=\"gr-swatch gr-green\"\u003e\u003c\/span\u003e\n              Green\n            \u003c\/button\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"gr-product-details gr-reveal\"\u003e\n          \u003cdiv\u003e\n            \u003cspan\u003eSize\u003c\/span\u003e\n            \u003cstrong\u003e90 cm × 70 cm\u003c\/strong\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv\u003e\n            \u003cspan\u003eMaterial\u003c\/span\u003e\n            \u003cstrong\u003eMuslin Gauze\u003c\/strong\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv\u003e\n            \u003cspan\u003eSuitable For\u003c\/span\u003e\n            \u003cstrong\u003eNewborns \u0026amp; Babies\u003c\/strong\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton class=\"gr-add-to-cart gr-reveal\" type=\"button\"\u003e\n          \u003cspan\u003eAdd to Cart\u003c\/span\u003e\n\n          \u003csvg viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\n            \u003cpath d=\"M5 12h14M13 6l6 6-6 6\"\u003e\u003c\/path\u003e\n          \u003c\/svg\u003e\n        \u003c\/button\u003e\n\n        \u003cdiv class=\"gr-trust-row gr-reveal\"\u003e\n          \u003cdiv\u003e\n            \u003cspan class=\"gr-trust-icon\"\u003e✓\u003c\/span\u003e\n            Soft-touch fabric\n          \u003c\/div\u003e\n\n          \u003cdiv\u003e\n            \u003cspan class=\"gr-trust-icon\"\u003e✓\u003c\/span\u003e\n            Mum-friendly design\n          \u003c\/div\u003e\n\n          \u003cdiv\u003e\n            \u003cspan class=\"gr-trust-icon\"\u003e✓\u003c\/span\u003e\n            Everyday versatility\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"gr-brand-statement gr-reveal\"\u003e\n      \u003cspan\u003e\u003c\/span\u003e\n      \u003cp\u003eRooted in nature, designed for life.\u003c\/p\u003e\n      \u003cspan\u003e\u003c\/span\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003cstyle\u003e\n  :root {\n    --gr-cream: #f8f4ed;\n    --gr-warm-white: #fffdf9;\n    --gr-sand: #dfd1bf;\n    --gr-coffee: #6d5241;\n    --gr-deep-coffee: #36271f;\n    --gr-sage: #79816c;\n    --gr-deep-sage: #4e5746;\n    --gr-text: #302b27;\n    --gr-muted: #746b64;\n    --gr-border: rgba(67, 52, 43, 0.13);\n    --gr-shadow: 0 24px 70px rgba(72, 55, 43, 0.12);\n  }\n\n  * {\n    box-sizing: border-box;\n  }\n\n  .gr-cover-section {\n    position: relative;\n    overflow: hidden;\n    padding: 110px 20px;\n    background:\n      radial-gradient(\n        circle at 8% 15%,\n        rgba(216, 199, 178, 0.38),\n        transparent 30%\n      ),\n      radial-gradient(\n        circle at 90% 80%,\n        rgba(121, 129, 108, 0.17),\n        transparent 30%\n      ),\n      linear-gradient(135deg, #fffdf9 0%, #f7f1e9 48%, #f2eee7 100%);\n    color: var(--gr-text);\n    isolation: isolate;\n  }\n\n  .gr-container {\n    position: relative;\n    z-index: 2;\n    width: min(1180px, 100%);\n    margin: 0 auto;\n  }\n\n  .gr-background-shape {\n    position: absolute;\n    z-index: 0;\n    border-radius: 42% 58% 60% 40% \/ 46% 40% 60% 54%;\n    filter: blur(2px);\n    pointer-events: none;\n    animation: grFloatShape 10s ease-in-out infinite;\n  }\n\n  .gr-shape-one {\n    top: -170px;\n    right: -120px;\n    width: 430px;\n    height: 430px;\n    background: rgba(121, 129, 108, 0.1);\n  }\n\n  .gr-shape-two {\n    bottom: -220px;\n    left: -180px;\n    width: 520px;\n    height: 520px;\n    background: rgba(109, 82, 65, 0.08);\n    animation-delay: -4s;\n  }\n\n  .gr-product-grid {\n    display: grid;\n    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);\n    gap: clamp(45px, 7vw, 100px);\n    align-items: center;\n  }\n\n  .gr-image-column {\n    position: sticky;\n    top: 30px;\n  }\n\n  .gr-image-frame {\n    position: relative;\n    overflow: hidden;\n    aspect-ratio: 4 \/ 5;\n    border: 1px solid rgba(255, 255, 255, 0.75);\n    border-radius: 36px;\n    background: #e9e0d5;\n    box-shadow: var(--gr-shadow);\n    transform: translateZ(0);\n  }\n\n  .gr-image-frame::before {\n    position: absolute;\n    z-index: 2;\n    inset: 0;\n    border: 1px solid rgba(255, 255, 255, 0.45);\n    border-radius: inherit;\n    content: \"\";\n    pointer-events: none;\n  }\n\n  .gr-main-image {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    transition:\n      transform 0.9s cubic-bezier(0.2, 0.75, 0.25, 1),\n      opacity 0.35s ease;\n  }\n\n  .gr-image-frame:hover .gr-main-image {\n    transform: scale(1.045);\n  }\n\n  .gr-main-image.gr-changing {\n    opacity: 0;\n    transform: scale(1.03);\n  }\n\n  .gr-image-badge {\n    position: absolute;\n    z-index: 4;\n    top: 22px;\n    left: 22px;\n    padding: 11px 16px;\n    border: 1px solid rgba(255, 255, 255, 0.65);\n    border-radius: 100px;\n    background: rgba(255, 253, 249, 0.75);\n    box-shadow: 0 10px 25px rgba(54, 39, 31, 0.08);\n    color: var(--gr-deep-coffee);\n    font-family: Arial, sans-serif;\n    font-size: 11px;\n    font-weight: 700;\n    letter-spacing: 0.13em;\n    text-transform: uppercase;\n    backdrop-filter: blur(14px);\n    -webkit-backdrop-filter: blur(14px);\n  }\n\n  .gr-image-glow {\n    position: absolute;\n    right: -15%;\n    bottom: -10%;\n    width: 70%;\n    height: 45%;\n    border-radius: 50%;\n    background: rgba(255, 255, 255, 0.35);\n    filter: blur(45px);\n    pointer-events: none;\n  }\n\n  .gr-image-thumbnails {\n    display: flex;\n    gap: 12px;\n    margin-top: 22px;\n  }\n\n  .gr-thumbnail {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    padding: 11px 17px;\n    border: 1px solid var(--gr-border);\n    border-radius: 100px;\n    background: rgba(255, 253, 249, 0.7);\n    color: var(--gr-muted);\n    font-size: 13px;\n    font-weight: 600;\n    cursor: pointer;\n    transition:\n      border-color 0.3s ease,\n      background 0.3s ease,\n      color 0.3s ease,\n      transform 0.3s ease;\n  }\n\n  .gr-thumbnail:hover {\n    transform: translateY(-2px);\n  }\n\n  .gr-thumbnail.active {\n    border-color: var(--gr-coffee);\n    background: var(--gr-deep-coffee);\n    color: white;\n  }\n\n  .gr-colour-circle {\n    width: 18px;\n    height: 18px;\n    border: 2px solid rgba(255, 255, 255, 0.75);\n    border-radius: 50%;\n    box-shadow: 0 0 0 1px rgba(54, 39, 31, 0.15);\n  }\n\n  .gr-coffee-circle {\n    background: #705343;\n  }\n\n  .gr-green-circle {\n    background: #77816d;\n  }\n\n  .gr-content-column {\n    position: relative;\n  }\n\n  .gr-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    margin-bottom: 18px;\n    color: var(--gr-sage);\n    font-family: Arial, sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n  }\n\n  .gr-eyebrow::before {\n    width: 32px;\n    height: 1px;\n    background: currentColor;\n    content: \"\";\n  }\n\n  .gr-title {\n    max-width: 680px;\n    margin: 0;\n    color: var(--gr-deep-coffee);\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: clamp(42px, 5vw, 72px);\n    font-weight: 400;\n    line-height: 0.98;\n    letter-spacing: -0.045em;\n  }\n\n  .gr-title span {\n    display: block;\n    color: var(--gr-sage);\n    font-style: italic;\n  }\n\n  .gr-subtitle {\n    margin: 30px 0 18px;\n    color: var(--gr-deep-coffee);\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: clamp(22px, 2.3vw, 30px);\n    font-weight: 400;\n    line-height: 1.25;\n  }\n\n  .gr-description {\n    max-width: 640px;\n    margin: 0 0 16px;\n    color: var(--gr-muted);\n    font-family: Arial, sans-serif;\n    font-size: 16px;\n    line-height: 1.8;\n  }\n\n  .gr-divider {\n    display: grid;\n    grid-template-columns: 1fr auto 1fr;\n    gap: 14px;\n    align-items: center;\n    margin: 36px 0 24px;\n  }\n\n  .gr-divider span {\n    height: 1px;\n    background: var(--gr-border);\n  }\n\n  .gr-divider p {\n    margin: 0;\n    color: var(--gr-coffee);\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: 18px;\n    font-style: italic;\n    white-space: nowrap;\n  }\n\n  .gr-benefits {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 14px;\n  }\n\n  .gr-benefit-card {\n    display: flex;\n    gap: 15px;\n    min-height: 172px;\n    padding: 22px;\n    border: 1px solid var(--gr-border);\n    border-radius: 22px;\n    background: rgba(255, 253, 249, 0.62);\n    box-shadow: 0 10px 35px rgba(70, 54, 44, 0.04);\n    backdrop-filter: blur(12px);\n    -webkit-backdrop-filter: blur(12px);\n    transition:\n      transform 0.35s ease,\n      border-color 0.35s ease,\n      box-shadow 0.35s ease,\n      background 0.35s ease;\n  }\n\n  .gr-benefit-card:hover {\n    transform: translateY(-6px);\n    border-color: rgba(109, 82, 65, 0.28);\n    background: rgba(255, 253, 249, 0.92);\n    box-shadow: 0 18px 45px rgba(70, 54, 44, 0.09);\n  }\n\n  .gr-benefit-icon {\n    display: grid;\n    flex: 0 0 auto;\n    width: 42px;\n    height: 42px;\n    place-items: center;\n    border-radius: 50%;\n    background: rgba(121, 129, 108, 0.12);\n    color: var(--gr-sage);\n  }\n\n  .gr-benefit-icon svg {\n    width: 20px;\n    height: 20px;\n    fill: none;\n    stroke: currentColor;\n    stroke-width: 1.6;\n    stroke-linecap: round;\n    stroke-linejoin: round;\n  }\n\n  .gr-benefit-card h3 {\n    margin: 2px 0 8px;\n    color: var(--gr-deep-coffee);\n    font-family: Arial, sans-serif;\n    font-size: 15px;\n    line-height: 1.3;\n  }\n\n  .gr-benefit-card p {\n    margin: 0;\n    color: var(--gr-muted);\n    font-family: Arial, sans-serif;\n    font-size: 13px;\n    line-height: 1.65;\n  }\n\n  .gr-colour-selector {\n    margin-top: 30px;\n  }\n\n  .gr-selector-label {\n    margin: 0 0 13px;\n    color: var(--gr-muted);\n    font-family: Arial, sans-serif;\n    font-size: 14px;\n  }\n\n  .gr-selector-label strong {\n    color: var(--gr-deep-coffee);\n  }\n\n  .gr-colour-buttons {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 12px;\n  }\n\n  .gr-colour-option {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    min-width: 125px;\n    padding: 13px 17px;\n    border: 1px solid var(--gr-border);\n    border-radius: 14px;\n    background: var(--gr-warm-white);\n    color: var(--gr-text);\n    font-family: Arial, sans-serif;\n    font-size: 13px;\n    font-weight: 700;\n    cursor: pointer;\n    transition:\n      transform 0.3s ease,\n      border-color 0.3s ease,\n      box-shadow 0.3s ease;\n  }\n\n  .gr-colour-option:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 9px 22px rgba(54, 39, 31, 0.08);\n  }\n\n  .gr-colour-option.active {\n    border-color: var(--gr-deep-coffee);\n    box-shadow: 0 0 0 2px rgba(54, 39, 31, 0.08);\n  }\n\n  .gr-swatch {\n    width: 22px;\n    height: 22px;\n    border: 3px solid white;\n    border-radius: 50%;\n    box-shadow: 0 0 0 1px rgba(54, 39, 31, 0.18);\n  }\n\n  .gr-coffee {\n    background: #705343;\n  }\n\n  .gr-green {\n    background: #77816d;\n  }\n\n  .gr-product-details {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    margin-top: 28px;\n    overflow: hidden;\n    border: 1px solid var(--gr-border);\n    border-radius: 18px;\n    background: rgba(255, 253, 249, 0.58);\n  }\n\n  .gr-product-details div {\n    padding: 17px 14px;\n    text-align: center;\n  }\n\n  .gr-product-details div + div {\n    border-left: 1px solid var(--gr-border);\n  }\n\n  .gr-product-details span,\n  .gr-product-details strong {\n    display: block;\n    font-family: Arial, sans-serif;\n  }\n\n  .gr-product-details span {\n    margin-bottom: 5px;\n    color: var(--gr-muted);\n    font-size: 10px;\n    letter-spacing: 0.12em;\n    text-transform: uppercase;\n  }\n\n  .gr-product-details strong {\n    color: var(--gr-deep-coffee);\n    font-size: 12px;\n  }\n\n  .gr-add-to-cart {\n    position: relative;\n    display: flex;\n    width: 100%;\n    align-items: center;\n    justify-content: center;\n    gap: 13px;\n    margin-top: 24px;\n    overflow: hidden;\n    padding: 18px 24px;\n    border: 0;\n    border-radius: 16px;\n    background: var(--gr-deep-coffee);\n    box-shadow: 0 18px 35px rgba(54, 39, 31, 0.2);\n    color: white;\n    font-family: Arial, sans-serif;\n    font-size: 13px;\n    font-weight: 700;\n    letter-spacing: 0.14em;\n    text-transform: uppercase;\n    cursor: pointer;\n    transition:\n      transform 0.35s ease,\n      box-shadow 0.35s ease;\n  }\n\n  .gr-add-to-cart::before {\n    position: absolute;\n    top: 0;\n    left: -120%;\n    width: 80%;\n    height: 100%;\n    background: linear-gradient(\n      90deg,\n      transparent,\n      rgba(255, 255, 255, 0.25),\n      transparent\n    );\n    content: \"\";\n    transform: skewX(-20deg);\n    transition: left 0.75s ease;\n  }\n\n  .gr-add-to-cart:hover {\n    transform: translateY(-3px);\n    box-shadow: 0 24px 45px rgba(54, 39, 31, 0.28);\n  }\n\n  .gr-add-to-cart:hover::before {\n    left: 140%;\n  }\n\n  .gr-add-to-cart svg {\n    width: 19px;\n    height: 19px;\n    fill: none;\n    stroke: currentColor;\n    stroke-width: 1.8;\n    stroke-linecap: round;\n    stroke-linejoin: round;\n    transition: transform 0.3s ease;\n  }\n\n  .gr-add-to-cart:hover svg {\n    transform: translateX(4px);\n  }\n\n  .gr-trust-row {\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: center;\n    gap: 13px 20px;\n    margin-top: 18px;\n    color: var(--gr-muted);\n    font-family: Arial, sans-serif;\n    font-size: 11px;\n  }\n\n  .gr-trust-row div {\n    display: flex;\n    align-items: center;\n    gap: 6px;\n  }\n\n  .gr-trust-icon {\n    display: grid;\n    width: 17px;\n    height: 17px;\n    place-items: center;\n    border-radius: 50%;\n    background: rgba(121, 129, 108, 0.14);\n    color: var(--gr-deep-sage);\n    font-size: 10px;\n    font-weight: 700;\n  }\n\n  .gr-brand-statement {\n    display: grid;\n    grid-template-columns: 1fr auto 1fr;\n    gap: 22px;\n    align-items: center;\n    margin-top: 85px;\n  }\n\n  .gr-brand-statement span {\n    height: 1px;\n    background: linear-gradient(\n      90deg,\n      transparent,\n      rgba(109, 82, 65, 0.28)\n    );\n  }\n\n  .gr-brand-statement span:last-child {\n    background: linear-gradient(\n      90deg,\n      rgba(109, 82, 65, 0.28),\n      transparent\n    );\n  }\n\n  .gr-brand-statement p {\n    margin: 0;\n    color: var(--gr-coffee);\n    font-family: Georgia, \"Times New Roman\", serif;\n    font-size: clamp(19px, 2vw, 25px);\n    font-style: italic;\n    text-align: center;\n  }\n\n  .gr-reveal {\n    opacity: 0;\n    transform: translateY(30px);\n    transition:\n      opacity 0.8s ease,\n      transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);\n  }\n\n  .gr-reveal.gr-visible {\n    opacity: 1;\n    transform: translateY(0);\n  }\n\n  @keyframes grFloatShape {\n    0%,\n    100% {\n      transform: translate3d(0, 0, 0) rotate(0deg);\n    }\n\n    50% {\n      transform: translate3d(0, -24px, 0) rotate(5deg);\n    }\n  }\n\n  @media (max-width: 900px) {\n    .gr-cover-section {\n      padding: 75px 18px;\n    }\n\n    .gr-product-grid {\n      grid-template-columns: 1fr;\n      gap: 50px;\n    }\n\n    .gr-image-column {\n      position: relative;\n      top: auto;\n      width: min(600px, 100%);\n      margin: 0 auto;\n    }\n\n    .gr-content-column {\n      width: min(680px, 100%);\n      margin: 0 auto;\n    }\n  }\n\n  @media (max-width: 600px) {\n    .gr-cover-section {\n      padding: 55px 14px;\n    }\n\n    .gr-image-frame {\n      border-radius: 25px;\n    }\n\n    .gr-image-badge {\n      top: 15px;\n      left: 15px;\n      padding: 9px 12px;\n      font-size: 9px;\n    }\n\n    .gr-title {\n      font-size: clamp(38px, 12vw, 52px);\n    }\n\n    .gr-subtitle {\n      margin-top: 24px;\n      font-size: 22px;\n    }\n\n    .gr-description {\n      font-size: 15px;\n      line-height: 1.7;\n    }\n\n    .gr-benefits {\n      grid-template-columns: 1fr;\n    }\n\n    .gr-benefit-card {\n      min-height: auto;\n    }\n\n    .gr-product-details {\n      grid-template-columns: 1fr;\n    }\n\n    .gr-product-details div + div {\n      border-top: 1px solid var(--gr-border);\n      border-left: 0;\n    }\n\n    .gr-brand-statement {\n      gap: 12px;\n      margin-top: 58px;\n    }\n\n    .gr-brand-statement p {\n      max-width: 220px;\n      font-size: 18px;\n    }\n\n    .gr-image-thumbnails,\n    .gr-colour-buttons {\n      width: 100%;\n    }\n\n    .gr-thumbnail,\n    .gr-colour-option {\n      flex: 1;\n      justify-content: center;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    .gr-background-shape,\n    .gr-main-image,\n    .gr-benefit-card,\n    .gr-add-to-cart,\n    .gr-reveal {\n      animation: none;\n      transition: none;\n    }\n\n    .gr-reveal {\n      opacity: 1;\n      transform: none;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cscript\u003e\n  document.addEventListener(\"DOMContentLoaded\", function () {\n    const section = document.querySelector(\"#gentleroots-cover\");\n\n    if (!section) return;\n\n    const revealElements = section.querySelectorAll(\".gr-reveal\");\n    const mainImage = section.querySelector(\"#grMainImage\");\n    const selectedColour = section.querySelector(\"#grSelectedColour\");\n    const colourButtons = section.querySelectorAll(\".gr-colour-option\");\n    const thumbnails = section.querySelectorAll(\".gr-thumbnail\");\n    const addToCartButton = section.querySelector(\".gr-add-to-cart\");\n\n    const revealObserver = new IntersectionObserver(\n      function (entries) {\n        entries.forEach(function (entry) {\n          if (entry.isIntersecting) {\n            const element = entry.target;\n            const index = Array.from(revealElements).indexOf(element);\n\n            setTimeout(function () {\n              element.classList.add(\"gr-visible\");\n            }, Math.min(index * 70, 500));\n\n            revealObserver.unobserve(element);\n          }\n        });\n      },\n      {\n        threshold: 0.12\n      }\n    );\n\n    revealElements.forEach(function (element) {\n      revealObserver.observe(element);\n    });\n\n    function updateProductImage(imageUrl, altText) {\n      if (!mainImage || !imageUrl) return;\n\n      mainImage.classList.add(\"gr-changing\");\n\n      setTimeout(function () {\n        mainImage.src = imageUrl;\n        mainImage.alt = altText || \"GentleRoots breastfeeding cover\";\n\n        mainImage.onload = function () {\n          mainImage.classList.remove(\"gr-changing\");\n        };\n      }, 250);\n    }\n\n    function activateColour(colourName, imageUrl, altText) {\n      if (selectedColour) {\n        selectedColour.textContent = colourName;\n      }\n\n      colourButtons.forEach(function (button) {\n        button.classList.toggle(\n          \"active\",\n          button.dataset.colour === colourName\n        );\n      });\n\n      thumbnails.forEach(function (thumbnail) {\n        const thumbnailText = thumbnail.textContent.trim();\n\n        thumbnail.classList.toggle(\n          \"active\",\n          thumbnailText === colourName\n        );\n      });\n\n      updateProductImage(imageUrl, altText);\n    }\n\n    colourButtons.forEach(function (button) {\n      button.addEventListener(\"click\", function () {\n        activateColour(\n          button.dataset.colour,\n          button.dataset.image,\n          button.dataset.alt\n        );\n      });\n    });\n\n    thumbnails.forEach(function (thumbnail) {\n      thumbnail.addEventListener(\"click\", function () {\n        activateColour(\n          thumbnail.textContent.trim(),\n          thumbnail.dataset.image,\n          thumbnail.dataset.alt\n        );\n      });\n    });\n\n    if (addToCartButton) {\n      addToCartButton.addEventListener(\"click\", function () {\n        const originalText = addToCartButton.querySelector(\"span\");\n\n        if (!originalText) return;\n\n        originalText.textContent = \"Added to Cart ✓\";\n        addToCartButton.style.background = \"#4e5746\";\n\n        setTimeout(function () {\n          originalText.textContent = \"Add to Cart\";\n          addToCartButton.style.background = \"\";\n        }, 2200);\n\n        \/*\n          Connect your store cart function here.\n\n          Shopify example:\n          Replace this click event with your Shopify product form,\n          or place this design around your existing:\n          \n          {% form 'product', product %}\n            \u003cinput type=\"hidden\" name=\"id\" value=\"{{ product.selected_or_first_available_variant.id }}\"\u003e\n            \u003cbutton type=\"submit\"\u003eAdd to Cart\u003c\/button\u003e\n          {% endform %}\n        *\/\n      });\n    }\n  });\n\u003c\/script\u003e","brand":"GentleRoots","offers":[{"title":"Default Title","offer_id":47835238629481,"sku":null,"price":379.99,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0685\/9279\/5753\/files\/image_a3d7d6c9-edbb-4d0e-a280-0f5e91720de3.png?v=1785056162","url":"https:\/\/gentleroots.co.za\/products\/breastfeeding-cover","provider":"GentleRoots","version":"1.0","type":"link"}