{"product_id":"novea™-clean-slate-brush-sponge-cleanser","title":"NOVÉA™ Clean Slate Brush \u0026 Sponge Cleanser","description":"\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003c!-- NOVÉA™ Clean Slate Brush \u0026 Sponge Cleanser --\u003e\n\u003cdiv id=\"novea-clean-slate\" class=\"ncs\" role=\"region\"\u003e\n\u003c!-- HERO --\u003e\n\u003csection class=\"ncs-hero\"\u003e\u003cspan class=\"ncs-orb ncs-orb--one\"\u003e\u003c\/span\u003e \u003cspan class=\"ncs-orb ncs-orb--two\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-hero__copy ncs-reveal\"\u003e\n\u003cspan class=\"ncs-badge\"\u003eNOVÉA™ TOOL CARE\u003c\/span\u003e\n\u003ch1\u003eClean Slate \u003cspan\u003eBrush \u0026amp; Sponge Cleanser\u003c\/span\u003e\n\u003c\/h1\u003e\n\u003cp class=\"ncs-tagline\"\u003eClean Tools. Clear Skin.\u003cbr\u003eFlawless Makeup — Every Time.\u003c\/p\u003e\n\u003cp class=\"ncs-description\"\u003eA concentrated cleanser created to dissolve makeup residue, oils and stubborn product buildup—helping restore your brushes and sponges to a beautifully clean, soft and ready-to-use condition.\u003c\/p\u003e\n\u003cdiv class=\"ncs-highlights\"\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eDeep\u003c\/strong\u003e \u003cspan\u003etool cleansing\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eAll\u003c\/strong\u003e \u003cspan\u003ebrush types\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSponge\u003c\/strong\u003e \u003cspan\u003esafe formula\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eQuick\u003c\/strong\u003e \u003cspan\u003elather action\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-trust\"\u003e\n\u003cspan\u003eNatural bristles\u003c\/span\u003e \u003cspan\u003eSynthetic bristles\u003c\/span\u003e \u003cspan\u003eBeauty sponges\u003c\/span\u003e \u003cspan\u003ePowder puffs\u003c\/span\u003e\n\u003c\/div\u003e\n\u003ca class=\"ncs-button\" href=\"#ncs-benefits\"\u003e Discover Clean Slate \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=\"ncs-section\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-intro ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eA fresh start for every tool\u003c\/span\u003e\n\u003ch2\u003eThe clean behind every flawless finish.\u003c\/h2\u003e\n\u003cp\u003eEvery makeup brush and sponge collects pigment, oils and product residue with use. NOVÉA™ Clean Slate works between bristles and inside sponge pores to loosen trapped buildup—not simply rinse the surface—so your tools feel clean, conditioned and ready for your next makeup application.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- BENEFITS --\u003e\n\u003csection class=\"ncs-section ncs-section--soft\" id=\"ncs-benefits\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eYour complete tool-care ritual\u003c\/span\u003e\n\u003ch2\u003eWhat you gain\u003c\/h2\u003e\n\u003cp\u003eSelect any benefit to reveal more information.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-benefits\"\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e01\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e✦\u003c\/span\u003e\n\u003ch3\u003eHygienically clean tools\u003c\/h3\u003e\n\u003cp\u003eDeep-cleansing action helps wash away accumulated makeup, oils and impurities for fresh-feeling brushes and sponges.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e02\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e◇\u003c\/span\u003e\n\u003ch3\u003eTrue colour payoff\u003c\/h3\u003e\n\u003cp\u003eClean tools help prevent old pigments from mixing with fresh makeup, supporting cleaner colour and more seamless blending.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e03\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e∞\u003c\/span\u003e\n\u003ch3\u003eExtended tool life\u003c\/h3\u003e\n\u003cp\u003eGentle, regular cleaning helps preserve bristle softness, brush shape and sponge integrity.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e04\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e↗\u003c\/span\u003e\n\u003ch3\u003eFaster, easier cleaning\u003c\/h3\u003e\n\u003cp\u003eThe concentrated formula lathers quickly to loosen foundation, powder, cream and long-wear product residue.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e05\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e♡\u003c\/span\u003e\n\u003ch3\u003eGentle tool care\u003c\/h3\u003e\n\u003cp\u003eDesigned to clean effectively while caring for the fibres and materials used in your everyday beauty tools.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003carticle class=\"ncs-benefit ncs-reveal\" role=\"button\" tabindex=\"0\"\u003e\u003cspan class=\"ncs-benefit__number\"\u003e06\u003c\/span\u003e \u003cspan class=\"ncs-benefit__icon\"\u003e✧\u003c\/span\u003e\n\u003ch3\u003eProfessional-level freshness\u003c\/h3\u003e\n\u003cp\u003eMaintain a polished, salon-inspired standard of tool care from the comfort of your own home.\u003c\/p\u003e\n\u003cspan class=\"ncs-benefit__toggle\"\u003e\u003c\/span\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- INTERACTIVE CLEANSING PROCESS --\u003e\n\u003csection class=\"ncs-section ncs-formula\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-heading--light ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eConcentrated cleansing technology\u003c\/span\u003e\n\u003ch2\u003eHow Clean Slate works\u003c\/h2\u003e\n\u003cp\u003eChoose a stage to explore the complete cleansing process.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-formula__layout\"\u003e\n\u003cdiv class=\"ncs-clean-visual ncs-reveal\"\u003e\n\u003cdiv class=\"ncs-clean-orbit\"\u003e\n\u003cspan class=\"ncs-clean-ring ncs-clean-ring--outer\"\u003e\u003c\/span\u003e \u003cspan class=\"ncs-clean-ring ncs-clean-ring--inner\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ncs-clean-core\"\u003e\n\u003cspan class=\"ncs-core-bubble ncs-core-bubble--1\"\u003e\u003c\/span\u003e \u003cspan class=\"ncs-core-bubble ncs-core-bubble--2\"\u003e\u003c\/span\u003e \u003cspan class=\"ncs-core-bubble ncs-core-bubble--3\"\u003e\u003c\/span\u003e \u003cspan class=\"ncs-core-bubble ncs-core-bubble--4\"\u003e\u003c\/span\u003e \u003cstrong class=\"ncs-core-word\"\u003eLATHER\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-active-stage\"\u003e\n\u003cspan class=\"ncs-active-stage__number\"\u003e01\u003c\/span\u003e\n\u003cdiv class=\"ncs-active-stage__content\"\u003e\n\u003cstrong class=\"ncs-stage-title\"\u003eQuick Lather\u003c\/strong\u003e\n\u003cp class=\"ncs-stage-copy\"\u003eA small amount activates with water to create a concentrated cleansing lather.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-stages\"\u003e\n\u003cbutton class=\"ncs-stage is-active ncs-reveal\" type=\"button\"\u003e \u003cspan class=\"ncs-stage__number\"\u003e01\u003c\/span\u003e \u003cspan class=\"ncs-stage__content\"\u003e \u003cstrong\u003eActivate\u003c\/strong\u003e \u003cspan\u003e Water transforms the concentrated cleanser into a rich, workable lather. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ncs-stage ncs-reveal\" type=\"button\"\u003e \u003cspan class=\"ncs-stage__number\"\u003e02\u003c\/span\u003e \u003cspan class=\"ncs-stage__content\"\u003e \u003cstrong\u003ePenetrate\u003c\/strong\u003e \u003cspan\u003e The formula reaches beneath the surface and into densely packed tool fibres. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ncs-stage ncs-reveal\" type=\"button\"\u003e \u003cspan class=\"ncs-stage__number\"\u003e03\u003c\/span\u003e \u003cspan class=\"ncs-stage__content\"\u003e \u003cstrong\u003eRelease\u003c\/strong\u003e \u003cspan\u003e Stubborn makeup and accumulated oils separate from your tools. \u003c\/span\u003e \u003c\/span\u003e \u003c\/button\u003e \u003cbutton class=\"ncs-stage ncs-reveal\" type=\"button\"\u003e \u003cspan class=\"ncs-stage__number\"\u003e04\u003c\/span\u003e \u003cspan class=\"ncs-stage__content\"\u003e \u003cstrong\u003eRefresh\u003c\/strong\u003e \u003cspan\u003e Rinse to reveal fresh-feeling bristles, fibres and sponge surfaces. \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!-- SUITABLE FOR --\u003e\n\u003csection class=\"ncs-section\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eOne formula, your entire collection\u003c\/span\u003e\n\u003ch2\u003eMade for every beauty tool\u003c\/h2\u003e\n\u003cp\u003eA versatile cleaning ritual for the brushes and applicators you use every day.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-tools\"\u003e\n\u003carticle class=\"ncs-card ncs-reveal\"\u003e\u003cspan class=\"ncs-card__number\"\u003e01\u003c\/span\u003e\n\u003ch3\u003eNatural brushes\u003c\/h3\u003e\n\u003cp\u003eGently cleans natural bristles while helping preserve their shape and soft feel.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-card ncs-reveal\"\u003e\u003cspan class=\"ncs-card__number\"\u003e02\u003c\/span\u003e\n\u003ch3\u003eSynthetic brushes\u003c\/h3\u003e\n\u003cp\u003eBreaks down liquid, cream and powder residue held between dense synthetic fibres.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-card ncs-reveal\"\u003e\u003cspan class=\"ncs-card__number\"\u003e03\u003c\/span\u003e\n\u003ch3\u003eBeauty sponges\u003c\/h3\u003e\n\u003cp\u003eWorks inside absorbent sponge pores to help lift foundation, concealer and cream products.\u003c\/p\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-card ncs-reveal\"\u003e\u003cspan class=\"ncs-card__number\"\u003e04\u003c\/span\u003e\n\u003ch3\u003ePowder puffs\u003c\/h3\u003e\n\u003cp\u003eWashes away accumulated powder, pigment and oils for a cleaner application surface.\u003c\/p\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 class=\"ncs-section ncs-section--soft\" id=\"ncs-how-to-use\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eYour clean-tool ritual\u003c\/span\u003e\n\u003ch2\u003eHow to use\u003c\/h2\u003e\n\u003cp\u003eFollow seven simple steps for refreshed brushes and sponges.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003col class=\"ncs-use\"\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e1\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eWet\u003c\/strong\u003e\n\u003cp\u003eWet the brush bristles or sponge under lukewarm running water. Avoid soaking the brush ferrule.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e2\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eDispense\u003c\/strong\u003e\n\u003cp\u003eDispense a small amount into your palm or onto a cleaning mat.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e3\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eCreate a lather\u003c\/strong\u003e\n\u003cp\u003eWork the tool into the cleanser using gentle circular motions.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e4\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eRinse thoroughly\u003c\/strong\u003e\n\u003cp\u003eRinse under lukewarm water until the water runs clear.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e5\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eRemove excess water\u003c\/strong\u003e\n\u003cp\u003eGently squeeze out moisture without pulling or twisting the bristles or sponge.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-reveal\"\u003e\n\u003cspan\u003e6\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eReshape and dry\u003c\/strong\u003e\n\u003cp\u003eReshape bristles and lay brushes flat or hang them upside down to dry.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli class=\"ncs-use__item ncs-use__item--featured ncs-reveal\"\u003e\n\u003cspan\u003e7\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eRepeat regularly\u003c\/strong\u003e\n\u003cp\u003eClean brushes regularly and wash beauty sponges after every use for optimal freshness.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- SPECIFICATIONS --\u003e\n\u003csection class=\"ncs-section\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003ePremium care, beautifully considered\u003c\/span\u003e\n\u003ch2\u003eKey specifications\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-specifications\"\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e01\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eConcentrated formula\u003c\/strong\u003e\n\u003cp\u003eLiquid cleanser for makeup brushes, powder puffs and beauty sponges.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e02\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eDeep-cleansing action\u003c\/strong\u003e\n\u003cp\u003eHelps remove pigment, oils, foundation, powder and product residue.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e03\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eGentle tool care\u003c\/strong\u003e\n\u003cp\u003eDesigned to clean effectively while caring for delicate tool fibres.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e04\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eBrush compatibility\u003c\/strong\u003e\n\u003cp\u003eSuitable for natural and synthetic makeup brush bristles.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e05\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSponge compatibility\u003c\/strong\u003e\n\u003cp\u003eSuitable for beauty sponges, blenders and powder puffs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e06\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eEfficient application\u003c\/strong\u003e\n\u003cp\u003eOnly a small amount is required for each cleaning session.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e07\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003ePremium presentation\u003c\/strong\u003e\n\u003cp\u003eBlush-pink presentation with signature NOVÉA™ branding.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e08\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003ePremium packaging\u003c\/strong\u003e\n\u003cp\u003ePresented in a matte-black NOVÉA™ gift box.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/article\u003e\n\u003carticle class=\"ncs-specification ncs-reveal\"\u003e\u003cspan\u003e09\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eProudly South African\u003c\/strong\u003e\n\u003cp\u003ePremium beauty-tool care created for your at-home ritual.\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!-- INCLUDED --\u003e\n\u003csection class=\"ncs-section ncs-included-section\"\u003e\n\u003cdiv class=\"ncs-container\"\u003e\n\u003cdiv class=\"ncs-heading ncs-reveal\"\u003e\n\u003cspan class=\"ncs-eyebrow\"\u003eThe complete presentation\u003c\/span\u003e\n\u003ch2\u003eWhat’s included\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-included\"\u003e\n\u003cdiv class=\"ncs-included__item ncs-reveal\"\u003e\n\u003cspan\u003e01\u003c\/span\u003e\n\u003cdiv\u003e\n\u003csmall\u003eInside your order\u003c\/small\u003e \u003cstrong\u003e NOVÉA™ Clean Slate Brush \u0026amp; Sponge Cleanser \u003c\/strong\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ncs-included__item ncs-reveal\"\u003e\n\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\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- FINAL CTA --\u003e\n\u003csection class=\"ncs-cta\"\u003e\u003cspan class=\"ncs-cta__glow\"\u003e\u003c\/span\u003e\n\u003cdiv class=\"ncs-container ncs-cta__inner ncs-reveal\"\u003e\n\u003cspan class=\"ncs-badge ncs-badge--dark\"\u003e NOVÉA™ CLEAN SLATE \u003c\/span\u003e\n\u003ch2\u003eBecause clean tools are the foundation of flawless-looking skin.\u003c\/h2\u003e\n\u003cp\u003eWash away yesterday’s makeup and give every beauty look a clean start.\u003c\/p\u003e\n\u003ca class=\"ncs-button ncs-button--light\" href=\"#ncs-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=\"ncs-disclaimer\"\u003eFor cleaning cosmetic tools only. Follow the directions supplied with the product. Test on a small area of delicate tools before first use. Do not ingest and avoid direct contact with eyes.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  #novea-clean-slate {\n    --ncs-ink: #171518;\n    --ncs-text: #413c42;\n    --ncs-muted: #746d75;\n    --ncs-rose: #b76e79;\n    --ncs-rose-dark: #8f4e5a;\n    --ncs-rose-light: #edc8ce;\n    --ncs-blush: #f9e7ea;\n    --ncs-border: rgba(23, 21, 24, 0.11);\n    --ncs-shadow: 0 16px 44px rgba(35, 24, 31, 0.09);\n\n    width: 100%;\n    overflow: hidden;\n    color: var(--ncs-text);\n    background: #ffffff;\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-clean-slate *,\n  #novea-clean-slate *::before,\n  #novea-clean-slate *::after {\n    box-sizing: border-box;\n  }\n\n  #novea-clean-slate h1,\n  #novea-clean-slate h2,\n  #novea-clean-slate h3,\n  #novea-clean-slate p {\n    margin: 0;\n    padding: 0;\n  }\n\n  #novea-clean-slate button,\n  #novea-clean-slate a {\n    font: inherit;\n  }\n\n  .ncs-container {\n    position: relative;\n    z-index: 2;\n    width: min(1140px, calc(100% - 32px));\n    margin: 0 auto;\n  }\n\n  .ncs-section {\n    position: relative;\n    padding: 78px 0;\n  }\n\n  .ncs-section--soft {\n    background:\n      radial-gradient(\n        circle at 7% 8%,\n        rgba(249, 225, 230, 0.86),\n        transparent 28%\n      ),\n      linear-gradient(180deg, #fefcfc, #f7f3f5);\n  }\n\n  .ncs-heading,\n  .ncs-intro {\n    max-width: 780px;\n    margin: 0 auto 40px;\n    text-align: center;\n  }\n\n  .ncs-intro {\n    margin-bottom: 0;\n  }\n\n  .ncs-heading h2,\n  .ncs-intro h2,\n  .ncs-cta h2 {\n    margin: 8px 0 14px;\n    color: var(--ncs-ink);\n    font-size: clamp(31px, 5vw, 52px);\n    font-weight: 760;\n    line-height: 1.07;\n    letter-spacing: -0.045em;\n  }\n\n  .ncs-heading p,\n  .ncs-intro p {\n    color: var(--ncs-muted);\n    font-size: 16px;\n  }\n\n  .ncs-eyebrow {\n    display: inline-block;\n    color: var(--ncs-rose);\n    font-size: 10px;\n    font-weight: 850;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n  }\n\n  \/* HERO *\/\n  .ncs-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 89% 88%,\n        rgba(235, 206, 212, 0.72),\n        transparent 30%\n      ),\n      linear-gradient(145deg, #ffffff, #f8e8eb 53%, #ede8ee);\n  }\n\n  .ncs-hero__copy {\n    width: min(100%, 840px);\n    margin: 0 auto;\n    text-align: center;\n  }\n\n  .ncs-badge {\n    display: inline-flex;\n    padding: 8px 14px;\n    border: 1px solid rgba(183, 110, 121, 0.31);\n    border-radius: 999px;\n    color: var(--ncs-rose-dark);\n    background: rgba(255, 255, 255, 0.79);\n    box-shadow: 0 8px 24px rgba(183, 110, 121, 0.1);\n    font-size: 10px;\n    font-weight: 850;\n    letter-spacing: 0.17em;\n  }\n\n  .ncs-hero h1 {\n    margin: 21px 0 17px;\n    color: var(--ncs-ink);\n    font-size: clamp(45px, 8vw, 78px);\n    font-weight: 790;\n    line-height: 0.97;\n    letter-spacing: -0.06em;\n  }\n\n  .ncs-hero h1 span {\n    display: block;\n    margin-top: 10px;\n    color: var(--ncs-rose-dark);\n    font-size: 0.46em;\n    font-weight: 720;\n    line-height: 1.15;\n    letter-spacing: -0.035em;\n  }\n\n  .ncs-tagline {\n    margin-bottom: 15px !important;\n    color: var(--ncs-rose-dark);\n    font-size: clamp(19px, 3vw, 24px);\n    font-weight: 760;\n    line-height: 1.3;\n  }\n\n  .ncs-description {\n    max-width: 680px;\n    margin: 0 auto !important;\n    color: var(--ncs-muted);\n    font-size: 16px;\n  }\n\n  .ncs-highlights {\n    display: grid;\n    grid-template-columns: repeat(4, minmax(0, 1fr));\n    gap: 11px;\n    max-width: 780px;\n    margin: 28px auto 0;\n  }\n\n  .ncs-highlights div {\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    min-height: 78px;\n    padding: 13px;\n    border: 1px solid var(--ncs-border);\n    border-radius: 16px;\n    background: rgba(255, 255, 255, 0.84);\n    box-shadow: 0 7px 20px rgba(35, 24, 31, 0.055);\n  }\n\n  .ncs-highlights strong {\n    color: var(--ncs-rose-dark);\n    font-size: 15px;\n  }\n\n  .ncs-highlights span {\n    color: #625c63;\n    font-size: 12px;\n  }\n\n  .ncs-trust {\n    display: flex;\n    justify-content: center;\n    flex-wrap: wrap;\n    gap: 11px 20px;\n    margin-top: 20px;\n  }\n\n  .ncs-trust span {\n    position: relative;\n    padding-left: 15px;\n    color: #696269;\n    font-size: 12px;\n    font-weight: 700;\n  }\n\n  .ncs-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(--ncs-rose);\n    content: \"\";\n    transform: translateY(-50%);\n  }\n\n  .ncs-button {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    gap: 10px;\n    min-height: 51px;\n    margin-top: 27px;\n    padding: 12px 22px;\n    border: 1px solid var(--ncs-rose);\n    border-radius: 999px;\n    color: #ffffff;\n    background: linear-gradient(\n      135deg,\n      var(--ncs-rose-dark),\n      var(--ncs-rose)\n    );\n    box-shadow: 0 13px 29px rgba(183, 110, 121, 0.27);\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  .ncs-button:hover,\n  .ncs-button:focus-visible {\n    outline: none;\n    box-shadow: 0 17px 36px rgba(183, 110, 121, 0.35);\n    transform: translateY(-3px);\n  }\n\n  .ncs-orb {\n    position: absolute;\n    border-radius: 50%;\n    animation: ncs-float 7s ease-in-out infinite;\n  }\n\n  .ncs-orb--one {\n    top: 8%;\n    left: 3%;\n    width: 145px;\n    height: 145px;\n    background: rgba(225, 142, 156, 0.13);\n  }\n\n  .ncs-orb--two {\n    right: 3%;\n    bottom: 7%;\n    width: 190px;\n    height: 190px;\n    background: rgba(169, 137, 178, 0.11);\n    animation-delay: -3s;\n  }\n\n  \/* BENEFITS *\/\n  .ncs-benefits {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 15px;\n  }\n\n  .ncs-benefit {\n    position: relative;\n    min-height: 178px;\n    padding: 23px;\n    overflow: hidden;\n    border: 1px solid var(--ncs-border);\n    border-radius: 20px;\n    background: #ffffff;\n    box-shadow: var(--ncs-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  .ncs-benefit:hover,\n  .ncs-benefit:focus-visible,\n  .ncs-benefit.is-open {\n    border-color: rgba(183, 110, 121, 0.44);\n    outline: none;\n    box-shadow: 0 22px 52px rgba(35, 24, 31, 0.13);\n    transform: translateY(-4px);\n  }\n\n  .ncs-benefit__number {\n    position: absolute;\n    top: 20px;\n    right: 51px;\n    color: rgba(183, 110, 121, 0.72);\n    font-size: 9px;\n    font-weight: 900;\n  }\n\n  .ncs-benefit__icon {\n    display: grid;\n    width: 42px;\n    height: 42px;\n    margin-bottom: 15px;\n    border-radius: 13px;\n    color: var(--ncs-rose-dark);\n    background: linear-gradient(180deg, #ffffff, var(--ncs-blush));\n    box-shadow: 0 7px 18px rgba(183, 110, 121, 0.17);\n    place-items: center;\n  }\n\n  .ncs-benefit h3 {\n    padding-right: 25px !important;\n    color: var(--ncs-ink);\n    font-size: 17px;\n  }\n\n  .ncs-benefit p {\n    display: block;\n    max-height: 0;\n    margin-top: 0 !important;\n    overflow: hidden;\n    color: var(--ncs-muted);\n    font-size: 14px;\n    opacity: 0;\n    transition:\n      max-height 0.35s ease,\n      margin 0.3s ease,\n      opacity 0.3s ease;\n  }\n\n  .ncs-benefit.is-open p {\n    max-height: 190px;\n    margin-top: 9px !important;\n    opacity: 1;\n  }\n\n  .ncs-benefit__toggle {\n    position: absolute;\n    top: 19px;\n    right: 19px;\n    width: 23px;\n    height: 23px;\n    border: 1px solid rgba(183, 110, 121, 0.3);\n    border-radius: 50%;\n  }\n\n  .ncs-benefit__toggle::before,\n  .ncs-benefit__toggle::after {\n    position: absolute;\n    top: 50%;\n    left: 50%;\n    width: 9px;\n    height: 1px;\n    background: var(--ncs-rose);\n    content: \"\";\n    transform: translate(-50%, -50%);\n    transition: transform 0.25s ease;\n  }\n\n  .ncs-benefit__toggle::after {\n    transform: translate(-50%, -50%) rotate(90deg);\n  }\n\n  .ncs-benefit.is-open .ncs-benefit__toggle::after {\n    transform: translate(-50%, -50%);\n  }\n\n  \/* INTERACTIVE FORMULA *\/\n  .ncs-formula {\n    color: #ffffff;\n    background:\n      radial-gradient(\n        circle at 10% 12%,\n        rgba(183, 110, 121, 0.24),\n        transparent 29%\n      ),\n      radial-gradient(\n        circle at 90% 89%,\n        rgba(125, 89, 136, 0.19),\n        transparent 30%\n      ),\n      var(--ncs-ink);\n  }\n\n  .ncs-heading--light h2 {\n    color: #ffffff;\n  }\n\n  .ncs-heading--light p {\n    color: rgba(255, 255, 255, 0.63);\n  }\n\n  .ncs-formula__layout {\n    display: grid;\n    align-items: center;\n    gap: 44px;\n  }\n\n  .ncs-clean-visual {\n    text-align: center;\n  }\n\n  .ncs-clean-orbit {\n    --stage-colour: #e8a7b1;\n    --stage-glow: rgba(232, 167, 177, 0.52);\n\n    position: relative;\n    display: grid;\n    width: min(350px, 86vw);\n    aspect-ratio: 1;\n    margin: 0 auto 24px;\n    place-items: center;\n  }\n\n  .ncs-clean-orbit::before {\n    position: absolute;\n    width: 63%;\n    height: 63%;\n    border-radius: 50%;\n    background: var(--stage-glow);\n    filter: blur(48px);\n    opacity: 0.58;\n    content: \"\";\n    transition: background 0.45s ease;\n  }\n\n  .ncs-clean-ring {\n    position: absolute;\n    border: 1px solid var(--stage-colour);\n    border-radius: 50%;\n    transition: border-color 0.45s ease;\n  }\n\n  .ncs-clean-ring--outer {\n    width: 94%;\n    height: 94%;\n    animation: ncs-pulse 3s ease-in-out infinite;\n  }\n\n  .ncs-clean-ring--inner {\n    width: 73%;\n    height: 73%;\n    animation: ncs-pulse 3s 1s ease-in-out infinite;\n  }\n\n  .ncs-clean-core {\n    position: relative;\n    z-index: 2;\n    display: grid;\n    width: 52%;\n    aspect-ratio: 1;\n    overflow: hidden;\n    border: 2px solid var(--stage-colour);\n    border-radius: 50%;\n    background: linear-gradient(145deg, #fbe8eb, #d999a5);\n    box-shadow:\n      inset 0 0 35px var(--stage-glow),\n      0 0 40px var(--stage-glow);\n    place-items: center;\n    transition:\n      border-color 0.45s ease,\n      box-shadow 0.45s ease;\n  }\n\n  .ncs-clean-core strong {\n    position: relative;\n    z-index: 3;\n    color: #5d3941;\n    font-size: 13px;\n    font-weight: 900;\n    letter-spacing: 0.14em;\n  }\n\n  .ncs-core-bubble {\n    position: absolute;\n    border: 1px solid rgba(255, 255, 255, 0.76);\n    border-radius: 50%;\n    background: rgba(255, 255, 255, 0.25);\n    animation: ncs-core-bubble 4s ease-in-out infinite;\n  }\n\n  .ncs-core-bubble--1 {\n    top: 18%;\n    left: 19%;\n    width: 25px;\n    height: 25px;\n  }\n\n  .ncs-core-bubble--2 {\n    top: 25%;\n    right: 17%;\n    width: 16px;\n    height: 16px;\n    animation-delay: -1s;\n  }\n\n  .ncs-core-bubble--3 {\n    right: 25%;\n    bottom: 17%;\n    width: 31px;\n    height: 31px;\n    animation-delay: -2s;\n  }\n\n  .ncs-core-bubble--4 {\n    bottom: 25%;\n    left: 18%;\n    width: 13px;\n    height: 13px;\n    animation-delay: -3s;\n  }\n\n  .ncs-active-stage {\n    display: flex;\n    align-items: flex-start;\n    gap: 14px;\n    width: min(100%, 460px);\n    min-height: 126px;\n    margin: 0 auto;\n    padding: 18px;\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 18px;\n    color: #ffffff;\n    background: rgba(255, 255, 255, 0.065);\n    text-align: left;\n  }\n\n  .ncs-active-stage__number {\n    display: grid;\n    width: 39px;\n    height: 39px;\n    flex: 0 0 39px;\n    border-radius: 50%;\n    color: #ffffff;\n    background: var(--ncs-rose);\n    font-size: 10px;\n    font-weight: 900;\n    place-items: center;\n  }\n\n  .ncs-active-stage__content {\n    display: block;\n    min-width: 0;\n  }\n\n  .ncs-active-stage strong {\n    display: block;\n    margin-bottom: 5px;\n    color: #ffffff;\n    font-size: 16px;\n  }\n\n  .ncs-active-stage p {\n    display: block !important;\n    visibility: visible !important;\n    max-height: none !important;\n    overflow: visible !important;\n    color: rgba(255, 255, 255, 0.63);\n    font-size: 13px;\n    opacity: 1 !important;\n  }\n\n  \/*\n    FIXED STAGE GRID\n    Strong selectors and !important rules prevent Shopify theme\n    button styles from moving the text outside the cards.\n  *\/\n  #novea-clean-slate .ncs-stages {\n    display: grid !important;\n    grid-template-columns: minmax(0, 1fr) !important;\n    gap: 12px !important;\n    width: 100% !important;\n    min-width: 0 !important;\n  }\n\n  #novea-clean-slate button.ncs-stage {\n    position: relative !important;\n    display: grid !important;\n    grid-template-columns: 42px minmax(0, 1fr) !important;\n    grid-template-rows: auto !important;\n    align-items: start !important;\n    justify-content: stretch !important;\n    column-gap: 15px !important;\n\n    width: 100% !important;\n    min-width: 0 !important;\n    max-width: 100% !important;\n    height: auto !important;\n    min-height: 112px !important;\n    margin: 0 !important;\n    padding: 18px !important;\n    overflow: hidden !important;\n\n    border: 1px solid rgba(255, 255, 255, 0.11) !important;\n    border-radius: 18px !important;\n    outline: none !important;\n    color: #ffffff !important;\n    background: rgba(255, 255, 255, 0.055) !important;\n    box-shadow: none !important;\n\n    text-align: left !important;\n    text-decoration: none !important;\n    text-transform: none !important;\n    letter-spacing: normal !important;\n    line-height: 1.5 !important;\n    white-space: normal !important;\n\n    cursor: pointer !important;\n    appearance: none !important;\n    -webkit-appearance: none !important;\n\n    transition:\n      transform 0.25s ease,\n      border-color 0.25s ease,\n      background 0.25s ease !important;\n  }\n\n  #novea-clean-slate button.ncs-stage::before,\n  #novea-clean-slate button.ncs-stage::after {\n    display: none !important;\n    width: 0 !important;\n    height: 0 !important;\n    border: 0 !important;\n    box-shadow: none !important;\n    content: none !important;\n  }\n\n  #novea-clean-slate button.ncs-stage \u003e .ncs-stage__number {\n    position: static !important;\n    display: grid !important;\n    grid-column: 1 !important;\n    grid-row: 1 !important;\n    align-self: start !important;\n    place-items: center !important;\n\n    width: 42px !important;\n    height: 42px !important;\n    min-width: 42px !important;\n    min-height: 42px !important;\n    margin: 0 !important;\n    padding: 0 !important;\n\n    border: 1px solid rgba(255, 255, 255, 0.14) !important;\n    border-radius: 50% !important;\n    color: #f4cbd1 !important;\n    background: rgba(255, 255, 255, 0.07) !important;\n\n    font-size: 10px !important;\n    font-weight: 900 !important;\n    line-height: 1 !important;\n  }\n\n  #novea-clean-slate button.ncs-stage \u003e .ncs-stage__content {\n    position: static !important;\n    display: block !important;\n    grid-column: 2 !important;\n    grid-row: 1 !important;\n    align-self: start !important;\n\n    width: auto !important;\n    min-width: 0 !important;\n    height: auto !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    overflow: visible !important;\n\n    color: #ffffff !important;\n    background: transparent !important;\n    opacity: 1 !important;\n    transform: none !important;\n  }\n\n  #novea-clean-slate\n    button.ncs-stage\n    \u003e .ncs-stage__content\n    \u003e strong {\n    position: static !important;\n    display: block !important;\n    visibility: visible !important;\n\n    width: auto !important;\n    height: auto !important;\n    margin: 0 0 4px !important;\n    padding: 0 !important;\n    overflow: visible !important;\n\n    color: #ffffff !important;\n    background: transparent !important;\n    opacity: 1 !important;\n    transform: none !important;\n\n    font-size: 15px !important;\n    font-weight: 700 !important;\n    line-height: 1.35 !important;\n    letter-spacing: normal !important;\n    text-align: left !important;\n    text-transform: none !important;\n    white-space: normal !important;\n  }\n\n  #novea-clean-slate\n    button.ncs-stage\n    \u003e .ncs-stage__content\n    \u003e span {\n    position: static !important;\n    display: block !important;\n    visibility: visible !important;\n\n    width: auto !important;\n    height: auto !important;\n    max-width: none !important;\n    max-height: none !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    overflow: visible !important;\n\n    color: rgba(255, 255, 255, 0.64) !important;\n    background: transparent !important;\n    opacity: 1 !important;\n    transform: none !important;\n\n    font-size: 12px !important;\n    font-weight: 400 !important;\n    line-height: 1.55 !important;\n    letter-spacing: normal !important;\n    text-align: left !important;\n    text-transform: none !important;\n    white-space: normal !important;\n  }\n\n  #novea-clean-slate button.ncs-stage:hover,\n  #novea-clean-slate button.ncs-stage:focus-visible,\n  #novea-clean-slate button.ncs-stage.is-active {\n    border-color: rgba(232, 167, 177, 0.62) !important;\n    outline: none !important;\n    color: #ffffff !important;\n    background: rgba(255, 255, 255, 0.11) !important;\n    box-shadow: none !important;\n    transform: translateX(5px) !important;\n  }\n\n  \/* GENERAL CARDS *\/\n  .ncs-tools {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 14px;\n  }\n\n  .ncs-card {\n    min-height: 170px;\n    padding: 21px;\n    border: 1px solid var(--ncs-border);\n    border-radius: 19px;\n    background: #ffffff;\n    box-shadow: var(--ncs-shadow);\n    transition:\n      transform 0.27s ease,\n      border-color 0.27s ease;\n  }\n\n  .ncs-card:hover {\n    border-color: rgba(183, 110, 121, 0.4);\n    transform: translateY(-4px);\n  }\n\n  .ncs-card__number {\n    display: block;\n    margin-bottom: 25px;\n    color: var(--ncs-rose);\n    font-size: 10px;\n    font-weight: 900;\n  }\n\n  .ncs-card h3 {\n    margin-bottom: 6px !important;\n    color: var(--ncs-ink);\n    font-size: 16px;\n  }\n\n  .ncs-card p {\n    color: var(--ncs-muted);\n    font-size: 13px;\n  }\n\n  \/* HOW TO USE *\/\n  .ncs-use {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 12px;\n    max-width: 1040px;\n    margin: 0 auto;\n    padding: 0;\n    list-style: none;\n  }\n\n  .ncs-use__item {\n    display: flex;\n    align-items: flex-start;\n    gap: 15px;\n    min-height: 119px;\n    padding: 19px;\n    border: 1px solid var(--ncs-border);\n    border-radius: 18px;\n    background: #ffffff;\n    box-shadow: var(--ncs-shadow);\n    transition: transform 0.26s ease;\n  }\n\n  .ncs-use__item:hover {\n    transform: translateY(-3px);\n  }\n\n  .ncs-use__item \u003e span {\n    display: grid;\n    width: 39px;\n    height: 39px;\n    flex: 0 0 39px;\n    border-radius: 50%;\n    color: var(--ncs-ink);\n    background: linear-gradient(180deg, #ffffff, var(--ncs-rose-light));\n    font-size: 12px;\n    font-weight: 900;\n    place-items: center;\n  }\n\n  .ncs-use__item strong {\n    display: block;\n    margin-bottom: 4px;\n    color: var(--ncs-ink);\n    font-size: 15px;\n  }\n\n  .ncs-use__item p {\n    color: var(--ncs-muted);\n    font-size: 13px;\n  }\n\n  .ncs-use__item--featured {\n    background:\n      radial-gradient(\n        circle at 100% 0,\n        rgba(237, 200, 206, 0.45),\n        transparent 45%\n      ),\n      #ffffff;\n  }\n\n  \/* SPECIFICATIONS *\/\n  .ncs-specifications {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 14px;\n  }\n\n  .ncs-specification {\n    display: flex;\n    align-items: flex-start;\n    gap: 14px;\n    min-height: 130px;\n    padding: 21px;\n    border: 1px solid var(--ncs-border);\n    border-radius: 19px;\n    background: #ffffff;\n    box-shadow: var(--ncs-shadow);\n    transition:\n      transform 0.27s ease,\n      border-color 0.27s ease;\n  }\n\n  .ncs-specification:hover {\n    border-color: rgba(183, 110, 121, 0.4);\n    transform: translateY(-4px);\n  }\n\n  .ncs-specification \u003e span {\n    color: var(--ncs-rose);\n    font-size: 10px;\n    font-weight: 900;\n  }\n\n  .ncs-specification strong {\n    display: block;\n    margin-bottom: 6px;\n    color: var(--ncs-ink);\n    font-size: 14px;\n  }\n\n  .ncs-specification p {\n    color: var(--ncs-muted);\n    font-size: 13px;\n  }\n\n  \/* INCLUDED *\/\n  .ncs-included-section {\n    background:\n      radial-gradient(\n        circle at 15% 15%,\n        rgba(240, 202, 208, 0.58),\n        transparent 29%\n      ),\n      #f8f4f6;\n  }\n\n  .ncs-included {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 14px;\n    max-width: 920px;\n    margin: 0 auto;\n  }\n\n  .ncs-included__item {\n    display: flex;\n    align-items: center;\n    gap: 18px;\n    min-height: 101px;\n    padding: 21px;\n    border: 1px solid var(--ncs-border);\n    border-radius: 19px;\n    background: #ffffff;\n    box-shadow: var(--ncs-shadow);\n  }\n\n  .ncs-included__item \u003e span {\n    display: grid;\n    width: 43px;\n    height: 43px;\n    flex: 0 0 43px;\n    border-radius: 50%;\n    color: var(--ncs-rose-dark);\n    background: var(--ncs-blush);\n    font-size: 10px;\n    font-weight: 900;\n    place-items: center;\n  }\n\n  .ncs-included__item small,\n  .ncs-included__item strong {\n    display: block;\n  }\n\n  .ncs-included__item small {\n    margin-bottom: 3px;\n    color: var(--ncs-muted);\n    font-size: 9px;\n    font-weight: 800;\n    letter-spacing: 0.11em;\n    text-transform: uppercase;\n  }\n\n  .ncs-included__item strong {\n    color: var(--ncs-ink);\n    font-size: 14px;\n  }\n\n  \/* CTA *\/\n  .ncs-cta {\n    position: relative;\n    padding: 91px 0;\n    overflow: hidden;\n    color: #ffffff;\n    background: var(--ncs-ink);\n    text-align: center;\n  }\n\n  .ncs-cta__inner {\n    max-width: 900px;\n  }\n\n  .ncs-cta h2 {\n    margin-top: 20px;\n    color: #ffffff;\n  }\n\n  .ncs-cta p {\n    color: rgba(255, 255, 255, 0.63);\n  }\n\n  .ncs-badge--dark {\n    color: #f0c8cf;\n    border-color: rgba(255, 255, 255, 0.14);\n    background: rgba(255, 255, 255, 0.06);\n  }\n\n  .ncs-button--light {\n    color: var(--ncs-ink);\n    border-color: #ffffff;\n    background: #ffffff;\n  }\n\n  .ncs-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(183, 110, 121, 0.4),\n      transparent 68%\n    );\n    transform: translate(-50%, -50%);\n    animation: ncs-glow 4s ease-in-out infinite;\n  }\n\n  .ncs-disclaimer {\n    padding: 17px !important;\n    color: #807981;\n    background: #f3f0f2;\n    font-size: 10px;\n    text-align: center;\n  }\n\n  \/* REVEAL ANIMATION *\/\n  .ncs-reveal {\n    opacity: 1;\n    transform: none;\n  }\n\n  .ncs-js .ncs-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  .ncs-js .ncs-reveal.ncs-visible {\n    opacity: 1;\n    transform: translateY(0);\n  }\n\n  @keyframes ncs-float {\n    0%,\n    100% {\n      transform: translateY(0);\n    }\n\n    50% {\n      transform: translateY(-18px);\n    }\n  }\n\n  @keyframes ncs-pulse {\n    0%,\n    100% {\n      opacity: 0.17;\n      transform: scale(0.94);\n    }\n\n    50% {\n      opacity: 0.48;\n      transform: scale(1.05);\n    }\n  }\n\n  @keyframes ncs-core-bubble {\n    0%,\n    100% {\n      opacity: 0.42;\n      transform: translateY(5px) scale(0.9);\n    }\n\n    50% {\n      opacity: 0.92;\n      transform: translateY(-7px) scale(1.08);\n    }\n  }\n\n  @keyframes ncs-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 (min-width: 680px) {\n    .ncs-benefits,\n    .ncs-specifications,\n    .ncs-included,\n    .ncs-use {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n\n    .ncs-tools {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n\n    .ncs-use__item--featured {\n      grid-column: 1 \/ -1;\n    }\n  }\n\n  @media (min-width: 960px) {\n    .ncs-section {\n      padding: 96px 0;\n    }\n\n    .ncs-benefits,\n    .ncs-specifications {\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n    }\n\n    .ncs-tools {\n      grid-template-columns: repeat(4, minmax(0, 1fr));\n    }\n\n    .ncs-formula__layout {\n      grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);\n      gap: 65px;\n    }\n\n    .ncs-use {\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n    }\n\n    .ncs-use__item--featured {\n      grid-column: 2 \/ 3;\n    }\n  }\n\n  @media (max-width: 679px) {\n    .ncs-hero {\n      padding: 72px 0 68px;\n    }\n\n    .ncs-highlights {\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n    }\n\n    #novea-clean-slate button.ncs-stage:hover,\n    #novea-clean-slate button.ncs-stage:focus-visible,\n    #novea-clean-slate button.ncs-stage.is-active {\n      transform: none !important;\n    }\n  }\n\n  @media (max-width: 420px) {\n    .ncs-container {\n      width: calc(100% - 22px);\n    }\n\n    .ncs-highlights {\n      grid-template-columns: 1fr;\n    }\n\n    #novea-clean-slate button.ncs-stage {\n      grid-template-columns: 38px minmax(0, 1fr) !important;\n      column-gap: 13px !important;\n      min-height: 108px !important;\n      padding: 15px !important;\n    }\n\n    #novea-clean-slate\n      button.ncs-stage\n      \u003e .ncs-stage__number {\n      width: 38px !important;\n      height: 38px !important;\n      min-width: 38px !important;\n      min-height: 38px !important;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    #novea-clean-slate *,\n    #novea-clean-slate *::before,\n    #novea-clean-slate *::after {\n      animation-duration: 0.01ms !important;\n      animation-iteration-count: 1 !important;\n      scroll-behavior: auto !important;\n      transition-duration: 0.01ms !important;\n    }\n\n    .ncs-js .ncs-reveal,\n    .ncs-js .ncs-reveal.ncs-visible {\n      opacity: 1;\n      transform: none;\n    }\n  }\n\u003c\/style\u003e\n\u003cp\u003e\u003cscript\u003e\n  (function () {\n    function initialiseCleanSlate(root) {\n      if (!root || root.getAttribute(\"data-ncs-ready\") === \"true\") {\n        return;\n      }\n\n      root.setAttribute(\"data-ncs-ready\", \"true\");\n      root.classList.add(\"ncs-js\");\n\n      \/* Reveal animations *\/\n      var revealItems = root.querySelectorAll(\".ncs-reveal\");\n\n      if (\"IntersectionObserver\" in window) {\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(\"ncs-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 = ((index % 4) * 55) + \"ms\";\n          observer.observe(item);\n        });\n\n        \/* Ensures Shopify never leaves content invisible *\/\n        window.setTimeout(function () {\n          revealItems.forEach(function (item) {\n            item.classList.add(\"ncs-visible\");\n          });\n        }, 1800);\n      } else {\n        revealItems.forEach(function (item) {\n          item.classList.add(\"ncs-visible\");\n        });\n      }\n\n      \/* Expandable benefit cards *\/\n      var benefitCards = root.querySelectorAll(\".ncs-benefit\");\n\n      function toggleBenefit(card) {\n        var open = card.classList.toggle(\"is-open\");\n\n        card.setAttribute(\n          \"aria-expanded\",\n          open ? \"true\" : \"false\"\n        );\n      }\n\n      benefitCards.forEach(function (card) {\n        card.addEventListener(\"click\", function () {\n          toggleBenefit(card);\n        });\n\n        card.addEventListener(\"keydown\", function (event) {\n          if (event.key !== \"Enter\" \u0026\u0026 event.key !== \" \") {\n            return;\n          }\n\n          event.preventDefault();\n          toggleBenefit(card);\n        });\n      });\n\n      \/* Interactive cleansing stages *\/\n      var buttons = root.querySelectorAll(\".ncs-stage\");\n      var orbit = root.querySelector(\".ncs-clean-orbit\");\n      var coreWord = root.querySelector(\".ncs-core-word\");\n      var stageNumber = root.querySelector(\n        \".ncs-active-stage__number\"\n      );\n      var stageTitle = root.querySelector(\".ncs-stage-title\");\n      var stageCopy = root.querySelector(\".ncs-stage-copy\");\n\n      function updateStage(button) {\n        if (!button) {\n          return;\n        }\n\n        var number =\n          button.getAttribute(\"data-number\") || \"01\";\n\n        var word =\n          button.getAttribute(\"data-word\") || \"LATHER\";\n\n        var title =\n          button.getAttribute(\"data-title\") || \"Quick Lather\";\n\n        var copy =\n          button.getAttribute(\"data-copy\") ||\n          \"A small amount activates with water.\";\n\n        var colour =\n          button.getAttribute(\"data-colour\") || \"#e8a7b1\";\n\n        var glow =\n          button.getAttribute(\"data-glow\") ||\n          \"rgba(232,167,177,.52)\";\n\n        buttons.forEach(function (item) {\n          var selected = item === button;\n\n          item.classList.toggle(\"is-active\", selected);\n          item.setAttribute(\n            \"aria-pressed\",\n            selected ? \"true\" : \"false\"\n          );\n        });\n\n        if (orbit) {\n          orbit.style.setProperty(\"--stage-colour\", colour);\n          orbit.style.setProperty(\"--stage-glow\", glow);\n        }\n\n        if (coreWord) {\n          coreWord.textContent = word;\n        }\n\n        if (stageNumber) {\n          stageNumber.textContent = number;\n        }\n\n        if (stageTitle) {\n          stageTitle.textContent = title;\n        }\n\n        if (stageCopy) {\n          stageCopy.textContent = copy;\n        }\n      }\n\n      buttons.forEach(function (button) {\n        button.addEventListener(\"click\", function (event) {\n          event.preventDefault();\n          event.stopPropagation();\n          updateStage(button);\n        });\n      });\n\n      var initialButton =\n        root.querySelector(\".ncs-stage.is-active\") ||\n        buttons[0];\n\n      if (initialButton) {\n        updateStage(initialButton);\n      }\n    }\n\n    function initialiseAll(scope) {\n      scope = scope || document;\n\n      if (\n        scope.matches \u0026\u0026\n        scope.matches(\"#novea-clean-slate\")\n      ) {\n        initialiseCleanSlate(scope);\n      }\n\n      if (scope.querySelectorAll) {\n        scope\n          .querySelectorAll(\"#novea-clean-slate\")\n          .forEach(function (root) {\n            initialiseCleanSlate(root);\n          });\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    \/* Shopify Theme Editor support *\/\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(\"#novea-clean-slate\")\n        ) {\n          root = event.target;\n        } else if (event.target.querySelector) {\n          root = event.target.querySelector(\n            \"#novea-clean-slate\"\n          );\n        }\n\n        if (!root) {\n          return;\n        }\n\n        root.removeAttribute(\"data-ncs-ready\");\n        root.classList.remove(\"ncs-js\");\n\n        initialiseCleanSlate(root);\n      }\n    );\n  })();\n\u003c\/script\u003e ```\u003c\/p\u003e","brand":"NOVÉA","offers":[{"title":"Default Title","offer_id":52234694820056,"sku":null,"price":229.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0829\/3063\/0872\/files\/WhatsAppImage2026-07-25at10.14.52.jpg?v=1786651911","url":"https:\/\/noveaza.co.za\/products\/novea%e2%84%a2-clean-slate-brush-sponge-cleanser","provider":"NOVÉA","version":"1.0","type":"link"}