{"product_id":"novea™-glow-guard-spf-50-sunscreen-spray","title":"NOVÉA™ Glow Guard SPF 50 Sunscreen Spray","description":"\u003cdiv id=\"novea-glow-guard\" class=\"ngg\" role=\"region\"\u003e\n\u003c!-- HERO --\u003e\n\u003csection class=\"ngg-hero\"\u003e\n\u003cdiv class=\"ngg-grid-pattern\"\u003e\u003c\/div\u003e\n\u003cspan class=\"ngg-orb ngg-orb--one\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-orb ngg-orb--two\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-hero__copy ngg-reveal\"\u003e\n\u003cspan class=\"ngg-badge\"\u003eNOVÉA™ SUNCARE\u003c\/span\u003e\n\u003ch1\u003eNOVÉA™ Glow Guard \u003cspan\u003eSPF 50 Sunscreen Spray\u003c\/span\u003e\n\u003c\/h1\u003e\n\u003cp class=\"ngg-tagline\"\u003eProtected Skin. Radiant Glow.\u003cbr\u003eAll Day Long.\u003c\/p\u003e\n\u003cp class=\"ngg-description\"\u003eBroad-spectrum SPF 50 PA+++ protection in a lightweight, ultra-fine mist designed to absorb without a visible white cast and leave skin feeling fresh, hydrated and beautifully radiant.\u003c\/p\u003e\n\u003cdiv class=\"ngg-highlights\"\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSPF 50\u003c\/strong\u003e \u003cspan\u003eUVB protection\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003ePA+++\u003c\/strong\u003e \u003cspan\u003eUVA protection\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003e88ml\u003c\/strong\u003e \u003cspan\u003espray bottle\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003e360°\u003c\/strong\u003e \u003cspan\u003eultra-fine mist\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-trust\"\u003e\n\u003cspan\u003eNo visible white cast\u003c\/span\u003e \u003cspan\u003eLightweight feel\u003c\/span\u003e \u003cspan\u003eFace and body\u003c\/span\u003e \u003cspan\u003eDewy finish\u003c\/span\u003e\n\u003c\/div\u003e\n\u003ca class=\"ngg-button\" href=\"#ngg-benefits\"\u003e Discover Glow Guard \u003cspan\u003e→\u003c\/span\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- INTRODUCTION --\u003e\n\u003csection class=\"ngg-section\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003e Daily defence for radiant-looking skin \u003c\/span\u003e\n\u003ch2\u003eHigh protection without the heavy sunscreen feel.\u003c\/h2\u003e\n\u003cp\u003eSouth Africa’s intense sunlight makes daily protection essential. Glow Guard disperses sunscreen in a fine mist for quick, even application—helping protect exposed skin from UVA and UVB radiation while maintaining a comfortable, luminous finish.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-statement ngg-reveal\"\u003e\n\u003cspan\u003e“\u003c\/span\u003e\n\u003cp\u003eBecause glowing skin and protected skin should never be a compromise.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- BENEFITS --\u003e\n\u003csection id=\"ngg-benefits\" class=\"ngg-section ngg-section--soft\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003eWhat your skin gains\u003c\/span\u003e\n\u003ch2\u003eProtection made beautifully wearable\u003c\/h2\u003e\n\u003cp\u003eSelect each benefit to learn more about the Glow Guard experience.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-benefits\"\u003e\n\u003carticle class=\"ngg-benefit is-open ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e01\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e☀\u003c\/span\u003e\n\u003ch3\u003eBroad-spectrum protection\u003c\/h3\u003e\n\u003cp\u003eSPF 50 PA+++ is designed to provide high protection against UVB radiation and strong protection against UVA radiation when applied correctly and reapplied as directed.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ngg-benefit ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e02\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e◇\u003c\/span\u003e\n\u003ch3\u003eNo visible white cast\u003c\/h3\u003e\n\u003cp\u003eThe fine mist is designed to settle invisibly without leaving the chalky-looking residue often associated with heavier sunscreen formulas.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ngg-benefit ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e03\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e≈\u003c\/span\u003e\n\u003ch3\u003eLightweight skin feel\u003c\/h3\u003e\n\u003cp\u003eA breathable, non-greasy finish makes daily sun protection feel more comfortable on both the face and body.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ngg-benefit ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e04\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e◎\u003c\/span\u003e\n\u003ch3\u003eQuick, even application\u003c\/h3\u003e\n\u003cp\u003eThe atomising nozzle disperses an ultra-fine mist to help cover exposed areas efficiently. Rub in where required to ensure complete and uniform coverage.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ngg-benefit ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e05\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e✦\u003c\/span\u003e\n\u003ch3\u003eHydrated-looking glow\u003c\/h3\u003e\n\u003cp\u003eThe moisturising formula helps skin feel soft and comfortable, leaving behind a fresh, luminous-looking finish.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ngg-benefit ngg-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ngg-benefit__number\"\u003e06\u003c\/span\u003e \u003cspan class=\"ngg-benefit__icon\"\u003e↻\u003c\/span\u003e\n\u003ch3\u003eEffortless reapplication\u003c\/h3\u003e\n\u003cp\u003eThe portable spray format makes regular sunscreen top-ups quick and convenient throughout the day.\u003c\/p\u003e\n\u003cspan class=\"ngg-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- INTERACTIVE PROTECTION --\u003e\n\u003csection id=\"ngg-protection-system\" class=\"ngg-section ngg-protection\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-heading--light ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003eBroad-spectrum sun defence\u003c\/span\u003e\n\u003ch2 id=\"ngg-protection-title\"\u003eExplore the protection system\u003c\/h2\u003e\n\u003cp\u003eSelect each stage to see how Glow Guard supports your daily routine.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-interactive\"\u003e\n\u003cdiv class=\"ngg-protection__preview ngg-reveal\"\u003e\n\u003cdiv class=\"ngg-shield-orbit\"\u003e\n\u003cspan class=\"ngg-shield-ring ngg-shield-ring--outer\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-shield-ring ngg-shield-ring--inner\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-ray ngg-ray--one\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-ray ngg-ray--two\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-ray ngg-ray--three\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ngg-shield-core\"\u003e\n\u003csmall class=\"ngg-stage-label\"\u003ePROTECTION 01\u003c\/small\u003e \u003cstrong class=\"ngg-stage-word\"\u003eUVB\u003c\/strong\u003e \u003cspan class=\"ngg-stage-detail\"\u003eSPF 50\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-selected\" role=\"status\"\u003e\n\u003cspan class=\"ngg-selected__number\"\u003e01\u003c\/span\u003e\n\u003cdiv class=\"ngg-selected__content\"\u003e\n\u003cstrong class=\"ngg-selected__title\"\u003e High UVB Protection \u003c\/strong\u003e\n\u003cp class=\"ngg-selected__copy\"\u003eSPF 50 provides high protection against the UVB radiation primarily responsible for sunburn.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-options\" role=\"group\"\u003e\n\u003cbutton class=\"ngg-option is-active ngg-reveal\" type=\"button\"\u003e \u003cspan class=\"ngg-option__number\"\u003e01\u003c\/span\u003e \u003cspan class=\"ngg-option__content\"\u003e \u003cstrong\u003eDefend against UVB\u003c\/strong\u003e \u003cspan\u003e Helps protect exposed skin against sunburn-causing radiation. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ngg-option ngg-reveal\" type=\"button\"\u003e \u003cspan class=\"ngg-option__number\"\u003e02\u003c\/span\u003e \u003cspan class=\"ngg-option__content\"\u003e \u003cstrong\u003eDefend against UVA\u003c\/strong\u003e \u003cspan\u003e Supports protection against radiation associated with photoageing. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ngg-option ngg-reveal\" type=\"button\"\u003e \u003cspan class=\"ngg-option__number\"\u003e03\u003c\/span\u003e \u003cspan class=\"ngg-option__content\"\u003e \u003cstrong\u003eDisperse evenly\u003c\/strong\u003e \u003cspan\u003e The fine spray helps distribute sunscreen quickly and efficiently. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ngg-option ngg-reveal\" type=\"button\"\u003e \u003cspan class=\"ngg-option__number\"\u003e04\u003c\/span\u003e \u003cspan class=\"ngg-option__content\"\u003e \u003cstrong\u003eSettle and glow\u003c\/strong\u003e \u003cspan\u003e A comfortable finish created for protected, radiant-looking skin. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- LIFESTYLE --\u003e\n\u003csection class=\"ngg-section\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003eProtection that moves with you\u003c\/span\u003e\n\u003ch2\u003eMade for every sun-exposed moment\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-lifestyles\"\u003e\n\u003carticle class=\"ngg-card ngg-reveal\"\u003e\u003cspan\u003e01\u003c\/span\u003e\n\u003ch3\u003eDaily commutes\u003c\/h3\u003e\n\u003cp\u003eApply before leaving home to help protect exposed skin during everyday travel.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-card ngg-reveal\"\u003e\u003cspan\u003e02\u003c\/span\u003e\n\u003ch3\u003eOutdoor days\u003c\/h3\u003e\n\u003cp\u003eKeep Glow Guard nearby for regular reapplication during extended time outdoors.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-card ngg-reveal\"\u003e\u003cspan\u003e03\u003c\/span\u003e\n\u003ch3\u003eBeach and pool\u003c\/h3\u003e\n\u003cp\u003eReapply immediately after swimming, towelling or excessive perspiration. Use water-resistant sunscreen where required.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-card ngg-reveal\"\u003e\u003cspan\u003e04\u003c\/span\u003e\n\u003ch3\u003eMakeup routines\u003c\/h3\u003e\n\u003cp\u003eAllow the formula to settle before applying makeup and follow the product directions when reapplying.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- SPECIFICATIONS --\u003e\n\u003csection class=\"ngg-section ngg-section--soft\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003e Premium protection, precisely considered \u003c\/span\u003e\n\u003ch2\u003eKey specifications\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-specifications\"\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e01\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eProtection rating\u003c\/strong\u003e\n\u003cp\u003eSPF 50 PA+++ broad-spectrum UVA and UVB protection.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e02\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eUVB protection\u003c\/strong\u003e\n\u003cp\u003eSPF 50 provides high UVB protection when applied at the tested amount and reapplied correctly.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e03\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eUVA protection\u003c\/strong\u003e\n\u003cp\u003ePA+++ indicates strong protection against UVA radiation.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e04\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eVolume\u003c\/strong\u003e\n\u003cp\u003e88ml spray presentation.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e05\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eApplication\u003c\/strong\u003e\n\u003cp\u003eUltra-fine 360-degree atomising spray mist.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e06\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eFinish\u003c\/strong\u003e\n\u003cp\u003eInvisible-looking, lightweight and dewy.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e07\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSkin compatibility\u003c\/strong\u003e\n\u003cp\u003eDesigned for all skin tones and everyday application.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e08\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eBottle\u003c\/strong\u003e\n\u003cp\u003eClear teardrop bottle with a yellow spray cap.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-specification ngg-reveal\"\u003e\u003cspan\u003e09\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003ePremium packaging\u003c\/strong\u003e\n\u003cp\u003eNOVÉA™ matte-black gift box with South African flag detailing.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- HOW TO USE --\u003e\n\u003csection id=\"ngg-how-to-use\" class=\"ngg-section\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003eYour daily protection ritual\u003c\/span\u003e\n\u003ch2\u003eHow to use\u003c\/h2\u003e\n\u003cp\u003eFollow the final directions and warnings printed on the tested product label.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003col class=\"ngg-use-list\"\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e1\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eShake gently\u003c\/strong\u003e\n\u003cp\u003eShake the bottle before each application.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e2\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eApply before exposure\u003c\/strong\u003e\n\u003cp\u003eApply generously to dry skin approximately 15 minutes before sun exposure.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e3\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSpray the body\u003c\/strong\u003e\n\u003cp\u003eHold 15–20cm from exposed body areas, spray generously and rub in to create complete, even coverage.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e4\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eProtect the face safely\u003c\/strong\u003e\n\u003cp\u003eDo not spray directly onto the face. Spray into your hands first, then apply while avoiding the eyes, mouth and inhalation.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e5\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eAllow to settle\u003c\/strong\u003e\n\u003cp\u003eLet the sunscreen settle fully before dressing or applying makeup.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-reveal\"\u003e\n\u003cspan\u003e6\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eReapply regularly\u003c\/strong\u003e\n\u003cp\u003eReapply at least every two hours and after swimming, sweating, towelling or extended sun exposure.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ngg-use-item ngg-use-item--featured ngg-reveal\"\u003e\n\u003cspan\u003e7\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eUse alongside sun-safe habits\u003c\/strong\u003e\n\u003cp\u003eWear protective clothing, seek shade and avoid prolonged exposure during peak sunlight hours.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003cdiv class=\"ngg-safety ngg-reveal\"\u003e\n\u003cspan\u003e!\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSun-protection guidance\u003c\/strong\u003e\n\u003cp\u003eSunscreen cannot provide complete protection. Applying too little significantly reduces protection. Avoid inhaling spray, keep away from eyes and broken skin, and discontinue use if irritation occurs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- INCLUDED --\u003e\n\u003csection class=\"ngg-section ngg-included-section\"\u003e\n\u003cdiv class=\"ngg-container\"\u003e\n\u003cdiv class=\"ngg-heading ngg-reveal\"\u003e\n\u003cspan class=\"ngg-eyebrow\"\u003eThe complete presentation\u003c\/span\u003e\n\u003ch2\u003eWhat’s included\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ngg-included\"\u003e\n\u003carticle class=\"ngg-included__item ngg-reveal\"\u003e\u003cspan\u003e01\u003c\/span\u003e\n\u003cdiv\u003e\n\u003csmall\u003eYour daily SPF\u003c\/small\u003e \u003cstrong\u003e NOVÉA™ Glow Guard SPF 50 PA+++ Sunscreen Spray — 88ml \u003c\/strong\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ngg-included__item ngg-reveal\"\u003e\u003cspan\u003e02\u003c\/span\u003e\n\u003cdiv\u003e\n\u003csmall\u003ePremium presentation\u003c\/small\u003e \u003cstrong\u003eNOVÉA™ matte-black gift box\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- FINAL CTA --\u003e\n\u003csection class=\"ngg-cta\"\u003e\u003cspan class=\"ngg-cta__glow\"\u003e\u003c\/span\u003e \u003cspan class=\"ngg-cta__sun\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ngg-container ngg-cta__inner ngg-reveal\"\u003e\n\u003cspan class=\"ngg-badge ngg-badge--dark\"\u003e NOVÉA™ GLOW GUARD \u003c\/span\u003e\n\u003ch2\u003eProtected skin. Radiant glow. Every single day.\u003c\/h2\u003e\n\u003cp\u003eMake broad-spectrum sun protection an effortless part of your routine.\u003c\/p\u003e\n\u003ca class=\"ngg-button ngg-button--light\" href=\"#ngg-how-to-use\"\u003e Explore the ritual \u003cspan\u003e→\u003c\/span\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp class=\"ngg-disclaimer\"\u003eSunscreen reduces UV exposure but does not provide complete protection. Product claims, SPF, UVA rating, broad-spectrum status, water resistance, sensitive-skin suitability, directions, packaging and origin must be verified against accredited testing and supplier documentation before publication or sale.\u003cscript\u003e\n  (function () {\n    \"use strict\";\n\n    var ROOT_SELECTOR = \"#novea-glow-guard\";\n\n    function setText(root, selector, value) {\n      var element = root.querySelector(selector);\n\n      if (element) {\n        element.textContent = value;\n      }\n    }\n\n    function updateProtection(root, button, animate) {\n      if (!root || !button) {\n        return;\n      }\n\n      var section = root.querySelector(\"#ngg-protection-system\");\n      var orbit = root.querySelector(\".ngg-shield-orbit\");\n      var preview = root.querySelector(\".ngg-protection__preview\");\n      var buttons = root.querySelectorAll(\".ngg-option\");\n\n      var data = {\n        number: button.getAttribute(\"data-number\") || \"01\",\n        label:\n          button.getAttribute(\"data-label\") ||\n          \"PROTECTION 01\",\n        word: button.getAttribute(\"data-word\") || \"UVB\",\n        detail:\n          button.getAttribute(\"data-detail\") ||\n          \"SPF 50\",\n        title:\n          button.getAttribute(\"data-title\") ||\n          \"High UVB Protection\",\n        copy:\n          button.getAttribute(\"data-copy\") ||\n          \"SPF 50 provides high protection against UVB radiation.\",\n        colour:\n          button.getAttribute(\"data-colour\") ||\n          \"#ffd166\",\n        glow:\n          button.getAttribute(\"data-glow\") ||\n          \"rgba(255, 209, 102, 0.58)\"\n      };\n\n      buttons.forEach(function (item) {\n        var selected = item === button;\n\n        item.classList.toggle(\"is-active\", selected);\n\n        item.setAttribute(\n          \"aria-pressed\",\n          selected ? \"true\" : \"false\"\n        );\n\n        if (selected) {\n          item.style.setProperty(\n            \"--option-colour\",\n            data.colour\n          );\n\n          item.style.setProperty(\n            \"--option-glow\",\n            data.glow\n          );\n        } else {\n          item.style.removeProperty(\"--option-colour\");\n          item.style.removeProperty(\"--option-glow\");\n        }\n      });\n\n      if (section) {\n        section.style.setProperty(\n          \"--active-colour\",\n          data.colour\n        );\n\n        section.style.setProperty(\n          \"--active-glow\",\n          data.glow\n        );\n      }\n\n      if (orbit) {\n        orbit.style.setProperty(\n          \"--active-colour\",\n          data.colour\n        );\n\n        orbit.style.setProperty(\n          \"--active-glow\",\n          data.glow\n        );\n      }\n\n      setText(\n        root,\n        \".ngg-selected__number\",\n        data.number\n      );\n\n      setText(\n        root,\n        \".ngg-stage-label\",\n        data.label\n      );\n\n      setText(\n        root,\n        \".ngg-stage-word\",\n        data.word\n      );\n\n      setText(\n        root,\n        \".ngg-stage-detail\",\n        data.detail\n      );\n\n      setText(\n        root,\n        \".ngg-selected__title\",\n        data.title\n      );\n\n      setText(\n        root,\n        \".ngg-selected__copy\",\n        data.copy\n      );\n\n      if (preview \u0026\u0026 animate !== false) {\n        preview.classList.remove(\"ngg-is-changing\");\n\n        void preview.offsetWidth;\n\n        preview.classList.add(\"ngg-is-changing\");\n\n        window.setTimeout(function () {\n          preview.classList.remove(\"ngg-is-changing\");\n        }, 400);\n      }\n    }\n\n    function toggleBenefit(card) {\n      if (!card) {\n        return;\n      }\n\n      var open = card.classList.toggle(\"is-open\");\n\n      card.setAttribute(\n        \"aria-expanded\",\n        open ? \"true\" : \"false\"\n      );\n    }\n\n    function initialiseReveals(root) {\n      var revealItems =\n        root.querySelectorAll(\".ngg-reveal\");\n\n      var reducedMotion =\n        window.matchMedia \u0026\u0026\n        window.matchMedia(\n          \"(prefers-reduced-motion: reduce)\"\n        ).matches;\n\n      if (\n        reducedMotion ||\n        !(\"IntersectionObserver\" in window)\n      ) {\n        revealItems.forEach(function (item) {\n          item.classList.add(\"ngg-visible\");\n        });\n\n        return;\n      }\n\n      var observer = new IntersectionObserver(\n        function (entries) {\n          entries.forEach(function (entry) {\n            if (!entry.isIntersecting) {\n              return;\n            }\n\n            entry.target.classList.add(\"ngg-visible\");\n            observer.unobserve(entry.target);\n          });\n        },\n        {\n          threshold: 0.08,\n          rootMargin: \"0px 0px -18px 0px\"\n        }\n      );\n\n      revealItems.forEach(function (item, index) {\n        item.style.transitionDelay =\n          ((index % 4) * 55) + \"ms\";\n\n        observer.observe(item);\n      });\n\n      window.setTimeout(function () {\n        revealItems.forEach(function (item) {\n          item.classList.add(\"ngg-visible\");\n        });\n      }, 1800);\n    }\n\n    function initialiseGlowGuard(root) {\n      if (\n        !root ||\n        root.getAttribute(\"data-ngg-ready\") === \"true\"\n      ) {\n        return;\n      }\n\n      root.setAttribute(\"data-ngg-ready\", \"true\");\n      root.classList.add(\"ngg-js\");\n\n      initialiseReveals(root);\n\n      root\n        .querySelectorAll(\".ngg-benefit\")\n        .forEach(function (card) {\n          card.setAttribute(\n            \"aria-expanded\",\n            card.classList.contains(\"is-open\")\n              ? \"true\"\n              : \"false\"\n          );\n        });\n\n      var initialOption =\n        root.querySelector(\".ngg-option.is-active\") ||\n        root.querySelector(\".ngg-option\");\n\n      if (initialOption) {\n        updateProtection(\n          root,\n          initialOption,\n          false\n        );\n      }\n    }\n\n    function initialiseAll(scope) {\n      scope = scope || document;\n\n      if (\n        scope.matches \u0026\u0026\n        scope.matches(ROOT_SELECTOR)\n      ) {\n        initialiseGlowGuard(scope);\n      }\n\n      if (scope.querySelectorAll) {\n        scope\n          .querySelectorAll(ROOT_SELECTOR)\n          .forEach(function (root) {\n            initialiseGlowGuard(root);\n          });\n      }\n    }\n\n    document.addEventListener(\n      \"click\",\n      function (event) {\n        var option = event.target.closest(\n          ROOT_SELECTOR + \" .ngg-option\"\n        );\n\n        if (option) {\n          event.preventDefault();\n\n          updateProtection(\n            option.closest(ROOT_SELECTOR),\n            option,\n            true\n          );\n\n          return;\n        }\n\n        var benefit = event.target.closest(\n          ROOT_SELECTOR + \" .ngg-benefit\"\n        );\n\n        if (benefit) {\n          toggleBenefit(benefit);\n        }\n      }\n    );\n\n    document.addEventListener(\n      \"keydown\",\n      function (event) {\n        if (\n          event.key !== \"Enter\" \u0026\u0026\n          event.key !== \" \"\n        ) {\n          return;\n        }\n\n        var benefit = event.target.closest(\n          ROOT_SELECTOR + \" .ngg-benefit\"\n        );\n\n        if (!benefit) {\n          return;\n        }\n\n        event.preventDefault();\n        toggleBenefit(benefit);\n      }\n    );\n\n    if (document.readyState === \"loading\") {\n      document.addEventListener(\n        \"DOMContentLoaded\",\n        function () {\n          initialiseAll(document);\n        },\n        { once: true }\n      );\n    } else {\n      initialiseAll(document);\n    }\n\n    document.addEventListener(\n      \"shopify:section:load\",\n      function (event) {\n        var root = null;\n\n        if (\n          event.target.matches \u0026\u0026\n          event.target.matches(ROOT_SELECTOR)\n        ) {\n          root = event.target;\n        } else if (event.target.querySelector) {\n          root =\n            event.target.querySelector(ROOT_SELECTOR);\n        }\n\n        if (!root) {\n          return;\n        }\n\n        root.removeAttribute(\"data-ngg-ready\");\n        root.classList.remove(\"ngg-js\");\n\n        initialiseGlowGuard(root);\n      }\n    );\n  })();\n\u003c\/script\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  #novea-glow-guard {\n    --ink: #17161a;\n    --text: #443f44;\n    --muted: #766f76;\n    --gold: #e9a72e;\n    --gold-dark: #a9680b;\n    --yellow: #ffd166;\n    --soft: #fff5dc;\n    --border: rgba(23, 22, 26, 0.11);\n    --shadow: 0 16px 44px rgba(45, 33, 23, 0.09);\n\n    width: 100%;\n    overflow: hidden;\n    color: var(--text);\n    background: #fff;\n    font-family:\n      Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial,\n      sans-serif;\n    line-height: 1.6;\n    isolation: isolate;\n    -webkit-font-smoothing: antialiased;\n  }\n\n  #novea-glow-guard *,\n  #novea-glow-guard *::before,\n  #novea-glow-guard *::after {\n    box-sizing: border-box;\n  }\n\n  #novea-glow-guard h1,\n  #novea-glow-guard h2,\n  #novea-glow-guard h3,\n  #novea-glow-guard p {\n    margin: 0;\n    padding: 0;\n  }\n\n  #novea-glow-guard button,\n  #novea-glow-guard a {\n    font: inherit;\n  }\n\n  #novea-glow-guard button {\n    letter-spacing: normal;\n  }\n\n  .ngg-container {\n    position: relative;\n    z-index: 2;\n    width: min(1140px, calc(100% - 32px));\n    margin: 0 auto;\n  }\n\n  .ngg-section {\n    position: relative;\n    padding: 84px 0;\n  }\n\n  .ngg-section--soft {\n    background:\n      radial-gradient(\n        circle at 8% 8%,\n        rgba(255, 224, 143, 0.38),\n        transparent 29%\n      ),\n      linear-gradient(180deg, #fffefb, #faf6ee);\n  }\n\n  .ngg-heading {\n    width: min(100%, 800px);\n    margin: 0 auto 43px;\n    text-align: center;\n  }\n\n  .ngg-heading h2,\n  .ngg-cta h2 {\n    margin: 8px 0 14px !important;\n    color: var(--ink);\n    font-size: clamp(31px, 5vw, 53px);\n    font-weight: 780;\n    line-height: 1.06;\n    letter-spacing: -0.045em;\n  }\n\n  .ngg-heading p {\n    color: var(--muted);\n    font-size: 16px;\n  }\n\n  .ngg-eyebrow {\n    display: inline-block;\n    color: var(--gold-dark);\n    font-size: 10px;\n    font-weight: 850;\n    line-height: 1.4;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n  }\n\n  \/* Hero *\/\n  .ngg-hero {\n    position: relative;\n    padding: 105px 0 100px;\n    overflow: hidden;\n    background:\n      radial-gradient(\n        circle at 12% 15%,\n        rgba(255, 255, 255, 0.98),\n        transparent 32%\n      ),\n      radial-gradient(\n        circle at 88% 87%,\n        rgba(255, 201, 82, 0.38),\n        transparent 29%\n      ),\n      linear-gradient(145deg, #fff, #fff2c9 54%, #f7d59b);\n  }\n\n  .ngg-grid-pattern {\n    position: absolute;\n    inset: 0;\n    opacity: 0.22;\n    background-image:\n      linear-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px),\n      linear-gradient(\n        90deg,\n        rgba(255, 255, 255, 0.6) 1px,\n        transparent 1px\n      );\n    background-size: 48px 48px;\n  }\n\n  .ngg-hero__copy {\n    width: min(100%, 860px);\n    margin: 0 auto;\n    text-align: center;\n  }\n\n  .ngg-badge {\n    display: inline-flex;\n    padding: 8px 14px;\n    border: 1px solid rgba(185, 116, 13, 0.27);\n    border-radius: 999px;\n    color: var(--gold-dark);\n    background: rgba(255, 255, 255, 0.8);\n    box-shadow: 0 8px 24px rgba(185, 116, 13, 0.1);\n    font-size: 10px;\n    font-weight: 850;\n    letter-spacing: 0.17em;\n  }\n\n  .ngg-hero h1 {\n    width: min(100%, 850px);\n    margin: 22px auto 17px;\n    color: var(--ink);\n    font-size: clamp(47px, 8vw, 80px);\n    font-weight: 810;\n    line-height: 0.96;\n    letter-spacing: -0.06em;\n  }\n\n  .ngg-hero h1 span {\n    display: block;\n    margin-top: 11px;\n    color: var(--gold-dark);\n    font-size: 0.44em;\n    line-height: 1.12;\n    letter-spacing: -0.035em;\n  }\n\n  .ngg-tagline {\n    margin-bottom: 16px !important;\n    color: var(--gold-dark);\n    font-size: clamp(21px, 3vw, 28px);\n    font-weight: 780;\n    line-height: 1.28;\n  }\n\n  .ngg-description {\n    width: min(100%, 700px);\n    margin: 0 auto !important;\n    color: var(--muted);\n    font-size: 16px;\n  }\n\n  .ngg-highlights {\n    display: grid;\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n    gap: 10px;\n    width: min(100%, 810px);\n    margin: 28px auto 0;\n  }\n\n  .ngg-highlights div {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 7px;\n    min-width: 0;\n    min-height: 60px;\n    padding: 12px;\n    border: 1px solid var(--border);\n    border-radius: 15px;\n    background: rgba(255, 255, 255, 0.84);\n    box-shadow: 0 7px 20px rgba(45, 33, 23, 0.06);\n  }\n\n  .ngg-highlights strong {\n    color: var(--gold-dark);\n    font-size: 13px;\n  }\n\n  .ngg-highlights span {\n    color: #655f59;\n    font-size: 12px;\n  }\n\n  .ngg-trust {\n    display: flex;\n    justify-content: center;\n    flex-wrap: wrap;\n    gap: 11px 22px;\n    margin-top: 20px;\n  }\n\n  .ngg-trust span {\n    position: relative;\n    padding-left: 15px;\n    color: #6b655e;\n    font-size: 12px;\n    font-weight: 700;\n  }\n\n  .ngg-trust span::before {\n    position: absolute;\n    top: 50%;\n    left: 0;\n    width: 7px;\n    height: 7px;\n    border-radius: 50%;\n    background: var(--gold);\n    content: \"\";\n    transform: translateY(-50%);\n  }\n\n  .ngg-button {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    gap: 10px;\n    min-height: 52px;\n    margin-top: 27px;\n    padding: 12px 22px;\n    border: 1px solid var(--gold-dark);\n    border-radius: 999px;\n    color: #fff;\n    background: linear-gradient(135deg, var(--gold-dark), var(--gold));\n    box-shadow: 0 13px 29px rgba(185, 116, 13, 0.28);\n    font-size: 13px;\n    font-weight: 800;\n    text-decoration: none;\n    transition:\n      transform 0.25s ease,\n      box-shadow 0.25s ease;\n  }\n\n  .ngg-button:hover,\n  .ngg-button:focus-visible {\n    outline: none;\n    box-shadow: 0 17px 38px rgba(185, 116, 13, 0.36);\n    transform: translateY(-3px);\n  }\n\n  .ngg-orb {\n    position: absolute;\n    border-radius: 50%;\n    animation: ngg-float 7s ease-in-out infinite;\n  }\n\n  .ngg-orb--one {\n    top: 8%;\n    left: 3%;\n    width: 150px;\n    height: 150px;\n    background: rgba(255, 199, 62, 0.13);\n  }\n\n  .ngg-orb--two {\n    right: 3%;\n    bottom: 7%;\n    width: 195px;\n    height: 195px;\n    background: rgba(245, 169, 78, 0.13);\n    animation-delay: -3s;\n  }\n\n  \/* Statement *\/\n  .ngg-statement {\n    position: relative;\n    width: min(100%, 720px);\n    margin: 0 auto;\n    padding: 30px 32px;\n    overflow: hidden;\n    border: 1px solid var(--border);\n    border-radius: 21px;\n    background:\n      radial-gradient(\n        circle at 100% 0,\n        rgba(255, 221, 128, 0.45),\n        transparent 48%\n      ),\n      #fff;\n    box-shadow: var(--shadow);\n    text-align: center;\n  }\n\n  .ngg-statement \u003e span {\n    position: absolute;\n    top: -17px;\n    left: 18px;\n    color: rgba(222, 154, 35, 0.17);\n    font-family: Georgia, serif;\n    font-size: 105px;\n  }\n\n  .ngg-statement p {\n    position: relative;\n    color: var(--ink);\n    font-size: clamp(18px, 3vw, 24px);\n    font-weight: 750;\n  }\n\n  \/* Benefits *\/\n  .ngg-benefits {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 15px;\n  }\n\n  .ngg-benefit {\n    position: relative;\n    min-width: 0;\n    min-height: 184px;\n    padding: 23px;\n    overflow: hidden;\n    border: 1px solid var(--border);\n    border-radius: 20px;\n    background: #fff;\n    box-shadow: var(--shadow);\n    cursor: pointer;\n    transition:\n      transform 0.28s ease,\n      border-color 0.28s ease,\n      box-shadow 0.28s ease;\n  }\n\n  .ngg-benefit:hover,\n  .ngg-benefit:focus-visible,\n  .ngg-benefit.is-open {\n    border-color: rgba(222, 154, 35, 0.48);\n    outline: none;\n    box-shadow: 0 22px 52px rgba(45, 33, 23, 0.13);\n    transform: translateY(-4px);\n  }\n\n  .ngg-benefit__number {\n    position: absolute;\n    top: 20px;\n    right: 52px;\n    color: rgba(185, 116, 13, 0.68);\n    font-size: 9px;\n    font-weight: 900;\n  }\n\n  .ngg-benefit__icon {\n    display: grid;\n    width: 43px;\n    height: 43px;\n    margin-bottom: 15px;\n    border-radius: 13px;\n    color: var(--gold-dark);\n    background: linear-gradient(180deg, #fff, var(--soft));\n    box-shadow: 0 7px 18px rgba(185, 116, 13, 0.16);\n    place-items: center;\n  }\n\n  .ngg-benefit h3 {\n    padding-right: 28px !important;\n    color: var(--ink);\n    font-size: 17px;\n    line-height: 1.35;\n  }\n\n  .ngg-benefit p {\n    max-height: 0;\n    margin-top: 0 !important;\n    overflow: hidden;\n    color: var(--muted);\n    font-size: 14px;\n    opacity: 0;\n    transform: translateY(5px);\n    transition:\n      max-height 0.36s ease,\n      margin 0.3s ease,\n      opacity 0.3s ease,\n      transform 0.3s ease;\n  }\n\n  .ngg-benefit.is-open p {\n    max-height: 300px;\n    margin-top: 9px !important;\n    opacity: 1;\n    transform: none;\n  }\n\n  .ngg-benefit__toggle {\n    position: absolute;\n    top: 19px;\n    right: 19px;\n    width: 23px;\n    height: 23px;\n    border: 1px solid rgba(185, 116, 13, 0.3);\n    border-radius: 50%;\n  }\n\n  .ngg-benefit__toggle::before,\n  .ngg-benefit__toggle::after {\n    position: absolute;\n    top: 50%;\n    left: 50%;\n    width: 9px;\n    height: 1px;\n    background: var(--gold-dark);\n    content: \"\";\n    transform: translate(-50%, -50%);\n  }\n\n  .ngg-benefit__toggle::after {\n    transform: translate(-50%, -50%) rotate(90deg);\n    transition: transform 0.25s ease;\n  }\n\n  .ngg-benefit.is-open .ngg-benefit__toggle::after {\n    transform: translate(-50%, -50%);\n  }\n\n  \/* Protection interaction *\/\n  .ngg-protection {\n    --active-colour: #ffd166;\n    --active-glow: rgba(255, 209, 102, 0.58);\n\n    color: #fff;\n    background:\n      radial-gradient(\n        circle at 8% 10%,\n        rgba(225, 161, 45, 0.24),\n        transparent 29%\n      ),\n      radial-gradient(\n        circle at 92% 90%,\n        rgba(183, 110, 121, 0.18),\n        transparent 30%\n      ),\n      var(--ink);\n  }\n\n  .ngg-heading--light h2 {\n    color: #fff;\n  }\n\n  .ngg-heading--light p {\n    color: rgba(255, 255, 255, 0.64);\n  }\n\n  .ngg-heading--light .ngg-eyebrow {\n    color: #ffd477;\n  }\n\n  .ngg-interactive {\n    display: grid;\n    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);\n    align-items: center;\n    gap: 65px;\n    width: 100%;\n    min-width: 0;\n  }\n\n  .ngg-protection__preview,\n  .ngg-options,\n  .ngg-selected,\n  .ngg-selected__content {\n    min-width: 0;\n  }\n\n  .ngg-protection__preview {\n    width: 100%;\n    text-align: center;\n  }\n\n  .ngg-shield-orbit {\n    position: relative;\n    display: grid;\n    width: min(350px, 86vw);\n    aspect-ratio: 1;\n    margin: 0 auto 25px;\n    place-items: center;\n  }\n\n  .ngg-shield-orbit::before {\n    position: absolute;\n    width: 63%;\n    height: 63%;\n    border-radius: 50%;\n    background: var(--active-glow);\n    content: \"\";\n    filter: blur(51px);\n    opacity: 0.56;\n    transition: background 0.45s ease;\n  }\n\n  .ngg-shield-ring {\n    position: absolute;\n    border: 1px solid var(--active-colour);\n    border-radius: 50%;\n    pointer-events: none;\n    animation: ngg-pulse 3s ease-in-out infinite;\n    transition: border-color 0.45s ease;\n  }\n\n  .ngg-shield-ring--outer {\n    width: 94%;\n    height: 94%;\n  }\n\n  .ngg-shield-ring--inner {\n    width: 72%;\n    height: 72%;\n    animation-delay: -1.5s;\n  }\n\n  .ngg-shield-core {\n    position: relative;\n    z-index: 3;\n    display: grid;\n    width: 54%;\n    aspect-ratio: 1;\n    padding: 15px;\n    overflow: visible;\n    border: 2px solid var(--active-colour);\n    border-radius: 50% 50% 46% 46% \/ 43% 43% 60% 60%;\n    background: #fff;\n    box-shadow:\n      inset 0 0 35px var(--active-glow),\n      0 0 42px var(--active-glow);\n    place-content: center;\n    text-align: center;\n    transition:\n      border-color 0.45s ease,\n      box-shadow 0.45s ease;\n  }\n\n  .ngg-stage-label,\n  .ngg-stage-word,\n  .ngg-stage-detail {\n    display: block;\n    position: relative;\n    width: 100%;\n    height: auto;\n    overflow: visible;\n    text-align: center;\n    visibility: visible;\n    opacity: 1;\n  }\n\n  .ngg-stage-label {\n    color: var(--muted);\n    font-size: 8px;\n    font-weight: 900;\n    line-height: 1.3;\n    letter-spacing: 0.15em;\n  }\n\n  .ngg-stage-word {\n    margin: 7px 0;\n    color: var(--ink);\n    font-size: clamp(23px, 5vw, 31px);\n    font-weight: 850;\n    line-height: 1;\n  }\n\n  .ngg-stage-detail {\n    color: var(--gold-dark);\n    font-size: 10px;\n    font-weight: 900;\n    line-height: 1.3;\n  }\n\n  .ngg-ray {\n    position: absolute;\n    z-index: 1;\n    top: 7%;\n    width: 2px;\n    height: 89px;\n    border-radius: 999px;\n    background: linear-gradient(\n      to bottom,\n      var(--active-colour),\n      transparent\n    );\n    pointer-events: none;\n    transform-origin: bottom center;\n    animation: ngg-ray 2.6s ease-in-out infinite;\n    transition: background 0.45s ease;\n  }\n\n  .ngg-ray--one {\n    left: 33%;\n    transform: rotate(-19deg);\n  }\n\n  .ngg-ray--two {\n    left: 50%;\n    animation-delay: -0.8s;\n  }\n\n  .ngg-ray--three {\n    right: 31%;\n    transform: rotate(20deg);\n    animation-delay: -1.6s;\n  }\n\n  .ngg-selected {\n    display: grid;\n    grid-template-columns: 40px minmax(0, 1fr);\n    align-items: start;\n    gap: 14px;\n    width: min(100%, 470px);\n    min-height: 126px;\n    margin: 0 auto;\n    padding: 18px;\n    overflow: hidden;\n    border: 1px solid rgba(255, 255, 255, 0.14);\n    border-radius: 18px;\n    background: rgba(255, 255, 255, 0.075);\n    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.14);\n    text-align: left;\n  }\n\n  .ngg-selected__number {\n    display: grid;\n    width: 40px;\n    height: 40px;\n    border-radius: 50%;\n    color: var(--ink);\n    background: var(--active-colour);\n    box-shadow: 0 0 18px var(--active-glow);\n    font-size: 10px;\n    font-weight: 900;\n    place-items: center;\n    transition:\n      background 0.45s ease,\n      box-shadow 0.45s ease;\n  }\n\n  .ngg-selected__title,\n  .ngg-selected__copy {\n    display: block;\n    position: static;\n    width: 100%;\n    height: auto;\n    max-height: none;\n    overflow: visible;\n    white-space: normal;\n    overflow-wrap: anywhere;\n    visibility: visible;\n    opacity: 1;\n  }\n\n  .ngg-selected__title {\n    margin-bottom: 5px;\n    color: #fff;\n    font-size: 16px;\n    font-weight: 800;\n    line-height: 1.35;\n  }\n\n  .ngg-selected__copy {\n    color: rgba(255, 255, 255, 0.68);\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  .ngg-options {\n    display: grid;\n    width: 100%;\n    gap: 12px;\n  }\n\n  #novea-glow-guard button.ngg-option {\n    position: relative !important;\n    display: grid !important;\n    grid-template-columns: 42px minmax(0, 1fr) !important;\n    align-items: start !important;\n    gap: 15px !important;\n    width: 100% !important;\n    min-width: 0 !important;\n    height: auto !important;\n    min-height: 108px !important;\n    margin: 0 !important;\n    padding: 18px !important;\n    overflow: hidden !important;\n    border: 1px solid rgba(255, 255, 255, 0.13) !important;\n    border-radius: 18px !important;\n    color: #fff !important;\n    background: rgba(255, 255, 255, 0.055) !important;\n    box-shadow: none !important;\n    text-align: left !important;\n    text-indent: 0 !important;\n    text-transform: none !important;\n    letter-spacing: normal !important;\n    white-space: normal !important;\n    cursor: pointer !important;\n    appearance: none !important;\n    -webkit-appearance: none !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    transform: none !important;\n    transition:\n      border-color 0.25s ease,\n      background 0.25s ease,\n      box-shadow 0.25s ease,\n      transform 0.25s ease !important;\n  }\n\n  #novea-glow-guard button.ngg-option::before {\n    position: absolute;\n    top: 14px;\n    bottom: 14px;\n    left: 0;\n    width: 3px;\n    border-radius: 0 999px 999px 0;\n    background: var(--option-colour, transparent);\n    content: \"\";\n    opacity: 0;\n    transform: scaleY(0.45);\n    transition:\n      opacity 0.25s ease,\n      transform 0.25s ease;\n  }\n\n  #novea-glow-guard button.ngg-option:hover,\n  #novea-glow-guard button.ngg-option:focus-visible {\n    border-color: rgba(255, 209, 102, 0.5) !important;\n    outline: none !important;\n    background: rgba(255, 255, 255, 0.095) !important;\n    transform: translateY(-2px) !important;\n  }\n\n  #novea-glow-guard button.ngg-option:focus-visible {\n    box-shadow: 0 0 0 3px rgba(255, 209, 102, 0.18) !important;\n  }\n\n  #novea-glow-guard button.ngg-option.is-active {\n    border-color: var(--option-colour, #ffd166) !important;\n    background: rgba(255, 255, 255, 0.13) !important;\n    box-shadow:\n      inset 3px 0 0 var(--option-colour, #ffd166),\n      0 14px 34px rgba(0, 0, 0, 0.18) !important;\n    transform: none !important;\n  }\n\n  #novea-glow-guard button.ngg-option.is-active::before {\n    opacity: 1;\n    transform: scaleY(1);\n  }\n\n  .ngg-option__number {\n    display: grid !important;\n    width: 42px !important;\n    min-width: 42px !important;\n    height: 42px !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    border-radius: 50% !important;\n    color: #3a2d17 !important;\n    -webkit-text-fill-color: #3a2d17 !important;\n    background: #ffdf8c !important;\n    font-size: 10px !important;\n    font-weight: 900 !important;\n    line-height: 1 !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    place-items: center !important;\n    transition:\n      background 0.25s ease,\n      box-shadow 0.25s ease !important;\n  }\n\n  button.ngg-option.is-active .ngg-option__number {\n    background: var(--option-colour, #ffdf8c) !important;\n    box-shadow: 0 0 16px var(--option-glow, transparent);\n  }\n\n  .ngg-option__content {\n    display: block !important;\n    width: 100% !important;\n    min-width: 0 !important;\n    height: auto !important;\n    overflow: visible !important;\n    color: #fff !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n  }\n\n  .ngg-option__content strong,\n  .ngg-option__content \u003e span {\n    display: block !important;\n    position: static !important;\n    width: 100% !important;\n    height: auto !important;\n    max-height: none !important;\n    padding: 0 !important;\n    overflow: visible !important;\n    white-space: normal !important;\n    overflow-wrap: anywhere !important;\n    text-align: left !important;\n    text-transform: none !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    transform: none !important;\n  }\n\n  .ngg-option__content strong {\n    margin: 0 0 5px !important;\n    color: #fff !important;\n    -webkit-text-fill-color: #fff !important;\n    font-size: 15px !important;\n    font-weight: 800 !important;\n    line-height: 1.35 !important;\n  }\n\n  .ngg-option__content \u003e span {\n    margin: 0 !important;\n    color: rgba(255, 255, 255, 0.67) !important;\n    -webkit-text-fill-color: rgba(255, 255, 255, 0.67) !important;\n    font-size: 12px !important;\n    font-weight: 400 !important;\n    line-height: 1.55 !important;\n  }\n\n  .ngg-protection__preview.ngg-is-changing .ngg-stage-label,\n  .ngg-protection__preview.ngg-is-changing .ngg-stage-word,\n  .ngg-protection__preview.ngg-is-changing .ngg-stage-detail,\n  .ngg-protection__preview.ngg-is-changing .ngg-selected__number,\n  .ngg-protection__preview.ngg-is-changing .ngg-selected__title,\n  .ngg-protection__preview.ngg-is-changing .ngg-selected__copy {\n    animation: ngg-stage-change 0.38s ease both;\n  }\n\n  \/* Cards and lists *\/\n  .ngg-lifestyles,\n  .ngg-specifications,\n  .ngg-use-list,\n  .ngg-included {\n    display: grid;\n    gap: 14px;\n  }\n\n  .ngg-lifestyles {\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n  }\n\n  .ngg-specifications {\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n  }\n\n  .ngg-use-list {\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    width: min(100%, 1050px);\n    margin: 0 auto;\n    padding: 0;\n    list-style: none;\n  }\n\n  .ngg-included {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    width: min(100%, 980px);\n    margin: 0 auto;\n  }\n\n  .ngg-card,\n  .ngg-specification,\n  .ngg-use-item,\n  .ngg-included__item {\n    min-width: 0;\n    padding: 21px;\n    border: 1px solid var(--border);\n    border-radius: 19px;\n    background: #fff;\n    box-shadow: var(--shadow);\n    transition:\n      transform 0.27s ease,\n      border-color 0.27s ease;\n  }\n\n  .ngg-card:hover,\n  .ngg-specification:hover,\n  .ngg-use-item:hover {\n    border-color: rgba(222, 154, 35, 0.42);\n    transform: translateY(-4px);\n  }\n\n  .ngg-card {\n    min-height: 195px;\n  }\n\n  .ngg-card \u003e span {\n    display: block;\n    margin-bottom: 28px;\n    color: var(--gold-dark);\n    font-size: 10px;\n    font-weight: 900;\n  }\n\n  .ngg-card h3 {\n    margin-bottom: 7px !important;\n    color: var(--ink);\n    font-size: 17px;\n  }\n\n  .ngg-card p,\n  .ngg-specification p,\n  .ngg-use-item p {\n    color: var(--muted);\n    font-size: 13px;\n  }\n\n  .ngg-specification,\n  .ngg-use-item,\n  .ngg-included__item {\n    display: flex;\n    align-items: flex-start;\n    gap: 14px;\n    min-height: 130px;\n  }\n\n  .ngg-specification \u003e span {\n    color: var(--gold-dark);\n    font-size: 10px;\n    font-weight: 900;\n  }\n\n  .ngg-specification strong,\n  .ngg-use-item strong {\n    display: block;\n    margin-bottom: 5px;\n    color: var(--ink);\n    font-size: 14px;\n  }\n\n  .ngg-use-item \u003e span,\n  .ngg-included__item \u003e span {\n    display: grid;\n    width: 40px;\n    height: 40px;\n    flex: 0 0 40px;\n    border-radius: 50%;\n    color: #5f4216;\n    background: linear-gradient(180deg, #fff, #ffe4a2);\n    box-shadow: 0 7px 17px rgba(185, 116, 13, 0.17);\n    font-size: 11px;\n    font-weight: 900;\n    place-items: center;\n  }\n\n  .ngg-use-item--featured {\n    grid-column: 2 \/ 3;\n    background:\n      radial-gradient(\n        circle at 100% 0,\n        rgba(255, 222, 129, 0.45),\n        transparent 46%\n      ),\n      #fff;\n  }\n\n  .ngg-safety {\n    display: flex;\n    align-items: flex-start;\n    gap: 17px;\n    width: min(100%, 930px);\n    margin: 25px auto 0;\n    padding: 22px;\n    border: 1px solid rgba(185, 116, 13, 0.28);\n    border-radius: 19px;\n    background: #fff;\n    box-shadow: var(--shadow);\n  }\n\n  .ngg-safety \u003e span {\n    display: grid;\n    width: 43px;\n    height: 43px;\n    flex: 0 0 43px;\n    border-radius: 50%;\n    color: #fff;\n    background: linear-gradient(145deg, var(--gold-dark), var(--gold));\n    font-weight: 900;\n    place-items: center;\n  }\n\n  .ngg-safety strong {\n    display: block;\n    margin-bottom: 5px;\n    color: var(--ink);\n  }\n\n  .ngg-safety p {\n    color: var(--muted);\n    font-size: 12px;\n  }\n\n  .ngg-included-section {\n    background:\n      radial-gradient(\n        circle at 15% 15%,\n        rgba(255, 220, 123, 0.48),\n        transparent 29%\n      ),\n      #faf7f0;\n  }\n\n  .ngg-included__item {\n    align-items: center;\n    min-height: 110px;\n  }\n\n  .ngg-included__item small,\n  .ngg-included__item strong {\n    display: block;\n  }\n\n  .ngg-included__item small {\n    margin-bottom: 3px;\n    color: var(--muted);\n    font-size: 9px;\n    font-weight: 800;\n    letter-spacing: 0.1em;\n    text-transform: uppercase;\n  }\n\n  .ngg-included__item strong {\n    color: var(--ink);\n    font-size: 14px;\n  }\n\n  \/* CTA *\/\n  .ngg-cta {\n    position: relative;\n    padding: 98px 0;\n    overflow: hidden;\n    color: #fff;\n    background:\n      radial-gradient(\n        circle at 20% 20%,\n        rgba(230, 164, 43, 0.19),\n        transparent 31%\n      ),\n      var(--ink);\n    text-align: center;\n  }\n\n  .ngg-cta__inner {\n    max-width: 900px;\n  }\n\n  .ngg-cta h2 {\n    margin-top: 20px !important;\n    color: #fff;\n  }\n\n  .ngg-cta p {\n    color: rgba(255, 255, 255, 0.68);\n    font-size: 17px;\n    font-weight: 700;\n  }\n\n  .ngg-badge--dark {\n    color: #ffd77f;\n    border-color: rgba(255, 255, 255, 0.14);\n    background: rgba(255, 255, 255, 0.06);\n  }\n\n  .ngg-button--light {\n    color: var(--ink);\n    border-color: #fff;\n    background: #fff;\n  }\n\n  .ngg-cta__glow {\n    position: absolute;\n    top: 50%;\n    left: 50%;\n    width: 720px;\n    height: 360px;\n    border-radius: 50%;\n    background: radial-gradient(\n      circle,\n      rgba(226, 158, 38, 0.43),\n      transparent 68%\n    );\n    transform: translate(-50%, -50%);\n    animation: ngg-cta-glow 4s ease-in-out infinite;\n  }\n\n  .ngg-cta__sun {\n    position: absolute;\n    top: -90px;\n    right: -75px;\n    width: 250px;\n    height: 250px;\n    border: 1px solid rgba(255, 211, 108, 0.15);\n    border-radius: 50%;\n    box-shadow:\n      0 0 0 35px rgba(255, 211, 108, 0.035),\n      0 0 0 70px rgba(255, 211, 108, 0.02);\n  }\n\n  .ngg-disclaimer {\n    padding: 17px !important;\n    color: #817a73;\n    background: #f3f0eb;\n    font-size: 10px;\n    text-align: center;\n  }\n\n  \/* Reveal *\/\n  .ngg-reveal {\n    opacity: 1;\n    transform: none;\n  }\n\n  .ngg-js .ngg-reveal {\n    opacity: 0;\n    transform: translateY(23px);\n    transition:\n      opacity 0.72s ease,\n      transform 0.72s cubic-bezier(0.2, 0.7, 0.2, 1);\n  }\n\n  .ngg-js .ngg-reveal.ngg-visible {\n    opacity: 1;\n    transform: none;\n  }\n\n  @keyframes ngg-float {\n    0%,\n    100% {\n      transform: translateY(0);\n    }\n\n    50% {\n      transform: translateY(-15px);\n    }\n  }\n\n  @keyframes ngg-pulse {\n    0%,\n    100% {\n      opacity: 0.18;\n      transform: scale(0.94);\n    }\n\n    50% {\n      opacity: 0.52;\n      transform: scale(1.05);\n    }\n  }\n\n  @keyframes ngg-ray {\n    0%,\n    100% {\n      opacity: 0.25;\n    }\n\n    50% {\n      opacity: 0.95;\n    }\n  }\n\n  @keyframes ngg-stage-change {\n    from {\n      opacity: 0;\n      transform: translateY(7px);\n    }\n\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  @keyframes ngg-cta-glow {\n    0%,\n    100% {\n      opacity: 0.67;\n      transform: translate(-50%, -50%) scale(0.94);\n    }\n\n    50% {\n      opacity: 1;\n      transform: translate(-50%, -50%) scale(1.06);\n    }\n  }\n\n  @media (max-width: 959px) {\n    .ngg-benefits,\n    .ngg-specifications {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n\n    .ngg-interactive {\n      grid-template-columns: minmax(0, 1fr);\n      gap: 46px;\n    }\n\n    .ngg-options {\n      width: min(100%, 720px);\n      margin: 0 auto;\n    }\n\n    .ngg-lifestyles {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n\n    .ngg-highlights {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      max-width: 650px;\n    }\n  }\n\n  @media (max-width: 679px) {\n    .ngg-hero {\n      padding: 72px 0 68px;\n    }\n\n    .ngg-section {\n      padding: 67px 0;\n    }\n\n    .ngg-benefits,\n    .ngg-specifications,\n    .ngg-use-list,\n    .ngg-included,\n    .ngg-lifestyles {\n      grid-template-columns: minmax(0, 1fr);\n    }\n\n    .ngg-use-item--featured {\n      grid-column: auto;\n    }\n\n    .ngg-shield-orbit {\n      width: min(310px, 86vw);\n    }\n\n    #novea-glow-guard button.ngg-option:hover,\n    #novea-glow-guard button.ngg-option:focus-visible,\n    #novea-glow-guard button.ngg-option.is-active {\n      transform: none !important;\n    }\n  }\n\n  @media (max-width: 480px) {\n    .ngg-container {\n      width: calc(100% - 24px);\n    }\n\n    .ngg-highlights {\n      grid-template-columns: minmax(0, 1fr);\n    }\n\n    .ngg-selected {\n      grid-template-columns: 38px minmax(0, 1fr);\n      gap: 12px;\n      min-height: 0;\n      padding: 16px;\n    }\n\n    .ngg-selected__number {\n      width: 38px;\n      height: 38px;\n    }\n\n    #novea-glow-guard button.ngg-option {\n      grid-template-columns: 38px minmax(0, 1fr) !important;\n      gap: 13px !important;\n      min-height: 0 !important;\n      padding: 16px !important;\n    }\n\n    .ngg-option__number {\n      width: 38px !important;\n      min-width: 38px !important;\n      height: 38px !important;\n    }\n\n    .ngg-shield-core {\n      width: 58%;\n    }\n\n    .ngg-safety {\n      gap: 13px;\n      padding: 18px;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    #novea-glow-guard *,\n    #novea-glow-guard *::before,\n    #novea-glow-guard *::after {\n      scroll-behavior: auto !important;\n      animation-duration: 0.01ms !important;\n      animation-iteration-count: 1 !important;\n      transition-duration: 0.01ms !important;\n    }\n\n    .ngg-js .ngg-reveal,\n    .ngg-js .ngg-reveal.ngg-visible {\n      opacity: 1;\n      transform: none;\n    }\n  }\n\u003c\/style\u003e","brand":"NOVÉA","offers":[{"title":"Default Title","offer_id":52238314733784,"sku":null,"price":299.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0829\/3063\/0872\/files\/WhatsAppImage2026-07-22at00.09.55.jpg?v=1786721744","url":"https:\/\/noveaza.co.za\/products\/novea%e2%84%a2-glow-guard-spf-50-sunscreen-spray","provider":"NOVÉA","version":"1.0","type":"link"}