{"title":"Grooming","description":"\u003ch1 style=\"text-align:center;\"\u003e We sell everything so that you have the best at home: grooming table, dog scissors, professional clippers, etc. \u003c\/h1\u003e\n\u003ch2 style=\"text-align:center;\"\u003e Grooming is an art we cultivate! \u003c\/h2\u003e\n\u003ch3 style=\"text-align:center;\"\u003e Do you know that? Grooming equipment has become \u003cstrong\u003e a real headache for professionals \u003c\/strong\u003e \u003cstrong\u003e! The quality material makes the difference in terms of both results and fatigue and working pleasure! \u003c\/strong\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"text-align:center;\"\u003e Combs or clippers that don't stand up to anything, scissors that go awry from your first movements: \u003cstrong\u003e all of this, you will find full catalogs of them, but not here! \u003c\/strong\u003e\n\u003c\/h3\u003e\n\u003cp style=\"text-align:center;\"\u003e With the exception of the handcrafted \u003cstrong\u003e Special One \u003c\/strong\u003e scissors in Italy, there are hardly any manufacturers in Europe any more. \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e A bad worker never has a good tool. And it is true that with the best gestures in the world, without the correct and suitable tool, you will not achieve anything! \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e This is why we have chosen to bring together equipment, \u003cstrong\u003e whose professional quality we guarantee \u003c\/strong\u003e. \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e We know their manufacturers, we test their products, and we make sure they maintain or improve their quality and performance. \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e Now all you have to do is \u003cstrong\u003e make your choice \u003c\/strong\u003e! \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e We have compiled here a whole collection of tools and accessories that will allow everyone to groom easily. Point of discount, the cheap does not rhyme with good grooming. On the other hand, we assure you an optimal level of performance in all the fields of activity offered: \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e \u003cspan\u003e • \u003c\/span\u003e \u003cspan\u003e \u003ca href=\"https:\/\/www.petdesign.fr\/139-tondeuses\"\u003e professional dog clipper \u003c\/a\u003e: used by groomers as a last resort, when the situation is irremediable ... Very often it is with great regret that they use animal clippers, ultimately used primarily to free animals from their tangled knots ... (we advise you to try the use of our high-performance Special One cosmetics!). \u003c\/span\u003e \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e \u003cspan\u003e • \u003cstrong\u003e dog grooming scissors \u003c\/strong\u003e: whether straight or curved, thinners or notches, you must have the choice of material. Very often, the pros have dozens of pairs of dog scissors available to deal with all everyday situations. You can imagine that the bowls of an American cocker spaniel are not cut with the same material as the silky coat of a Yorkie or even the beard of a schnauzer! \u003c\/span\u003e \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e \u003cspan\u003e \u003cspan\u003e • \u003c\/span\u003e \u003cspan\u003e \u003ca href=\"https:\/\/www.petdesign.fr\/58-couteaux-a-epiler-toilettage-chien\"\u003e dog trimmer \u003c\/a\u003e: also called a dog waxing knife, this barbaric grooming tool is specifically designed for a job. as neat and quick as possible. You probably know that the hair of many breeds of dogs does not fall out on its own ... Yes, the telogen phase does not allow the expulsion of dead hair. A mechanical action is therefore required to restore the dog to a normal look, that is to say showing only healthy, living hairs. This practice of \u003ca href=\"http:\/\/www.grandissilva.com\/leacutepilation-dun-jack-russell.html\"\u003e hair removal with a trimmer \u003c\/a\u003e for cats also exists. The tweezer is another way of working, while other groomers will prefer manual or plastic finger cradle depilation. \u003c\/span\u003e \u003c\/span\u003e \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e \u003cspan\u003e \u003cspan\u003e \u003cspan\u003e • \u003c\/span\u003e \u003cspan\u003e \u003ca href=\"https:\/\/www.petdesign.fr\/138-baignoires\"\u003e dog bathtub \u003c\/a\u003e: What would animal grooming be without a bathtub? Any professional will pay particular attention to the bathing stage. Indispensable for the evacuation of dirt and impurities, the shampoo and the masks applied must allow gentle washing, without ever endangering the skin sebum, so precious ...For this step to be perfectly mastered, choosing a good grooming tub is a crucial step: take into account the height of it (often adjustable by hydraulic or electric jack), its depth, the size of its edges In the same Logically, take into account the material in which the dog bathtub that you buy was created: plastic or metal, each material has its specificities. Take a look at all of our product sheets to find out more. \u003c\/span\u003e \u003c\/span\u003e \u003c\/span\u003e \u003c\/p\u003e\n\u003cp style=\"text-align:center;\"\u003e \u003cspan\u003e \u003cspan\u003e \u003cspan\u003e \u003cspan\u003e • \u003c\/span\u003e \u003cspan\u003e \u003cstrong\u003e accessories and \u003ca href=\"https:\/\/www.petdesign.fr\/136-materiel\"\u003e grooming equipment \u003c\/a\u003e \u003c\/strong\u003e various: a complex and constantly evolving field, grooming requires more and more sophisticated tools allowing a complete control of the morphology of the animal. The hair is a living substance which tames and stands up ... your needs. Train yourself, train yourself, and we will accompany you to excel ;. \u003c\/span\u003e \u003c\/span\u003e \u003c\/span\u003e \u003c\/span\u003e \u003c\/p\u003e.","products":[{"product_id":"bain-pro-shampoing-doux-tous-pelages","title":"BAIN PRO, gentle shampoo for all coats","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003ePROFESSIONAL BATH\u003c\/strong\u003e is the highly concentrated professional shampoo Special One that enhances fur by being \u003cstrong\u003eas gently as possible, without ever being aggressive\u003c\/strong\u003e.  It reveals the best version of the hair—without amplifying volume or texture—simply allowing its true nature to express itself. It is also a \u003cstrong\u003esupplementary natural parasite control\u003c\/strong\u003e :  Its abundant lather and acidic pH neutralize fleas mechanically, without chemical insecticides. One shampoo, dozens of benefits.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find it truly beneficial — a direct competitor to the Aquarosa Pro (the most nutritious), \u003cstrong\u003eBain Pro is the choice for absolute softness\u003c\/strong\u003e for all coat types, from puppy to senior.\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriched with a blend of \u003cstrong\u003esurfactants of natural origin\u003c\/strong\u003e and moisturizing substances, Bain Pro restores shine and elasticity to the hair from the very first use. \u003cstrong\u003enatural antiparasitic action\u003c\/strong\u003e — by mechanical asphyxiation via the abundant foam and an acidic pH that weakens the fleas — making it a perfect supplementary wash for puppies, kittens and sensitive animals, \u003cstrong\u003ewithout chemical insecticide\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 4px 0 4px;\"\u003e⚠️  \u003cstrong\u003eLimit of gentleness:\u003c\/strong\u003e Due to its very gentle formula, Bain Pro may not be sufficient if the animal is very dirty. In this case, start with a more cleansing shampoo first. \u003cstrong\u003eAquapure Pro, Blue Sky Pro or Aquarosa Pro\u003c\/strong\u003e.\u003c\/div\u003e  \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eUniversal gentleness: baby, adult, senior\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eGentle bath for dogs and cats of all ages, from babies to seniors.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDeep cleaning\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eCleans, sanitizes and gives shine to all hair types.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 7c3 3 7 7 10 10M17 7C14 10 10 14 7 17\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"2.4\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-knot\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNever amplifies natural volume — prevents knots from quickly returning after bathing.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 8a4 4 0 0 1 4 4v2a4 4 0 0 1-8 0v-2a4 4 0 0 1 4-4z\"\u003e\u003c\/path\u003e\u003cpath d=\"M12 4v4M9 6l-1.5-1.5M15 6l1.5-1.5M8 12H4M20 12h-4M8 16l-2 1.5M16 16l2 1.5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eNatural parasite repellent\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eMechanically neutralizes fleas by asphyxiation via foam and acidic pH — without chemical insecticide.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eKeratin protection\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases natural defenses to protect the hair structure.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4v16M7 8h10M6 8l-2.5 5a3 3 0 0 0 5 0zM18 8l-2.5 5a3 3 0 0 0 5 0z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eOily skin\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eTreats excess sebum while preserving the hydrolipidic film.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eFrequent baths\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNo risk to skin and hair, even with intensive use.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 7;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 9h10l1.5 10H5.5zM9 9V7a3 3 0 0 1 6 0v2\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eLeaded\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eHelps to weigh down silky furs without making them excessively heavy.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 8;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21V9\"\u003e\u003c\/path\u003e\u003cpath d=\"M12 13C9 13 6 11 6 7c4 0 6 2 6 6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M12 11c0-3 2-5 6-5 0 4-3 5-6 5z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eGrowth \u0026amp; competition\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003ePerfect for growing the coat of show dogs, all breeds included.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 9;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M4 7h16M6 7v11M10 7v11M14 7v11M18 7v11\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDetangling \u0026amp; brushing\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIt makes detangling easier, makes blow-drying smoother and reduces working time.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Bain Pro\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv id=\"so-radar-widget\" style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv id=\"so-radar-area\" style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\"\u003e\u003csvg id=\"so-radar-svg\" style=\"width: 100%; height: 100%; overflow: visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 4 }, { label: \"Démêlant\", value: 4 }, { label: \"Plombant\", value: 4 }, { label: \"Texture\", value: 1 }, { label: \"Soin peau\", value: 5 }, { label: \"Brillance\", value: 5 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (Active Bain Pro JS MAPPING - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Bain Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eNaturally derived surfactants, high-quality proteins and bio-based active ingredients — \u003cstrong\u003eParaben-free, silicone-free\u003c\/strong\u003e.  Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv id=\"aqr-carto\" style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e  \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display: block; width: 100%; height: auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée du Bain Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e  \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e  \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'soie', label:'Protéines de Soie', latin:'Sericin \u0026 fibroïne', family:'cond',\n          desc:\"Protéines gainantes à forte affinité kératinique : elles détendent le poil, lissent la cuticule et renforcent la fibre pour une brillance naturelle.\",\n          targets: [\n            { anchor:'cuticule', action:\"Lissage \u0026 gainage\", benefit:\"Lissent la cuticule et favorisent la brillance naturelle du poil.\" },\n            { anchor:'tige_poil', action:\"Renfort de la fibre\", benefit:\"Renforcent la fibre capillaire et détendent le poil au brossage.\" }\n          ]\n        },\n        {\n          id:'lait', label:'Protéines de Lait', latin:'Protéines lactées', family:'cond',\n          desc:\"Protéines nourrissantes qui revitalisent les poils ternes ou cassants et maintiennent la souplesse du manteau.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition \u0026 élasticité\", benefit:\"Nourrissent la fibre et redonnent élasticité aux poils ternes ou cassants.\" },\n            { anchor:'cuticule', action:\"Souplesse du manteau\", benefit:\"Maintiennent la souplesse et le confort de toucher du pelage.\" }\n          ]\n        },\n        {\n          id:'lichen', label:'Lichen d’Islande', latin:'Cetraria islandica', family:'botanic',\n          desc:\"Mousse montagnarde riche en polysaccharides et mucilages : propriétés antimicrobiennes, purifiantes et calmantes marquées, elle apaise les peaux déshydratées.\",\n          targets: [\n            { anchor:'epiderme', action:\"Apaisant \u0026 purifiant\", benefit:\"Apaise les peaux déshydratées, sensibles ou sujettes aux démangeaisons.\" },\n            { anchor:'glande_seb', action:\"Équilibre microbien\", benefit:\"Favorise l’équilibre microbien naturel de la peau.\" }\n          ]\n        },\n        {\n          id:'levures', label:'Levures Hydrolysées', latin:'Ferments biosourcés', family:'bio',\n          desc:\"Actifs biosourcés qui renforcent et illuminent le pelage tout en contribuant à restaurer une barrière cutanée saine.\",\n          targets: [\n            { anchor:'epiderme', action:\"Barrière cutanée\", benefit:\"Contribuent à restaurer une barrière cutanée saine et équilibrée.\" },\n            { anchor:'tige_poil', action:\"Éclat du pelage\", benefit:\"Renforcent et illuminent le poil de l’intérieur.\" }\n          ]\n        },\n        {\n          id:'fucus', label:'Extrait de Fucus', latin:'Chêne marin (algue)', family:'aqua',\n          desc:\"Algue riche en iode, polyphénols et vitamines : les polyphénols soutiennent la régénération cellulaire, l’iode active la circulation dans les racines du poil.\",\n          targets: [\n            { anchor:'follicule', action:\"Circulation \u0026 métabolisme\", benefit:\"L’iode active la circulation et le métabolisme à la racine du poil.\" },\n            { anchor:'derme', action:\"Régénération cellulaire\", benefit:\"Les polyphénols soutiennent la régénération et la tonicité de la peau.\" }\n          ]\n        },\n        {\n          id:'piroctone', label:'Piroctone Olamine', latin:'Actif antifongique \u0026 antiparasitaire doux', family:'bio',\n          desc:\"Actif anti-levures et antifongique naturel ; toxique pour les puces, il participe — avec le pH acide du bain — à l’action antiparasitaire naturelle du Bain Pro.\",\n          targets: [\n            { anchor:'epiderme', action:\"Antiparasitaire (pH acide)\", benefit:\"Avec le pH acide (~5), fragilise l’exosquelette des puces et facilite leur élimination, sans insecticide.\" },\n            { anchor:'glande_seb', action:\"Séborégulation antifongique\", benefit:\"Régule les peaux grasses, réduit les mauvaises odeurs et assainit la flore cutanée.\" }\n          ]\n        },\n        {\n          id:'glycerine', label:'Glycérine Végétale', latin:'Glycérol végétal', family:'aqua',\n          desc:\"Humectant doux qui hydrate poil et peau sans graisser, lisse la cuticule et favorise une brillance durable.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Hydratation sans graisser\", benefit:\"Capte et retient l’eau pour une peau et un poil souples.\" },\n            { anchor:'cuticule', action:\"Brillance durable\", benefit:\"Lisse la cuticule et fixe une brillance qui dure.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eA portion of shampoo\u003cbr\u003efor 20 parts water\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails class=\"aqr-proto-acc\" open=\"\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eGentle washing — all coat types, all ages\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eThe basic protocol, suitable for all common situations\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eWet the fur thoroughly.Apply Bain Pro diluted to \u003cstrong\u003e1\/20\u003c\/strong\u003e,  then rinse.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply a \u003cstrong\u003esecond shampoo\u003c\/strong\u003e,  then rinse again.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinal care\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with the appropriate conditioner: \u003cstrong\u003eHydrating Cream, Bombastic or Aqua Dolce\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eComplete the grooming with \u003cstrong\u003eAbsolute 4Poodle, Mix Pink or Style 360\u003c\/strong\u003e as needed.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eAnti-knot protocol \u0026amp; sebum regulation\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor dogs that easily develop matting or have skin imbalances (sebum, dandruff, odors)\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eStart with the pre-bath mask \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e to prepare and amplify the action of the shampoo.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo-rinse application\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Bain Pro diluted at a ratio of 1\/20. \u003cstrong\u003ewithout rinsing the mask\u003c\/strong\u003e beforehand.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eLaid \u0026amp; rinsing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eLeave on for a few moments, rinse, then repeat if necessary.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eAnti-tangle finish\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream + Aqua Dolce\u003c\/strong\u003e for a conditioned coat that delays the return of knots.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eChoose Bain Pro if you need…\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eSituations where Bain Pro makes all the difference\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eWash gently\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAny dog ​​or cat, regardless of age or coat type.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eGrowing hair\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eIdeal for show dogs of all breeds (9th group, terriers, 8th group…).\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eImplement an anti-knot protocol\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eOn a dog that felts easily.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eRegulating sebum\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eWhether in excess or deficiency, with dandruff or bad odors — without irritating the skin.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Bain Pro at the heart + modular additions If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with Bain Pro.Our favorite alliances:\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA more powerful cleaning is required…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBlue Sky Pro · Aquarosa Pro · Aquapure Pro\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce (+ Hygro Fluid)\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Mix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Bain Pro makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 All cats\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐶 All the dogs in the living room \u003cspan\u003e(limits the return of nodes)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🏆 Long-coated show dogs \u0026amp; fringe \u003cspan\u003e(bangs, toupee, beard)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs \u003cspan\u003e(Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 All Cocker Spaniels \u003cspan\u003e(American, English)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🏔️ Tibetan races \u003cspan\u003e(Shih Tzu, Lhasa Apso, Tibetan Terrier)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e👑 English Toy Spaniels \u003cspan\u003e(Rider \u0026amp; King Charles)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e✨ Long furs \u0026amp; silky \u003cspan\u003e(Yorkshire, Afghans)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐾 Terriers \u003cspan\u003e(Scottish, Westie, Welsh)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLong and non-exhaustive list — absolute softness for all coats, from puppy to senior.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":42903274225884,"sku":"WEX-BA250 (118)","price":21.9,"currency_code":"EUR","in_stock":true},{"title":"1L","offer_id":42903274258652,"sku":"WEX-BA1 016 (124)","price":42.2,"currency_code":"EUR","in_stock":true},{"title":"5 Liters","offer_id":42903274291420,"sku":"WEX-BA5 011 (135)","price":108.6,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/Design_sans_titre_-_2025-04-16T140126.314.png?v=1744811139"},{"product_id":"platynum-pro-shampoing-volume","title":"PLATINUM PRO, volume shampoo","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003ePLATINUM PRO\u003c\/strong\u003e is the Special One professional shampoo whose main focus is the \u003cstrong\u003eVOLUME\u003c\/strong\u003e.  Ideal for shows and scissor cuts, it reveals the full natural volume of the fur. \u003cstrong\u003epermanently straightens\u003c\/strong\u003e and prepares the hair for exceptional finishes.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eThis product is primarily intended for \u003cstrong\u003eprofessionals and owners of competition dogs\u003c\/strong\u003e.  The search for volume and texture implies a faster return of the nodes: for everyday use, individuals will be better served by Bain Pro, Aquarosa Pro or 4Poodle.\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriched with \u003cstrong\u003eorganic marine derivatives and active ingredients\u003c\/strong\u003e,  Allantoin, Chitosan and Cocoa Butter: Platinum Pro combines \u003cstrong\u003evolumizing power and skin care\u003c\/strong\u003e.  It illuminates natural colors, restructures furs and prepares the hair for quality scissor cuts — with a lasting finish after blow-drying.\u003c\/p\u003e  \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 4px 0 4px;\"\u003e⚠️  \u003cstrong\u003eSpecialty product:\u003c\/strong\u003e The search for volume and texture promotes a quick return of the knots. Reserved for show days, exhibitions, or scissor cuts — not for daily maintenance.\u003cbr\u003e\u003cspan style=\"font-size: 12px; color: #888; margin-top: 4px; display: block;\"\u003e❌ For everyday use, choose Bain Pro, Aquarosa Pro or 4Poodle with a good conditioner.\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M8 3H5a2 2 0 0 0-2 2v3\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 3h3a2 2 0 0 1 2 2v3\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21H5a2 2 0 0 1-2-2v-3\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 21h3a2 2 0 0 0 2-2v-3\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eMaximum volume\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eReveals the full natural volume of the fur — spectacular results from the first use.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M4 8c2-3 4-3 6 0s4 3 6 0 4-3 4-3M4 14c2-3 4-3 6 0s4 3 6 0 4-3 4-3\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eAmplified texture\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003ePromotes and strengthens the hair's natural texture for a professional result.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4c0 4 10 4 10 8s-10 4-10 8\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eStrong hair straightening \u0026amp; sustainable\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIt strongly and lastingly straightens hair after blow-drying.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"6\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 8 L20 18 M8 16 L20 6\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eHigh-quality scissor cut\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003ePrepares the coat for exceptional scissor cuts on competition and show days.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of the Platinum Pro\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv id=\"so-radar-widget\" style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv id=\"so-radar-area\" style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\"\u003e\u003csvg id=\"so-radar-svg\" style=\"width: 100%; height: 100%; overflow: visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 1 }, { label: \"Démêlant\", value: 1 }, { label: \"Texture\", value: 4 }, { label: \"Volume\", value: 5 }, { label: \"Brillance\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (Platinum Pro active JS MAPPING - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Platinum Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eOrganic marine derivatives and active ingredients combined with premium ingredients — \u003cstrong\u003eParaben-free, silicone-free\u003c\/strong\u003e.  Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv id=\"aqr-carto\" style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e  \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display: block; width: 100%; height: auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée du Platinum Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e  \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e  \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'allantoine', label:'Allantoïne', latin:'Apaisant cutané', family:'bio',\n          desc:\"Actif calmant et anti-irritant : il protège la barrière cutanée lors des soins intensifs et apaise les peaux sensibles, équilibrant la puissance volumatrice de la formule.\",\n          targets: [\n            { anchor:'epiderme', action:\"Apaisement \u0026 protection\", benefit:\"Calme les peaux sensibles et protège la barrière cutanée pendant le travail intensif.\" },\n            { anchor:'film_hydro', action:\"Confort cutané\", benefit:\"Préserve le confort de surface malgré l’action texturisante du shampoing.\" }\n          ]\n        },\n        {\n          id:'cacao', label:'Beurre de Cacao', latin:'Theobroma cacao', family:'cond',\n          desc:\"Beurre végétal qui illumine les poils et intensifie les couleurs naturelles : il apporte un fini satiné et de la profondeur au manteau.\",\n          targets: [\n            { anchor:'cuticule', action:\"Éclat \u0026 profondeur\", benefit:\"Lisse la cuticule pour intensifier les couleurs et donner un fini satiné.\" },\n            { anchor:'tige_poil', action:\"Nutrition de la fibre\", benefit:\"Nourrit la fibre et apporte de la profondeur au manteau.\" }\n          ]\n        },\n        {\n          id:'chitosane', label:'Chitosane', latin:'Agent structurant marin', family:'aqua',\n          desc:\"Polymère biosourcé d’origine marine : il nettoie, restructure et lustre les fourrures tout en apportant corps et volume durable à la fibre.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Corps \u0026 volume durable\", benefit:\"Gaine la fibre d’un film structurant qui crée du corps et tient le volume.\" },\n            { anchor:'cuticule', action:\"Structure \u0026 brillance\", benefit:\"Restructure et lustre la surface du poil pour une texture nette et brillante.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eA portion of shampoo\u003cbr\u003efor 20 parts water\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails class=\"aqr-proto-acc\" open=\"\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eBath show — volume \u0026amp; scissors cut\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor competition days, exhibitions or quality scissor cutting\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepare with \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e (possibly coupled with \u003cstrong\u003eBombastic\u003c\/strong\u003e) to hydrate and amplify the action of the shampoo.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eApplication on the mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply diluted Platinum Pro to \u003cstrong\u003e1\/20\u003c\/strong\u003e Apply directly to the mask, without rinsing. Rinse, then repeat if necessary.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinal care \u0026amp; laid\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream, Bombastic or Aqua Dolce\u003c\/strong\u003e.  Let it sit \u003cstrong\u003ea few minutes\u003c\/strong\u003e before rinsing thoroughly.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eDrying \u0026amp; finishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDry and brush — the volume increases and the straightening effect sets in. Finish with \u003cstrong\u003eAbsolute 4Poodle or Style 360\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eChoose Platinum Pro if you need…\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eSituations where the Platinum Pro makes all the difference\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eHigh-quality scissor cut\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFor a special event — show, expo, presentation in the ring.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eReveal the natural volume\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFur, with strong washing and cleaning power.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eAmplify the texture\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eHair, for an impeccable and structured visual result.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eA strong and lasting straightening\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAfter blow-drying, on curly or wavy fur.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Platinum Pro at its core + modular add-ons If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with the Platinum Pro. Our favorite combinations:\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA second shampoo is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAquarosa Pro · Aquapure Pro\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy \u0026amp; Bombastic\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Style 360\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere the Platinum Pro makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 All cats\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs \u003cspan\u003e(Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🧸 Double hair \u0026amp; complex furs \u003cspan\u003e(primitives, shepherds, water dogs)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eSpectacular volume and straightening — a long and non-exhaustive list, reserved for show days.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819386724531,"sku":"WEX-PLA250 (32)","price":22.95,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819386658995,"sku":"WEX-PLA5 018 (40)","price":43.9,"currency_code":"EUR","in_stock":true},{"title":"5 Litres","offer_id":37819386691763,"sku":"WEX-PLA1 013 (48)","price":127.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/PlatiniumPro_7a208b5d-6d17-4767-a485-6689fba2be6c.png?v=1680257058"},{"product_id":"keratine-pro-shampoing-texture-epilation","title":"KERATINE PRO, texture shampoo +++","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e              \u003cstrong\u003eKERATIN PRO\u003c\/strong\u003e is the shampoo \u003cstrong\u003etexturizer and hardener\u003c\/strong\u003e Special One, for use in \u003cstrong\u003every specific situations\u003c\/strong\u003e :  Post-bath hair removal, revealing natural volume, enhancing hair texture. A precision tool — not an everyday shampoo.     \u003c\/div\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eThis product is primarily intended for \u003cstrong\u003eprofessionals and owners of competition dogs\u003c\/strong\u003e.  The search for texture and hold implies a faster return of knots: for everyday use, individuals will be better served by Bain Pro, Aquarosa Pro or 4Poodle.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriched with \u003cstrong\u003ehydrolyzed keratin, chitosan and cane sugar extract\u003c\/strong\u003e,  Keratin Pro nourishes and restructures the fiber while giving it body and grip. Its formula \u003cstrong\u003eno dyes\u003c\/strong\u003e avoids the classic softening effect of shampoos: the hair remains rough, textured and ready to work.\u003c\/p\u003e          \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 4px 0 4px;\"\u003e⚠️  \u003cstrong\u003eSpecialty product:\u003c\/strong\u003e The hair stimulation caused by this shampoo promotes a rapid return of tangles. Reserve it for days of waxing, exhibitions, or haircuts requiring maximum texture—not for daily maintenance.\u003cbr\u003e\u003cspan style=\"font-size: 12px; color: #888; margin-top: 4px; display: block;\"\u003e❌ For everyday use, choose Bain Pro, Aquarosa Pro or Aqua Terme.\u003c\/span\u003e  \u003c\/div\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 2l7 4v6c0 4-3 7-7 8-4-1-7-4-7-8V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M12 7v8M9 10l3-3 3 3\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eHardening \u0026amp; texturizer\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eHardens, texturizes and prepares the hair for hair removal after bathing.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M5 11V6a1.5 1.5 0 0 1 3 0M8 10V4.5a1.5 1.5 0 0 1 3 0V10M11 10V5.5a1.5 1.5 0 0 1 3 0V11M14 11V7a1.5 1.5 0 0 1 3 0v6a6 6 0 0 1-6 6h-1a6 6 0 0 1-5-3l-2-3.5a1.6 1.6 0 0 1 2.7-1.6L5 13\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eTouching goat hair\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eOptimizes the rough feel and grip, ideal for hair removal by hand or with a knife.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M8 3H5a2 2 0 0 0-2 2v3\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 3h3a2 2 0 0 1 2 2v3\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21H5a2 2 0 0 1-2-2v-3\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 21h3a2 2 0 0 0 2-2v-3\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eNatural volume revealed\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eReveals the natural volume of the fur with strong washing and cleaning power.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eDeep cleaning\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eDeeply cleanses and sanitizes — ideal for the oily skin of Terriers.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eExfoliation \u0026amp; renewal\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSugar cane extract exfoliates, acts against impurities (blackheads) and promotes cell renewal.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Keratin Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Texture\", value: 5 }, { label: \"Volume\", value: 4 }, { label: \"Démêlant\", value: 1 }, { label: \"Hydratation\", value: 1 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active Keratin Pro - reliable) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Keratin Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eFormula \u003cstrong\u003eno dyes\u003c\/strong\u003e — the deliberate choice to avoid any softening effect in order to maximize hair texture and grip. Paraben-free, silicone-free. Here, area by area, is how each active ingredient works on the skin and hair.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display:block;width:100%;height:auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée du Kératine Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'keratine', label:'Kératine Hydrolysée', latin:'Protéine de structure', family:'cond',\n          desc:\"Protéine de structure du poil : elle nourrit et restructure la fibre en profondeur, renforce la kératine naturelle et restitue corps et texture.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Restructuration\", benefit:\"Renforce la kératine naturelle de la fibre et lui rend du corps.\" },\n            { anchor:'cuticule', action:\"Texture \u0026 accroche\", benefit:\"Crée une surface texturée et rêche, propice à l’accroche du poil.\" }\n          ]\n        },\n        {\n          id:'chitosane', label:'Chitosane', latin:'Agent structurant marin', family:'aqua',\n          desc:\"Polymère biosourcé structurant : il assainit en profondeur les peaux grasses, particulièrement efficace sur les Terriers et les races à épiler.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Corps \u0026 structure\", benefit:\"Gaine la fibre d’un film structurant qui crée du corps et de la tenue.\" },\n            { anchor:'glande_seb', action:\"Assainissement\", benefit:\"Assainit en profondeur les peaux grasses des races à épiler.\" }\n          ]\n        },\n        {\n          id:'sucrecanne', label:'Extrait de Sucre de Canne', latin:'Source d’AHA naturels', family:'bio',\n          desc:\"Exfoliant naturel : il agit contre les impuretés et les points noirs, et favorise le renouvellement cellulaire de la peau.\",\n          targets: [\n            { anchor:'epiderme', action:\"Exfoliation douce\", benefit:\"Élimine impuretés et points noirs, et active le renouvellement cellulaire.\" },\n            { anchor:'glande_sud', action:\"Purification\", benefit:\"Aide à purifier les pores et la surface cutanée.\" }\n          ]\n        },\n        {\n          id:'saccharine', label:'Sodium Saccharine', latin:'Raviveur de couleur', family:'bio',\n          desc:\"Raviveur de couleur et réparateur rapide : il restitue l’éclat naturel du pelage tout en participant à la restructuration de la fibre.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Réparation rapide\", benefit:\"Participe à la restructuration et au renfort de la fibre.\" },\n            { anchor:'cuticule', action:\"Éclat ravivé\", benefit:\"Restitue l’éclat naturel du pelage.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e        \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eA portion of shampoo\u003cbr\u003efor 20 parts water\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e                                                  \u003cdetails class=\"aqr-proto-acc\" open\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003ePost-bath hair removal — hook \u0026amp; maximum texture\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eTo prepare the hair for manual or knife hair removal after bathing\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask (optional)\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepare, if necessary, with a mask \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e to moisturize the skin before work.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eApplication\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Keratin Pro diluted to \u003cstrong\u003e1\/20\u003c\/strong\u003e Apply to wet hair. Massage in, leave on for a few moments.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinsing\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse, then repeat the shampooing if necessary.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eResult\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDry: the hair is \u003cstrong\u003erough, textured, with optimal grip\u003c\/strong\u003e — ideal for hair removal by hand or with a knife.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                      \u003cdiv style=\"margin-top: 12px; background: #f0f7ff; border-left: 3px solid #4a90d9; border-radius: 8px; padding: 10px 14px; font-size: 12px; line-height: 1.5;\"\u003e💡 If you wax \u003cstrong\u003eBefore\u003c\/strong\u003e For the bath, opt instead \u003cstrong\u003eAqua Terme, Bain Pro or Aquapure Pro\u003c\/strong\u003e for the next shampoo.\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eChoose Keratin Pro if you need…\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eSituations where Keratin Pro makes all the difference\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eHair removal after bathing\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eThe grip and texture of the hair are at their maximum.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eReveal the natural volume\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFur, with strong washing and cleaning power.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eAmplify the texture\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFor days of exhibition or presentation in the ring.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eWorking with oily skin\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eTerriers or breeds requiring hair removal, with deep cleaning and skin sanitation.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eThe ultimate Terrier protocol — texture, elasticity \u0026amp; hair removal without drying\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eA concentrated, single-step protocol, universal to all Terriers\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eMix in equal parts\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMix \u003cstrong\u003eequal parts: Super Keeper + Bio Energy Plus + Keratin Pro\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eApplication\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eWork the mixture into a lather, apply to wet hair, massage well.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinsing \u0026amp; result\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse. The hair is \u003cstrong\u003etextured and hardened\u003c\/strong\u003e for hair removal, the\u003cstrong\u003eelasticity preserved\u003c\/strong\u003e thanks to Bio Energy, and the coat \u003cstrong\u003enot dried\u003c\/strong\u003e thanks to Super Keeper — all in one app.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                      \u003cdiv style=\"margin-top: 12px; background: #f0fff4; border-left: 3px solid #2ecc71; border-radius: 8px; padding: 10px 14px; font-size: 12px; line-height: 1.5;\"\u003e✨  \u003cstrong\u003eA must-try on all Terriers\u003c\/strong\u003e — this 3-in-1 protocol is a real game changer for anyone who practices hair removal regularly.\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/details\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Keratin Pro at its core + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with Keratin Pro. Our favorite combinations:\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA second shampoo is recommended…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAqua Terme · Aquapure Pro · Bain Pro\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eTexturizing additives are desired…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHygro Fluid \u0026amp; Super Keeper\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Mix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Keratin Pro makes the difference:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐾 All the Terriers \u0026amp; breeds to pluck \u003cspan\u003e(texture, grip, oily skin)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs lacking structure \u003cspan\u003e(Grey and red poodles — show only)\u003c\/span\u003e\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLong and non-exhaustive list — a precision tool for hair removal and texturizing, reserved for workdays.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":37819386757299,"sku":"WEX-KE1 017 (64)","price":42.2,"currency_code":"EUR","in_stock":true},{"title":"5 Litres","offer_id":37819386790067,"sku":"WEX-KE5 012 (67)","price":113.3,"currency_code":"EUR","in_stock":true},{"title":"250 mL","offer_id":37819386822835,"sku":"WEX-KE250 (60)","price":21.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/KeratinePro_57353a58-9c04-4f9a-baac-16b63418870a.png?v=1680254149"},{"product_id":"skincare-pro-shampoing-soin-traitant","title":"SKINCARE pro, treatment shampoo","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e              \u003cstrong\u003eSKINCARE PRO\u003c\/strong\u003e is the dermo-cleansing shampoo \u003cstrong\u003eoily\u003c\/strong\u003e Special One, formulated for \u003cstrong\u003eproblem or delicate skin\u003c\/strong\u003e.  It restores the balance of the dermis and hair, restores the natural production of sebum and, with regular use, creates a \u003cstrong\u003enatural protective barrier\u003c\/strong\u003e against parasitic attacks.     \u003c\/div\u003e            \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it — \u003cstrong\u003eparticularly valuable for animals suffering from chronic or recurring skin problems\u003c\/strong\u003e.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts \u003cstrong\u003eoily composition\u003c\/strong\u003e It provides a deep conditioning action without damaging the tissues. It doesn't act like a simple cleansing shampoo, but like a \u003cstrong\u003egenuine gentle dermatological care\u003c\/strong\u003e which restores, protects and rebalances the skin in the long term.\u003c\/p\u003e          \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 4px 0 4px;\"\u003e⚠️  \u003cstrong\u003eFoam limit:\u003c\/strong\u003e Skincare Pro doesn't lather much and has difficulty penetrating dense or thick fur. For these cases, consider using a product that is better suited to your needs. \u003cstrong\u003eAqua Terme Pro\u003c\/strong\u003e.\u003c\/div\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-skin abnormality action\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eIt acts against the main skin abnormalities — atopy, dermatitis, epidermal imbalances.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-itch\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eReduces and relieves itching and skin irritations.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-dandruff\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eRegulates desquamation and significantly reduces flakes.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eDeep hydration\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eDeeply hydrates dry or damaged coats.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4v16M7 8h10M6 8l-2.5 5a3 3 0 0 0 5 0zM18 8l-2.5 5a3 3 0 0 0 5 0z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eOily skin \u0026amp; smells\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eHelps oily, smelly skin by restoring the natural production of sebum.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eProtective barrier\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eWith regular use, it creates a natural protective barrier against parasitic attacks.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eUniversal \u0026amp; soft\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSuitable for dogs and cats of all ages, from babies to seniors.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Skincare Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Soin peau\", value: 5 }, { label: \"Volume\", value: 1 }, { label: \"Moussant\", value: 1 }, { label: \"Texture\", value: 3 }, { label: \"Hydratation\", value: 4 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active Skincare Pro - verified) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eSkincare Pro composition: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eAn oily formulation with \u003cstrong\u003e91% of ingredients are of natural origin\u003c\/strong\u003e — without SLES, without SLS, without parabens, without silicone. Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display:block;width:100%;height:auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée du Skincare Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'huiles', label:'Complexe d’Huiles Naturelles', latin:'Olive · Maïs · Amande douce · Avocat · Coco', family:'cond',\n          desc:\"Base lavante huileuse nourrissante : ces huiles apaisent et hydratent la peau sèche ou atopique sans altérer le film hydrolipidique.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Nutrition lipidique\", benefit:\"Nourrit et reconstitue le film hydrolipidique sans le décaper.\" },\n            { anchor:'epiderme', action:\"Apaisement des peaux sèches\", benefit:\"Hydrate et apaise les peaux sèches ou atopiques en profondeur.\" }\n          ]\n        },\n        {\n          id:'propolis', label:'Propolis', latin:'« L’antibiotique naturel »', family:'botanic',\n          desc:\"Résine d’abeille aux propriétés antimicrobiennes et anti-inflammatoires : soulage les démangeaisons et protège la peau des infections.\",\n          targets: [\n            { anchor:'epiderme', action:\"Anti-inflammatoire\", benefit:\"Soulage les démangeaisons et combat les impuretés cutanées.\" },\n            { anchor:'glande_seb', action:\"Protection antimicrobienne\", benefit:\"Protège la peau des infections au niveau du film cutané.\" }\n          ]\n        },\n        {\n          id:'fucus', label:'Algue Fucus Vesiculosus', latin:'Chêne marin', family:'aqua',\n          desc:\"Algue nourrissante et hydratante : maintient la peau souple et hydratée tout en renforçant ses défenses physiologiques.\",\n          targets: [\n            { anchor:'derme', action:\"Renfort des défenses\", benefit:\"Renforce les défenses physiologiques cutanées en profondeur.\" },\n            { anchor:'film_hydro', action:\"Hydratation durable\", benefit:\"Maintient la peau souple et hydratée.\" }\n          ]\n        },\n        {\n          id:'levures', label:'Levures (Saccharomyces)', latin:'Source de vitamines B', family:'bio',\n          desc:\"Riches en vitamines B : elles renforcent et illuminent le pelage et contribuent à restaurer une barrière cutanée saine.\",\n          targets: [\n            { anchor:'epiderme', action:\"Barrière cutanée\", benefit:\"Contribuent à restaurer une barrière cutanée saine et équilibrée.\" },\n            { anchor:'tige_poil', action:\"Éclat du pelage\", benefit:\"Renforcent et illuminent le poil de l’intérieur.\" }\n          ]\n        },\n        {\n          id:'passion', label:'Fruit de la Passion', latin:'Passiflora edulis', family:'botanic',\n          desc:\"Extrait aux propriétés anti-inflammatoires et lénifiantes : il apaise les peaux irritées ou enflammées et renforce les défenses physiologiques.\",\n          targets: [\n            { anchor:'epiderme', action:\"Apaisant \u0026 lénifiant\", benefit:\"Apaise les peaux irritées ou enflammées.\" },\n            { anchor:'derme', action:\"Renfort physiologique\", benefit:\"Renforce les défenses naturelles de la peau.\" }\n          ]\n        },\n        {\n          id:'citron', label:'Jus de Citron', latin:'Citrus limon', family:'bio',\n          desc:\"Antimicrobien et antioxydant naturel : il réduit les mauvaises odeurs et aide à prévenir les infections cutanées.\",\n          targets: [\n            { anchor:'glande_sud', action:\"Action déodorante\", benefit:\"Réduit les mauvaises odeurs liées aux déséquilibres cutanés.\" },\n            { anchor:'epiderme', action:\"Prévention des infections\", benefit:\"Aide à prévenir les infections grâce à son action antimicrobienne.\" }\n          ]\n        },\n        {\n          id:'mangue', label:'Extrait de Mangue', latin:'Mangifera indica', family:'aqua',\n          desc:\"Riche en vitamines et antioxydants : il nourrit et protège la peau des agressions extérieures.\",\n          targets: [\n            { anchor:'epiderme', action:\"Protection antioxydante\", benefit:\"Protège la peau des agressions extérieures et du stress oxydatif.\" },\n            { anchor:'tige_poil', action:\"Nutrition\", benefit:\"Nourrit la fibre et soutient sa vitalité.\" }\n          ]\n        },\n        {\n          id:'hydroxy', label:'Hydroxy-Acides de Fruits', latin:'AHA végétaux', family:'cond',\n          desc:\"Acides de fruits qui exfolient délicatement les cellules mortes et favorisent la pénétration des actifs réparateurs.\",\n          targets: [\n            { anchor:'epiderme', action:\"Exfoliation douce\", benefit:\"Éliminent délicatement les cellules mortes et les squames.\" },\n            { anchor:'film_hydro', action:\"Pénétration des actifs\", benefit:\"Facilitent l’hydratation profonde et la pénétration des actifs réparateurs.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e        \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003ePure or up to 1\/20\u003cbr\u003edepending on the severity of the problem\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e                                                  \u003cdiv style=\"margin-bottom: 12px; padding: 12px 16px; background: #fff3cd; border-left: 3px solid #e67e22; border-radius: 8px; font-size: 13px; line-height: 1.55;\"\u003e❗️ Always apply \u003cstrong\u003edirectly after the Bio Energy Plus mask\u003c\/strong\u003e,  no intermediate rinsing required — let the Bio Energy Plus work \u003cstrong\u003eat least 20 minutes\u003c\/strong\u003e,  ideally paired with \u003cstrong\u003eHygro Fluid\u003c\/strong\u003e. \u003cstrong\u003eTwo shampoos\u003c\/strong\u003e recommended for each bath.\u003c\/div\u003e                            \u003cdetails class=\"aqr-proto-acc\" open\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eTreatment protocol — start of treatment\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eAt the start of treatment, for skin with a marked imbalance\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eExtended pre-swim mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply \u003cstrong\u003eBio Energy Plus + Hygro Fluid\u003c\/strong\u003e on dry hair. Leave on \u003cstrong\u003e20 minutes minimum\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo-rinse application\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eWithout rinsing the mask, apply Skincare Pro \u003cstrong\u003epure or slightly diluted\u003c\/strong\u003e.  Massage gently, then rinse.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eShampoo a second time, then rinse thoroughly.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRestorative finish\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream and\/or Beauty Rinse\u003c\/strong\u003e. \u003cstrong\u003eFrequency :\u003c\/strong\u003e twice a week at the start of the treatment, then space out according to the evolution of the skin.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eMaintenance protocol — regular monitoring\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eOnce the skin has stabilized, to maintain skin balance\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepare with \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e (20 min exposure time), possibly alone if Hygro Fluid is not required.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDouble shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Skincare Pro diluted to \u003cstrong\u003e1\/20\u003c\/strong\u003e Leave the mask on without rinsing. Shampoo twice, then rinse.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eProtective finish\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e to preserve the hydrolipidic barrier. Regular use gradually strengthens the \u003cstrong\u003enatural protective barrier\u003c\/strong\u003e of the coat.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Skincare Pro at its core + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with Skincare Pro. Our favorite combinations:\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-swim mask is required (essential)...\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus + Hygro Fluid\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream and\/or Beauty Rinse\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eThe fur is dense or thick…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAqua Terme Pro (better penetration)\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Skincare Pro makes the difference:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 All cats\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🩹 Dogs with skin abnormalities \u003cspan\u003e(atopy, dermatitis, irritations, itching)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs \u003cspan\u003e(Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 All Cocker Spaniels \u003cspan\u003e(American, English)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🏔️ Tibetan races \u003cspan\u003e(Shih Tzu, Lhasa Apso, Tibetan Terrier)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e👑 English Toy Spaniels \u003cspan\u003e(Rider \u0026amp; King Charles)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✨ Long furs \u0026amp; silky \u003cspan\u003e(Yorkshire, Afghans)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐾 Terriers \u003cspan\u003e(Scottish, Westie, Welsh)\u003c\/span\u003e\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLong and non-exhaustive list — gentle dermatological care for problem skin.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +91% | SLES, SLS, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Liter","offer_id":37819388330163,"sku":"WEX-SK1 015 (66)","price":63.9,"currency_code":"EUR","in_stock":true},{"title":"5 Liters","offer_id":37819388362931,"sku":"WEX-SK5 010 (68)","price":194.0,"currency_code":"EUR","in_stock":true},{"title":"250 mL","offer_id":37819388395699,"sku":"WEX-SK250 (62)","price":33.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Skincare.png?v=1680254223"},{"product_id":"bio-energy-plus-masque-pre-bain","title":"BIO ENERGY PLUS, green caviar mask","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eBIO ENERGY PLUS\u003c\/strong\u003e is Special One's ultra-concentrated, dual-action pre-bath mask \u003cstrong\u003e\u0026quot;Beauty\u0026quot; and \u0026quot;Health\u0026quot;\u003c\/strong\u003e.  It works instantly on dry, dirty, and tangled fur—even before shampooing. An essential component of the Special One hydration program, it transforms grooming and delivers noticeable results from the very first use.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it of real interest — including those who have never used a pre-bath mask and who are discovering an innovation that will transform their grooming routine.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- RADAR BLOCK: COSMETOLOGICAL DIAGRAM --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:24px 28px 20px;overflow:visible;\"\u003e                  \u003cspan style=\"font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#999;margin-bottom:22px;display:block;\"\u003eBio Energy Plus cosmetic diagram\u003c\/span\u003e                  \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label {\n      position: absolute;\n      transform: translate(-50%, -50%);\n      text-align: center;\n      pointer-events: none;\n      white-space: nowrap;\n      opacity: 0;\n      animation: so-fadeUp 0.5s ease forwards;\n    }\n    .so-label .so-lname {\n      font-size: 9px;\n      font-weight: 600;\n      text-transform: uppercase;\n      letter-spacing: 0.08em;\n      color: #999;\n      display: block;\n      margin-bottom: 1px;\n      font-family: inherit;\n    }\n    .so-label .so-lval {\n      font-size: 24px;\n      font-weight: 700;\n      color: #1a1a1a;\n      line-height: 1;\n      font-family: inherit;\n    }\n    .so-label .so-lmax {\n      font-size: 12px;\n      font-weight: 400;\n      color: #bbb;\n      font-family: inherit;\n    }\n    .so-footer-bar {\n      margin-top: 18px;\n      border-top: 1px solid #eee;\n      padding-top: 14px;\n      display: flex;\n      align-items: center;\n      flex-wrap: wrap;\n      gap: 6px;\n      opacity: 0;\n      animation: so-footerIn 0.5s ease forwards 0.8s;\n    }\n    .so-footer-label {\n      font-size: 9px;\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.1em;\n      color: #999;\n      font-family: inherit;\n      margin-right: 2px;\n    }\n    .so-footer-chip {\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n      background: #1a1a1a;\n      padding: 4px 10px;\n      font-size: 11px;\n      font-weight: 600;\n      color: #fff;\n      font-family: inherit;\n    }\n    .so-footer-chip-score {\n      font-weight: 400;\n      color: rgba(255,255,255,0.4);\n      font-size: 10px;\n    }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp {\n      from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); }\n      to   { opacity: 1; transform: translate(-50%, -50%); }\n    }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-footer-chip { font-size: 10px !important; padding: 3px 8px !important; }\n      .so-footer-label { font-size: 8px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = {\n      criteria: [\n        { label: \"Hydratation\",  value: 5 },\n        { label: \"Soin peau\",    value: 5 },\n        { label: \"Démêlant\",     value: 3 },\n        { label: \"Brillance\",    value: 4 }\n      ]\n    };\n\n    var svg  = document.getElementById(\"so-radar-svg\");\n    var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria;\n    var n    = data.length;\n    var cx = 180, cy = 180, maxR = 95;\n\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) {\n      var a = ang(i), r = (v \/ mx) * maxR;\n      return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) };\n    }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n\n    for (var l = 1; l \u003c= 5; l++) {\n      var pts = [];\n      for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); }\n      var poly = svgEl(\"polygon\");\n      poly.setAttribute(\"points\", pts.join(\" \"));\n      poly.setAttribute(\"fill\", \"none\");\n      poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\");\n      poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\");\n      if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\");\n      svg.appendChild(poly);\n    }\n\n    for (var i = 0; i \u003c n; i++) {\n      var p = pt(i, 5, 5);\n      var line = svgEl(\"line\");\n      line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy);\n      line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y);\n      line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\");\n      line.setAttribute(\"stroke-width\", \"0.6\");\n      svg.appendChild(line);\n    }\n\n    var shapePts = [];\n    for (var i = 0; i \u003c n; i++) {\n      var p = pt(i, data[i].value, 5);\n      shapePts.push(p.x + \",\" + p.y);\n    }\n    var ptsStr = shapePts.join(\" \");\n\n    var fillPoly = svgEl(\"polygon\");\n    fillPoly.setAttribute(\"points\", ptsStr);\n    fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\");\n    fillPoly.classList.add(\"so-shape-fill\");\n    svg.appendChild(fillPoly);\n\n    var strokePoly = svgEl(\"polygon\");\n    strokePoly.setAttribute(\"points\", ptsStr);\n    strokePoly.setAttribute(\"fill\", \"none\");\n    strokePoly.setAttribute(\"stroke\", \"#1a1a1a\");\n    strokePoly.setAttribute(\"stroke-width\", \"1.8\");\n    strokePoly.setAttribute(\"stroke-linejoin\", \"round\");\n    strokePoly.classList.add(\"so-shape-stroke\");\n    svg.appendChild(strokePoly);\n\n    for (var i = 0; i \u003c n; i++) {\n      (function(i) {\n        var d = data[i];\n        var p = pt(i, d.value, 5);\n        var delay = 0.5 + i * 0.1;\n\n        var halo = svgEl(\"circle\");\n        halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y);\n        halo.setAttribute(\"r\", \"7\");\n        halo.setAttribute(\"fill\", \"none\");\n        halo.setAttribute(\"stroke\", \"#1a1a1a\");\n        halo.setAttribute(\"stroke-width\", \"1\");\n        halo.setAttribute(\"stroke-opacity\", \"0.12\");\n        halo.classList.add(\"so-dot\");\n        halo.style.animationDelay = delay + \"s\";\n        svg.appendChild(halo);\n\n        var dot = svgEl(\"circle\");\n        dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y);\n        dot.setAttribute(\"r\", \"3\");\n        dot.setAttribute(\"fill\", \"#1a1a1a\");\n        dot.classList.add(\"so-dot\");\n        dot.style.animationDelay = delay + \"s\";\n        svg.appendChild(dot);\n\n        var lp = pt(i, 6.5, 5);\n        var pctX = (lp.x \/ 360) * 100;\n        var pctY = (lp.y \/ 360) * 100;\n\n        var lbl = document.createElement(\"div\");\n        lbl.className = \"so-label\";\n        lbl.style.left = pctX + \"%\";\n        lbl.style.top  = pctY + \"%\";\n        lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\";\n        lbl.innerHTML =\n          '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e' +\n          '\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e';\n        area.appendChild(lbl);\n      })(i);\n    }\n\n    var maxVal = 0;\n    for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; }\n    var bests = [];\n    for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n\n    var chipsHtml = '';\n    for (var i = 0; i \u003c bests.length; i++) {\n      chipsHtml +=\n        '\u003cspan class=\"so-footer-chip\"\u003e' +\n          bests[i].label +\n          '\u003cspan class=\"so-footer-chip-score\"\u003e' + bests[i].value + '\/5\u003c\/span\u003e' +\n        '\u003c\/span\u003e';\n    }\n\n    document.getElementById(\"so-radar-footer\").innerHTML =\n      '\u003cdiv class=\"so-footer-bar\"\u003e' +\n        '\u003cspan class=\"so-footer-label\"\u003e★ ' + (bests.length \u003e 1 ? 'Points forts' : 'Point fort') + '\u003c\/span\u003e' +\n        chipsHtml +\n      '\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts ultra-technological composition immediately provides profound relief to the animal's fur and skin. \u003cstrong\u003eIt is applied to dry, dirty, undetangled hair — without rinsing before shampooing.\u003c\/strong\u003e This additional step compared to the classic bath cycle is, however, the one on which the quality of the final result strongly depends.\u003c\/p\u003e            \u003cdiv style=\"background: #f6f6f6; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDouble Action Beauty \u0026amp; Health :\u003c\/strong\u003e Improves texture while deeply treating the skin and fur.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eIntense hydration:\u003c\/strong\u003e It hydrates, cares for, treats and restores fur and skin from the first application.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRevive the colors:\u003c\/strong\u003e Stimulates melanin production — natural coat colors gain in intensity and depth.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eCutaneous microcirculation:\u003c\/strong\u003e Activates circulation in the hair roots, promoting growth and coat renewal.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRepair :\u003c\/strong\u003e Helps repair damaged, weakened or overworked coats.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePreparation for cutting:\u003c\/strong\u003e Ideal for preparing furs before a scissor cut or salon treatment.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAnti-molting \u0026amp; detangling:\u003c\/strong\u003e Facilitates the removal of dead hair and helps prevent or accelerate shedding.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eAn ultra-technological formulation combining marine, plant and structuring active ingredients — without parabens, without silicone.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Hydrolyzed Collagen\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eAnti-inflammatory action — strengthens the internal structure of the hair and improves the elasticity of the fiber.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Green Caviar (Caulerpa Lentillifera)\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eAnti-aging Japanese seaweed: rich in minerals (iron, calcium, zinc, potassium), vitamin A \u0026amp; Vitamin C and amino acids. Stimulates the production of collagen and elastin.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Spirulina\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eA powerful antioxidant that restores vigor and shine to damaged coats.Reduces sebum, fights dandruff, prevents hair loss and promotes hair growth.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Fucus (Sea Oak)\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eRich in iodine, polyphenols, and vitamins. Polyphenols support cell regeneration; iodine activates metabolism and improves circulation in the hair roots.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Laminaria\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eNatural detox thanks to alginic acid — forms a gel on contact with water which captures and eliminates substances harmful to the skin.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdiv style=\"margin-bottom: 10px; padding: 12px 15px; background: #f6f6f6; border: 1px solid #e5e5e5; font-size: 13px; font-weight: 600;\"\u003e              💡  \u003cstrong\u003eAs a pre-bath treatment: apply to dry, dirty, undetangled hair.\u003c\/strong\u003e Do not rinse before shampooing — this is the fundamental principle of the pre-bath mask.     \u003c\/div\u003e          \u003cdiv style=\"margin-bottom: 15px; padding: 12px 15px; background: #fff8e1; border-left: 3px solid #f0a500; font-size: 13px;\"\u003e              ⚠️ Do not leave on for more than \u003cstrong\u003e30 minutes\u003c\/strong\u003e.  Do not rinse the product before shampooing.     \u003c\/div\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Beauty Goal — radiance, texture \u0026amp; colors\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         1. Dilute Bio Energy Plus to \u003cstrong\u003e1\/20\u003c\/strong\u003e.\u003cbr\u003e         2. Apply to dry, dirty, uncombed fur — making sure to cover the entire coat well.\u003cbr\u003e         3. Let it sit \u003cstrong\u003e5 to 30 minutes\u003c\/strong\u003e depending on the desired intensity.\u003cbr\u003e         4. Go directly to shampooing \u003cstrong\u003eno rinsing\u003c\/strong\u003e beforehand.\u003cbr\u003e         Result: improved texture, revived colors, renewed shine as soon as you get out of the bath.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Health Goal — Skin \u0026amp; damaged fur\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         For sensitive or irritated skin, or very damaged fur:\u003cbr\u003e         1. Apply the product \u003cstrong\u003epure on the most critical areas\u003c\/strong\u003e (dry, irritated areas, brittle hair).\u003cbr\u003e         2. Dilute to \u003cstrong\u003e1\/15\u003c\/strong\u003e for application on the rest of the coat.\u003cbr\u003e         3. \u003cstrong\u003eCover the animal with a towel\u003c\/strong\u003e and let it sit \u003cstrong\u003e20 to 30 minutes\u003c\/strong\u003e for maximum absorption of the repairing active ingredients.\u003cbr\u003e         4. Proceed to shampooing without rinsing beforehand — the first shampoo is applied directly to the product being applied.\u003cbr\u003e\u003cbr\u003e                  \u003cdiv style=\"background: #f0f7ff; border-left: 3px solid #4a90d9; padding: 10px 12px; font-size: 12px;\"\u003e                      💧  \u003cstrong\u003eIn case of persistent skin abnormalities:\u003c\/strong\u003e It is recommended to perform the following bath with shampoo \u003cstrong\u003eSkincare Pro\u003c\/strong\u003e to enhance the therapeutic action of the mask.         \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Objective: Untangling \u0026amp; Anti-molting\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         To treat, accelerate or prevent shedding, and to facilitate detangling:\u003cbr\u003e         1. Dilute to \u003cstrong\u003e1\/20\u003c\/strong\u003e,  then add a conditioner cream and an oily product from the range (4 Elements Oils or Aqua Dolce).\u003cbr\u003e         2. Apply to dry hair. \u003cstrong\u003eWork with your usual grooming tools\u003c\/strong\u003e (brush, comb) — the product facilitates the removal of dead hair and gentle detangling.\u003cbr\u003e         3.After about ten minutes, proceed directly to shampooing. \u003cstrong\u003eno rinsing\u003c\/strong\u003e.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdiv style=\"margin-top: 20px; padding: 20px; background: #f6f6f6; border: 1px dashed #1a1a1a;\"\u003e              \u003cspan style=\"font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; margin-bottom: 10px;\"\u003e🛠️ BOOSTER ASSOCIATIONS:\u003c\/span\u003e              \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e         For optimal effectiveness, mix Bio Energy Plus with one or more \u003cstrong\u003eoil-based integrators\u003c\/strong\u003e :\u003cbr\u003e                  ✨  \u003cstrong\u003eAqua Dolce\u003c\/strong\u003e and\/or \u003cstrong\u003e4 Element Oils\u003c\/strong\u003e and\/or \u003cstrong\u003eBombastic\u003c\/strong\u003e\u003cbr\u003e\u003cbr\u003e         The bath is then extended with any shampoo + mask + conditioner from the Special One range.       \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eCompatible with the entire Special One range downstream. Bio Energy Plus is the \u003cstrong\u003efirst step\u003c\/strong\u003e — all the rest of the bathing protocol comes after.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All cats — especially for degreasing without stripping.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All dogs in the salon — to limit the rapid return of knots.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Curly fur breeds: Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All Cocker Spaniels (American, English)\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Tibetan breeds: Shih Tzu, Lhasa Apso, Tibetan Terrier…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ English Toy Spaniels (Cavalier and King Charles)\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Long, silky furs: Yorkshire, Afghan…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️ Terriers: Scottish, Westie, Welsh… — long and not exhaustive list!\u003c\/td\u003e\u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819388494003,"sku":"WEX-BIO250 (100)","price":23.9,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819388428467,"sku":"WEX-BIO1 02 (106)","price":46.3,"currency_code":"EUR","in_stock":true},{"title":"5 Liters","offer_id":37819388461235,"sku":"WEX-BIO5 01 (99)","price":142.8,"currency_code":"EUR","in_stock":true},{"title":"10 Liters","offer_id":37819388526771,"sku":"WEX-KE10000 (251)","price":249.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/bioEnergyPlus.png?v=1680247667"},{"product_id":"aquarosa-passion-special-one","title":"Aquarosa PASSION Pro * Glitter *","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003eAQUAROSA PASSION\u003c\/strong\u003e It was created for true enthusiasts. \u003cstrong\u003e95% identical to the Aquarosa Pro\u003c\/strong\u003e — same multivitamin formula, same effectiveness — with the added benefit of \u003cstrong\u003erich and silky creamy texture\u003c\/strong\u003e,  a delicate and enveloping fragrance, and \u003cstrong\u003eglitter\u003c\/strong\u003e to add a little magic to your grooming routine.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find it truly beneficial — from professional grooming salons to individuals who want \u003cstrong\u003eenhance your pet with style\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"2.5\" cy=\"18\" cx=\"6\"\u003e\u003c\/circle\u003e\u003ccircle r=\"2.5\" cy=\"18\" cx=\"18\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle fill=\"#1a1a1a\" r=\"1\" cy=\"11.5\" cx=\"12\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"4\" cy=\"8\" cx=\"12\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"3\" cy=\"7\" cx=\"8\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle r=\"2\" cy=\"11\" cx=\"17\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eAquarosa Passion shares the formulation of the\u003cstrong\u003eAquarosa Pro\u003c\/strong\u003e — Special One shampoo, designed for furs in dire need of nourishment: intense hydration and nutrition, built-in conditioner, natural active ingredients. The difference? A distinctive color, a \u003cstrong\u003eenveloping signature fragrance\u003c\/strong\u003e and \u003cstrong\u003eglitter that makes grooming unique\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv style=\"margin-top: 20px;\" class=\"aqr-benefits\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv style=\"--i: 0;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eGentle bath\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eSuitable for dogs and cats of all ages, from babies to seniors.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 1;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDeep cleaning\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eCleans, sanitizes and gives shine to all hair types.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 2;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M5 19C5 11 11 5 19 5c0 8-6 14-14 14z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 19c4-4 7-6 11-7\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eImmediate nutrition\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eActive moisturizing and nourishing action, visible from the first shampoo.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 3;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M7 7c3 3 7 7 10 10M17 7C14 10 10 14 7 17\"\u003e\u003c\/path\u003e\u003ccircle r=\"2.4\" cy=\"12\" cx=\"12\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-knot\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eMakes detangling and brushing easier, limits the return of knots.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 4;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eKeratin protection\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases natural defenses to protect the hair structure.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 5;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eFrequent baths\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNo risk to skin and hair, even with intensive use.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 6;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003ePearly pearl \u0026amp; glitter\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003ePearly texture with iridescent and neon reflections: a multi-sensory spa ritual, enveloping fragrance and unique luminous effect.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Aquarosa Passion\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\" id=\"so-radar-widget\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\" id=\"so-radar-area\"\u003e\u003csvg viewbox=\"0 0 360 360\" style=\"width: 100%; height: 100%; overflow: visible;\" id=\"so-radar-svg\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 3 }, { label: \"Démêlant\", value: 3 }, { label: \"Texture\", value: 1 }, { label: \"Volume\", value: 3 }, { label: \"Soin peau\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (Aquarosa Passion active JS MAPPING - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Aquarosa Passion: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eAquarosa Passion shares the natural multivitamin composition of\u003cstrong\u003eAquarosa Pro\u003c\/strong\u003e — without SLES, without DEA, without parabens. Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\" id=\"aqr-carto\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul id=\"aqrList\" class=\"aqr-list\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv id=\"aqrSchemaWrap\" class=\"aqr-schema-wrap\"\u003e  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l'Aquarosa Passion\" style=\"display: block; width: 100%; height: auto;\" id=\"aqrSchemaImg\" class=\"aqr-schema-img\"\u003e  \u003csvg viewbox=\"0 0 100 225\" preserveaspectratio=\"none\" id=\"aqrOverlay\" class=\"aqr-overlay\"\u003e\u003c\/svg\u003e  \u003cdiv id=\"aqrConnectors\" class=\"aqr-connectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv id=\"aqrInfo\" class=\"aqr-info\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'rose', label:'Extraits de Rose Sauvage \u0026 Mauve', latin:'Rosa canina \u0026 Malva', family:'botanic',\n          desc:\"Extraits floraux riches en antioxydants, anti-inflammatoires, provitamine A et acides gras insaturés : ils nourrissent la fibre et apaisent la peau.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition antioxydante\", benefit:\"Nourrissent la fibre et la protègent du stress oxydatif.\" },\n            { anchor:'epiderme', action:\"Apaisement\", benefit:\"Apaisent la peau grâce à leurs propriétés anti-inflammatoires.\" }\n          ]\n        },\n        {\n          id:'flavo', label:'Flavonoïdes \u0026 Vitamine C', latin:'Antioxydants végétaux', family:'bio',\n          desc:\"Stimulent la synthèse de collagène et luttent contre le vieillissement cellulaire : éclat et vitalité du manteau.\",\n          targets: [\n            { anchor:'derme', action:\"Synthèse de collagène\", benefit:\"Stimulent le collagène et soutiennent la fermeté de la peau.\" },\n            { anchor:'tige_poil', action:\"Éclat \u0026 vitalité\", benefit:\"Luttent contre le vieillissement cellulaire pour un poil éclatant.\" }\n          ]\n        },\n        {\n          id:'chlorella', label:'Chlorella', latin:'Algue verte', family:'aqua',\n          desc:\"Algue détoxifiante : elle hydrate en profondeur tout en purifiant la peau et le poil.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Hydratation profonde\", benefit:\"Apporte une hydratation durable à la surface cutanée.\" },\n            { anchor:'epiderme', action:\"Détoxification\", benefit:\"Purifie et détoxifie la peau et le poil.\" }\n          ]\n        },\n        {\n          id:'eaudemer', label:'Eau de Mer', latin:'Oligo-éléments marins', family:'aqua',\n          desc:\"Hautement purifiante, elle apporte minéraux et oligo-éléments essentiels qui rééquilibrent et renforcent la peau.\",\n          targets: [\n            { anchor:'epiderme', action:\"Purification\", benefit:\"Purifie et rééquilibre la peau.\" },\n            { anchor:'derme', action:\"Reminéralisation\", benefit:\"Renforce la peau grâce aux oligo-éléments essentiels.\" }\n          ]\n        },\n        {\n          id:'glycurea', label:'Glycérine \u0026 Urée', latin:'Humectants', family:'aqua',\n          desc:\"Agents hydratants qui retiennent l’humidité dans la fibre : ils maintiennent le poil élastique et soyeux.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Rétention d’eau\", benefit:\"Retiennent l’humidité dans la fibre pour un poil souple.\" },\n            { anchor:'cuticule', action:\"Souplesse \u0026 soyeux\", benefit:\"Maintiennent un toucher soyeux et élastique.\" }\n          ]\n        },\n        {\n          id:'conditionneur', label:'Complexe Conditionneur', latin:'Agents démêlants', family:'cond',\n          desc:\"Facilite le peigne, élimine les nœuds et améliore la texture générale du manteau.\",\n          targets: [\n            { anchor:'cuticule', action:\"Démêlage \u0026 lissage\", benefit:\"Lisse la cuticule, élimine les nœuds et facilite le peigne.\" },\n            { anchor:'tige_poil', action:\"Texture du manteau\", benefit:\"Améliore la texture générale et la maniabilité du poil.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e  \u003cdiv style=\"margin-bottom: 12px;\" class=\"aqr-dilution\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eOne part for every 20 parts water\u003cbr\u003e— or pure\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan class=\"aqr-dilution-cycle-target\" id=\"aqrCycleTarget\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails open=\"\" class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eQuick, economical grooming \u0026amp; effective\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg stroke-linecap=\"round\" stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" height=\"14\" width=\"14\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eThe basic protocol for a gentle bath\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eStart the bath directly with the diluted Aquarosa Passion, on the wet coat. Rinse.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply a \u003cstrong\u003esecond shampoo\u003c\/strong\u003e,  then rinse again.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinal care\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with the appropriate conditioner: \u003cstrong\u003eHydrating Cream, Bombastic or Aqua Dolce\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eUltra-intense action — trade show, emergency or exhibition\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg stroke-linecap=\"round\" stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" height=\"14\" width=\"14\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor detangling in the salon, repairing very damaged fur, or enhancing show grooming\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAttack the bath with a \u003cstrong\u003epre-bath mask\u003c\/strong\u003e Bio Energy or Bombastic, enriched with 4 Element Oils or Hydrating Cream.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo-rinse application\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Aquarosa Passion \u003cstrong\u003edirectly after the mask, without intermediate rinsing\u003c\/strong\u003e.  Concentrate more and combine with Bombastic for greater effectiveness.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eLaid \u0026amp; double shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eLeave on for a few moments, massage if possible. \u003cstrong\u003eTwo shampoos are recommended.\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with a conditioner or mask as needed.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eIntegration boosters — nutrition \u0026amp; volume\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg stroke-linecap=\"round\" stroke-width=\"2\" stroke=\"currentColor\" fill=\"none\" height=\"14\" width=\"14\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eTwo options to customize the action of the Aquarosa Passion\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eNutrition Boost\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAdd \u003cstrong\u003ea spoonful of Aqua Dolce\u003c\/strong\u003e in your Aquarosa Passion mixture. Apply, leave on, then rinse with lukewarm water.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eVolume Boost\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMix the Aquarosa Passion with the mousse \u003cstrong\u003eAqua Vita\u003c\/strong\u003e :  Its effervescent effect adds volume and enhances detergency.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003cdiv style=\"margin-top: 12px; background: #f0f7ff; border-left: 3px solid #4a90d9; border-radius: 8px; padding: 10px 14px; font-size: 12px; line-height: 1.5;\"\u003e💡 In both options, finish drying by brushing with \u003cstrong\u003eAqua Beauty or Mix Pink\u003c\/strong\u003e for an even softer and shinier coat.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Aquarosa Passion at its heart + modular supplements If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003eSame associations as the\u003cstrong\u003eAquarosa Pro\u003c\/strong\u003e — The entire Special One range is compatible. Our favorite wedding bands:\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA second shampoo is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e4Poodle · Bain Pro · Aquapure Pro\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Mix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Aquarosa Passion makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱🐶 All dog breeds \u0026amp; cats \u003cspan\u003e(same specifications as the Aquarosa Pro)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e✨ The enthusiasts \u003cspan\u003e(performance \u0026amp; originality in the grooming routine)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLong and non-exhaustive list — all the performance of the Aquarosa Pro, with added magic.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLES, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Petdesign.fr","offers":[{"title":"250 mL","offer_id":40196750803123,"sku":"WAQ-AQROP250 (141)","price":25.9,"currency_code":"EUR","in_stock":true},{"title":"5 L","offer_id":40196750835891,"sku":"WAQ-AQROP5000  (154)","price":147.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/AquarosaPassion.png?v=1680253913"},{"product_id":"aquablu-pro-shampoing-bleu","title":"AQUABLU PRO","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 14px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003eAQUABLU PRO\u003c\/strong\u003e is the Special One professional shampoo with \u003cstrong\u003emarine bio-derived products and reflective blue pigments\u003c\/strong\u003e,  designed for \u003cstrong\u003eneutralize yellowing and intensify the brightness of natural colors\u003c\/strong\u003e.  Ideal for white coats, it also enhances black, fawn, and two-tone coats. Its ultra-gentle formula is suitable for sensitive skin and frequent use.\u003c\/div\u003e  \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 0 0 16px;\"\u003e❌  \u003cstrong\u003eDo not use\u003c\/strong\u003e If the goal is not to remove yellowing or revive the shine of a coat: the reflective blue pigment is a targeted active ingredient, of no interest on uniformly dark coats without undesirable reflections.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it — from trade shows to individuals — \u003cstrong\u003eas soon as the animal displays white, glossy black, or golden areas\u003c\/strong\u003e in its fur.\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eHis \u003cstrong\u003ereflective blue pigments\u003c\/strong\u003e It optically neutralizes yellow and orange tints—caused by the sun, sebum, urine, or saliva—to restore a pure and radiant white. Its advanced formula doesn't just cleanse: it hydrates, protects, and strengthens the skin without ever stripping it of its natural oils.\u003c\/p\u003e  \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"8\"\u003e\u003c\/circle\u003e\u003cpath d=\"M12 4a8 8 0 0 0 0 16\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003ePerfect white\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNeutralizes yellowing caused by sun, sebum, urine or saliva — radiant results from the first bath.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eVibrant colors\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIntensifies natural brightness — white, glossy black and fawns look even more beautiful.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDeep cleaning \u0026amp; soft\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eCleans and sanitizes without stripping or depriving the coat of its natural oils.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 7c3 3 7 7 10 10M17 7C14 10 10 14 7 17\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"2.4\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-knot\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNever amplifies the natural volume — limits the return of knots between baths.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eKeratin protection\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases natural defenses to protect the hair structure.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eSensitive skin\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eUltra-gentle formula, perfect for reactive skin — suitable for all ages.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eFrequent baths\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003ePerfectly suited for regular use to keep a coat looking impeccable.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of the Aquablu Pro\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv id=\"so-radar-widget\" style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv id=\"so-radar-area\" style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\"\u003e\u003csvg id=\"so-radar-svg\" style=\"width: 100%; height: 100%; overflow: visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Blancheur\", value: 5 }, { label: \"Éclat couleur\", value: 5 }, { label: \"Hydratation\", value: 4 }, { label: \"Soin peau\", value: 4 }, { label: \"Démêlant\", value: 2 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (Aquablu Pro active JS MAPPING - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Aquablu Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA precise formulation combining \u003cstrong\u003eReflective optical action, hydration and skin protection\u003c\/strong\u003e — Paraben-free, silicone-free. Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv id=\"aqr-carto\" style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e  \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display: block; width: 100%; height: auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l'Aquablu Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e  \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e  \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'pigments', label:'Pigments Bleus Réfléchissants', latin:'Actif optique signature', family:'cond',\n          desc:\"L’actif signature d’Aquablu Pro : déposés sur la fibre, ces pigments neutralisent optiquement les teintes jaunes et orangées pour un blanc pur et radieux dès la première application.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Neutralisation optique\", benefit:\"Annulent le reflet jaune\/orangé de la fibre pour révéler un blanc pur.\" },\n            { anchor:'cuticule', action:\"Éclat \u0026amp; luminosité\", benefit:\"Se déposent sur la cuticule pour intensifier la luminosité des couleurs.\" }\n          ]\n        },\n        {\n          id:'bleuet', label:'Extrait de Bleuet', latin:'Centaurea cyanus', family:'botanic',\n          desc:\"Extrait végétal aux propriétés lénifiantes et décongestionnantes : il apaise les peaux sensibles et réduit les rougeurs causées par des agents externes.\",\n          targets: [\n            { anchor:'epiderme', action:\"Apaisant \u0026 décongestionnant\", benefit:\"Apaise les peaux sensibles et réduit les rougeurs.\" },\n            { anchor:'film_hydro', action:\"Confort cutané\", benefit:\"Préserve le confort de surface des peaux réactives.\" }\n          ]\n        },\n        {\n          id:'chlorella', label:'Chlorella Vulgaris', latin:'Algue marine', family:'aqua',\n          desc:\"Algue riche en acides aminés, vitamines et minéraux : elle protège et renforce la structure du poil, améliore sa résistance et sa luminosité.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Renfort \u0026 résistance\", benefit:\"Renforce la structure du poil et améliore sa résistance.\" },\n            { anchor:'cuticule', action:\"Luminosité\", benefit:\"Lisse la surface pour rehausser la luminosité du manteau.\" }\n          ]\n        },\n        {\n          id:'alginate', label:'Alginate Hydrolysée', latin:'Dérivé d’algues marines', family:'aqua',\n          desc:\"Extraite d’algues marines : puissante action hydratante et reminéralisante, elle favorise la santé du manteau et prévient la sécheresse cutanée.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Hydratation intense\", benefit:\"Apporte une hydratation profonde et prévient la sécheresse cutanée.\" },\n            { anchor:'epiderme', action:\"Reminéralisation\", benefit:\"Reminéralise la peau et soutient la santé du manteau.\" }\n          ]\n        },\n        {\n          id:'vitb12', label:'Vitamine B12 \u0026amp; Bêta-Carotène', latin:'Cobalamine \u0026 provitamine A', family:'bio',\n          desc:\"Hydratent la structure du poil de l’intérieur et neutralisent les toxines environnementales : ils contribuent à la vitalité et à l’éclat durable du manteau.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Hydratation interne\", benefit:\"Hydratent la fibre de l’intérieur pour un éclat durable.\" },\n            { anchor:'epiderme', action:\"Anti-toxines\", benefit:\"Neutralisent les toxines environnementales et soutiennent la vitalité.\" }\n          ]\n        },\n        {\n          id:'eaudemer', label:'Eau de Mer', latin:'Oligo-éléments marins', family:'bio',\n          desc:\"Riche en oligo-éléments essentiels : elle rééquilibre et renforce la peau, lui apporte vitalité et protection contre les agressions extérieures.\",\n          targets: [\n            { anchor:'derme', action:\"Reminéralisation profonde\", benefit:\"Apporte les oligo-éléments qui renforcent la peau en profondeur.\" },\n            { anchor:'epiderme', action:\"Protection \u0026 vitalité\", benefit:\"Protège la peau des agressions extérieures et soutient sa vitalité.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003ePure on yellowed areas\u003cbr\u003eor 1\/20 for a gentle bath\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails class=\"aqr-proto-acc\" open=\"\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eMaintenance bath — daily whitening\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor regular maintenance of the white coat\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eDiluted application\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply diluted Aquablu Pro to \u003cstrong\u003e1\/20\u003c\/strong\u003e on wet fur. Massage to create a soft lather, leave on for a few minutes.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eDouble shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse thoroughly, then shampoo again. \u003cstrong\u003eTwo shampoos are recommended.\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinal care\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream or Extra Body Cream\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinished with \u003cstrong\u003eMix Pink or Style 360\u003c\/strong\u003e.  Can be used in frequent baths to maintain a perfectly white coat between exhibitions.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eIntense anti-yellowing action — before exhibition or competition\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor maximum brilliance before a ring presentation\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepare with \u003cstrong\u003eBio Energy Plus + integrators\u003c\/strong\u003e (Hygro Fluid, 4 Element Oils) as a pre-bath mask.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePure application without rinsing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Aquablu Pro \u003cstrong\u003ePure, directly onto the mask without rinsing\u003c\/strong\u003e.  Leave it to act for a few minutes.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eDouble shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse, then shampoo again. \u003cstrong\u003eTwo shampoos are recommended.\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream or Extra Body Cream\u003c\/strong\u003e,  then Mix Pink or Style 360 ​​as a finish.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eBoost pigment — mix with Aqua Vita\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eTo further intensify the action of the blue pigment\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eBlend\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMix directly \u003cstrong\u003eAquablu Pro with Aqua Vita foam\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eEnhanced penetration\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eThe effervescent effect of Aqua Vita promotes the \u003cstrong\u003epenetration of blue pigment into the hair structure\u003c\/strong\u003e,  intensifying the anti-yellowing action.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eLaid \u0026amp; rinsing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply, leave on for a few minutes, rinse thoroughly. Regular use of this duo keeps your coat white, pristine, and shiny for longer.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Aquablu Pro at its core + modular supplements If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with the Aquablu Pro.Our favorite alliances:\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus + integrators\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Extra Body Cream\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eAn anti-yellowing boost is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAqua Vita (effervescent foam)\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eMix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere the Aquablu Pro makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🤍 White or two-tone\/three-tone dresses \u003cspan\u003e(cats) \u0026amp; dogs with white markings)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🖤 Shiny black coats \u0026amp; wild beasts \u003cspan\u003e(exalted colors)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 White curly furs \u003cspan\u003e(Poodles, Bichons, Havanese, Coton de Tuléar, Bedlington)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🏔️ Light-skinned Tibetan races \u003cspan\u003e(Shih Tzu, Lhasa Apso, Tibetan Terrier)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 White or bi-colored Cocker Spaniels \u003cspan\u003e(American, English)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e👑 Light-colored English Toy Spaniels \u003cspan\u003e(Rider \u0026amp; King Charles)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e✨ Long \u0026amp; silky white \u003cspan\u003e(Maltese, Afghan Hounds, Bicolor Yorkshire Terriers)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐾 White Terriers \u003cspan\u003e(Westie, Scottish, Welsh)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLong and non-exhaustive list — anywhere there is white, glossy black or gold areas to revive.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819388854451,"sku":"WAQ-AQBL250 (39)","price":19.9,"currency_code":"EUR","in_stock":true},{"title":"5 Litres","offer_id":37819388821683,"sku":"WAQ-AQBL5000 (35)","price":112.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Aquablue_bea85c6e-3219-48bd-aa0f-2cc32655cd93.png?v=1680256908"},{"product_id":"huiles-4-elements","title":"OILS 4 ELEMENTS","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003e4 Element Oils – Special One | Product Sheet\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003e4-ELEMENT OILS\u003c\/strong\u003e is the Special One oil blend designed for \u003cstrong\u003estrengthen and rebuild the coat\u003c\/strong\u003e.  A true jack-of-all-trades that enhances all coats of all breeds — as an integrator, detangler, pre-bath treatment, in foil wraps or poultices.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it truly beneficial — this product will enhance all coats without exception.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThis complex of \u003cstrong\u003efour precious vegetable oils\u003c\/strong\u003e — formulated using fractions \u003cstrong\u003eunsaponifiables\u003c\/strong\u003e,  The finest part of each oil, rich in fat-soluble vitamins, antioxidants, polyphenols, and squalene, is incorporated into every step of grooming. Its versatility and gentleness make it an essential addition to every grooming kit. \u003cstrong\u003eNon-greasy, non-occlusive\u003c\/strong\u003e :  Thanks to its affinity with sebum and its sebo-restorative properties, it is easily absorbed by the skin and hair, nourishing deeply and lastingly without ever weighing down.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️  \u003cstrong\u003eDo not use in large quantities in leave-in conditioner:\u003c\/strong\u003e Too much oil + the heat from the hairdryer = a \u0026quot;cooking\u0026quot; effect — the hair comes out dry and damaged. Use oil instead. \u003cstrong\u003eupstream of the bath\u003c\/strong\u003e,  not right before blow-drying.     \u003c\/div\u003e            \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRevitalizing action \u0026amp; restructuring:\u003c\/strong\u003e Strengthens and rebuilds the coat from within.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrightness \u0026amp; velvety feel:\u003c\/strong\u003e It adds shine and softness to the coat from the first application.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDetangler:\u003c\/strong\u003e Makes detangling and brushing easier — effective even on knots when dry.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAnti-felting:\u003c\/strong\u003e Prevents knots and felting from returning between baths.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRepair :\u003c\/strong\u003e Repairs broken and damaged hairs, strengthens the fiber in the long term.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eImproved growth:\u003c\/strong\u003e When used in papillotes and poultices, it improves growth and coat quality.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 3: ASSETS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eFour precious plant oils with complementary properties — paraben-free, silicone-free.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Argan Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eDerived from Argania Spinosa from Morocco. Antioxidant, moisturizing, elasticizing, and healing—easily absorbed thanks to its sebum-regulating, anti-aging properties. Rich in unsaturated fatty acids (linoleic, oleic), carotene, vitamin E, and sterols. Ideal for dry and frizzy coats.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Walnut Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRich in tannins, flavonoids, gallic and caffeic acids. Has purifying, antibacterial, antifungal and anti-inflammatory properties.Spreads quickly to smooth frizzy or unruly hair — ideal for preparing baths or masks.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Sunflower Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eCold-pressed, rich in oleic (32%) and linoleic (54%) acids and antioxidant vitamin E. Strengthens the skin's natural lipid barrier and prevents dehydration. Cell-regenerating—emollient, moisturizing, and rebalancing for sensitive or irritated skin.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Soybean (Corn) Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eExtracted from corn germ — light, emollient, and toning. Very well tolerated by dry skin. Rich in vitamin E, oleic acid, and linoleic acid — a natural anti-aging ingredient that balances the hydrolipidic film and brightens the coat, leaving it velvety.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Integrator — in the pre-bath mask or conditioner\u003c\/span\u003e                  \u0026amp;SCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         The universal integration method:\u003cbr\u003e                  💫 In any \u003cstrong\u003epre-bath mask\u003c\/strong\u003e : \u003cstrong\u003e3 pressures of 4-element oil per liter\u003c\/strong\u003e of prepared product.\u003cbr\u003e                  💫 In the\u003cstrong\u003eHydrating Cream at the end of the bath\u003c\/strong\u003e :  add \u003cstrong\u003e1 press\u003c\/strong\u003e to enrich the conditioner.\u003cbr\u003e                  💫 For furs in severe condition: apply the Oils \u003cstrong\u003eup to 24 hours before the bath\u003c\/strong\u003e to maximize the time of action and the intensity of the benefits.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Dry detangling — knots \u0026amp; feltings\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         To treat knots and matted areas without wetting the hair:\u003cbr\u003e                  💫 Apply the \u003cstrong\u003ePure 4 Element Oils directly onto the knot\u003c\/strong\u003e.  Allow it to penetrate for a few moments.\u003cbr\u003e                  💫 Brush gently with a soft bristle brush — the knot will come undone without pain or breakage.\u003cbr\u003e                  💫 On the \u003cstrong\u003edogs wrapped in foil or with elastic bands\u003c\/strong\u003e :  Upon opening, if the hair is knotted or matted, apply pure oil to the strand and brush with a soft brush.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Papillotes \u0026amp; poultices — sprout \u0026amp; competition\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         For dogs in foil wraps or requiring long-term treatment for hair growth:\u003cbr\u003e                  💫 Use the Oils \u003cstrong\u003epure or mixed with Aqua Dolce + Hydrating Cream\u003c\/strong\u003e to prepare and wrap the strands.\u003cbr\u003e                  💫 The oil complex nourishes the fiber in a prolonged manner and improves the quality and density of regrowth over the weeks.\u003cbr\u003e                  💫 Ideal for competition preparation for breeds whose coat needs to be long, dense and shiny.       \u003c\/div\u003e          \u003c\/details\u003e          \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 4 🔥 Post-bath restorative conditioner — for very damaged coats\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         For intense restorative action after shampooing:\u003cbr\u003e         1. In a bowl, mix \u003cstrong\u003e10 drops of 4 Element Oils + 2 tablespoons of cream\u003c\/strong\u003e your choice: Hydrating Cream, Aqua Dolce or Extra Body Cream.\u003cbr\u003e         2. Dilute with \u003cstrong\u003e500 mL of hot water\u003c\/strong\u003e and mix well.\u003cbr\u003e         3. Apply evenly along the entire length of the hair.\u003cbr\u003e         4.On very damaged coats: leave to set \u003cstrong\u003e5 minutes under a gentle heat source\u003c\/strong\u003e To promote absorption, rinse thoroughly.\u003cbr\u003e         5. Dry at a low temperature, moderate air.\u003cbr\u003e\u003cbr\u003e                  \u003cem\u003eA simple alternative:\u003c\/em\u003e After bathing, rub a few drops onto the damp fur and dry without rinsing.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e as a pre-bath mask       🤝  \u003cstrong\u003eAll Special One shampoos\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eHydrating Cream\/Aqua Dolce\u003c\/strong\u003e at the end of a bath or for wrapping in paper.     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0;\"\u003e✔️  \u003cstrong\u003eAll coats of all breeds, without exception\u003c\/strong\u003e — dogs and cats of all ages.\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e    \u003c\/body\u003e","brand":"Endemik Sas","offers":[{"title":"200 mL","offer_id":37819388887219,"sku":"WEX-4EL200 (145)","price":71.9,"currency_code":"EUR","in_stock":true},{"title":"50 mL","offer_id":37819388919987,"sku":"WEX-4EL50 (140)","price":37.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-21.png?v=1666170332"},{"product_id":"hygro-fluid","title":"HYGRO FLUID","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003eHygro Fluid – Special One | Product Sheet\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eHYGRO FLUID\u003c\/strong\u003e is the Special One nourishing integrator designed for \u003cstrong\u003estrengthen and rebuild the coat\u003c\/strong\u003e.  Rich in precious plant oils, it plays a central role in balancing the hydrolipidic film and restoring the skin's flora. Its structure allows for \u003cstrong\u003ebetter absorption of the active ingredients of the products used afterwards\u003c\/strong\u003e — a natural amplifier for all your treatments.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it truly beneficial — this product enhances all coat types without exception. It perfectly complements the other two products in the range: \u003cstrong\u003eSuper Keeper and 4 Element Oils\u003c\/strong\u003e.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eHygro Fluid cleanses the dermis, rebalances the skin flora, and prepares the skin to better absorb the active ingredients of subsequent skincare products. Its use beforehand amplifies the effectiveness of all products applied afterward—a role of \u003cstrong\u003enatural catalyst\u003c\/strong\u003e unique among the integrators in the range.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️ If you add too much Hygro Fluid after bathing without rinsing, be careful when blow-drying—the result could be too oily. It's best to use it as directed. \u003cstrong\u003eupstream\u003c\/strong\u003e bath.     \u003c\/div\u003e            \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRevitalizing action \u0026amp; restructuring:\u003c\/strong\u003e Strengthens and rebuilds the coat from within.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrightness \u0026amp; velvety feel:\u003c\/strong\u003e It adds shine and softness to the coat from the first application.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDetangler:\u003c\/strong\u003e Makes detangling and brushing easier, prevents knots and matting from returning.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRepair :\u003c\/strong\u003e Repairs broken hairs and strengthens the fiber in the long term.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eSkin protection:\u003c\/strong\u003e Protects the skin from aggressions and dirt by rebalancing the hydrolipidic film.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eExam preparation:\u003c\/strong\u003e Prepare the furs for a ring presentation — optimal results in synergy with other integrators.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 3: ASSETS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA concentrate of precious plant oils with moisturizing, protective and anti-aging properties — paraben-free, silicone-free.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Rice Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eAntioxidant and natural UV filter — absorbs UV rays and protects hair and skin from sun damage.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Rose Seed Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRevitalizing and protective — deeply nourishes the skin, promotes cell regeneration and strengthens the natural defenses of the dermis.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Omega 3 \u0026amp; 6\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eVitamin and anti-aging for hair — nourish and strengthen the hair fiber, improving elasticity, shine and long-term resistance.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Incorporate into the pre-bath mask or shampoo\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         The daily integration method:\u003cbr\u003e                  💫 In the \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e :  add \u003cstrong\u003e1 to 2 tablespoons of Hygro Fluid per liter\u003c\/strong\u003e of prepared mask — it amplifies the moisturizing action of the mask from the pre-bath phase.\u003cbr\u003e                  💫 In the \u003cstrong\u003eshampoo\u003c\/strong\u003e :  add \u003cstrong\u003e1 tablespoon\u003c\/strong\u003e directly into your usual shampoo (unless you are looking for maximum volume).\u003cbr\u003e                  💫 For furs in very poor condition: apply Hygro Fluid \u003cstrong\u003eup to 24 hours before the bath\u003c\/strong\u003e to maximize the penetration of the assets.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Conditioner enrichment\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         To enrich the final conditioner:\u003cbr\u003e                  💫 Add \u003cstrong\u003e1 to 2 pumps of Hygro Fluid into the Hydrating Cream\u003c\/strong\u003e at the end of the bath.\u003cbr\u003e         The oil complex enriches the conditioner and improves the softness, velvety feel and hold of the hair after drying.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Skin program — fighting skin problems\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Hygro Fluid is a key element of the skin problem prevention program:\u003cbr\u003e         1. \u003cstrong\u003eBio Energy Plus + Hygro Fluid\u003c\/strong\u003e as a pre-bath mask (20 min application) — the duo rebalances the hydrolipidic film and prepares the skin to absorb the following treatment.\u003cbr\u003e         2. Shampoo with \u003cstrong\u003eSkincare Pro\u003c\/strong\u003e.\u003cbr\u003e         3. Finalize with \u003cstrong\u003eHydrating Cream + 1 pump of Hygro Fluid\u003c\/strong\u003e.\u003cbr\u003e         This trio (Bio Energy + Hygro Fluid + Skincare Pro) is the benchmark for chronically unbalanced skin.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eThe entire Special One range is compatible with Hygro Fluid. Our favorite combinations:\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003e              🤝  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e as a pre-bath mask (fundamental association)       🤝  \u003cstrong\u003eAll Special One shampoos\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e at the end of the bath     \u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px; padding: 10px 14px; background: #f9f9f9; border: 1px solid #eee;\"\u003e              💛 Perfectly complementary to the other two integrators: \u003cstrong\u003eSuper Keeper\u003c\/strong\u003e And \u003cstrong\u003e4 Element Oils\u003c\/strong\u003e — the three work in symbiosis for complete action on all furs.     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0;\"\u003e✔️  \u003cstrong\u003eAll coats of all breeds, without exception\u003c\/strong\u003e — dogs and cats of all ages.\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e    \u003c\/body\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":37819389083827,"sku":"WEX-HYG 020 (38)","price":77.5,"currency_code":"EUR","in_stock":true},{"title":"250 mL","offer_id":37819389116595,"sku":"WEX-HYG250 (36)","price":36.3,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/hygrofluid_7d67bda4-a773-40c0-a567-df3b744fc2b2.png?v=1680256952"},{"product_id":"super-keeper","title":"SUPER KEEPER","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003eSuper Keeper – Special One | Product Details\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eSUPER KEEPER\u003c\/strong\u003e is the Special One protective integrator, \u003cstrong\u003ehighly restorative\u003c\/strong\u003e,  Designed to strengthen and rebuild the coat. Its blend of selected plant oils and polysaccharides gently coats the hair, protects it from damage, and minimizes matting. One of the products \u003cstrong\u003efavorites of client groomers\u003c\/strong\u003e for its ultra-powerful properties.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it truly beneficial—this product enhances all coat colors without exception. It perfectly complements the other two integrators: \u003cstrong\u003eHygro Fluid and 4 Element Oils\u003c\/strong\u003e.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts \u003cstrong\u003eA special structure delicately envelops each hair.\u003c\/strong\u003e — Moisturizing from within and protecting from the outside against physical, chemical, and environmental aggressors. The oily composition regenerates damaged fur, restoring shine and body from the very first treatments. This \u0026quot;protective sheath\u0026quot; effect is what distinguishes Super Keeper and makes it a go-to choice for heavily used or fragile coats.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️ If you add too much Super Keeper after bathing without rinsing, be careful when blow-drying—the result could be too greasy. It's best to use it sparingly. \u003cstrong\u003eupstream\u003c\/strong\u003e bath.     \u003c\/div\u003e            \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRevitalizing action \u0026amp; restructuring:\u003c\/strong\u003e Strengthens and rebuilds the coat from the very first treatments.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrightness \u0026amp; velvety feel:\u003c\/strong\u003e It adds shine and softness to the coat from the first application.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDetangler \u0026amp; anti-felting:\u003c\/strong\u003e Makes detangling and brushing easier, minimizes knot formation.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eProtective sheath:\u003c\/strong\u003e It coats the hair and protects the skin from external aggressions and dirt.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRepair :\u003c\/strong\u003e Repairs broken hairs and strengthens the fiber in the long term.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eExam preparation:\u003c\/strong\u003e Prepare the furs for ring presentation by maximizing shine and hold.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 3: ASSETS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eAn exclusive blend of vegetable oils and polysaccharides specially selected for the perfect care of all coats — paraben-free, silicone-free.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Complex of Vegetable Oils\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eSelected blend to envelop the hair in a light protective sheath — moisturizes without weighing it down, regenerates damaged hair and protects against aggressions.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Polysaccharides\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eNaturally derived moisturizing agents — form a protective coating on the fiber, retain moisture and improve the elasticity and resistance of the hair.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u0026amp;Example 1 🔥 Incorporate into the pre-bath mask or shampoo\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         The universal integration method:\u003cbr\u003e                  💫 In the \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e :  add \u003cstrong\u003e1 to 2 tablespoons of Super Keeper per liter\u003c\/strong\u003e of the prepared mask.\u003cbr\u003e                  💫 In the \u003cstrong\u003eshampoo\u003c\/strong\u003e :  add \u003cstrong\u003e1 tablespoon\u003c\/strong\u003e to enhance the cleansing action (except when seeking maximum volume).\u003cbr\u003e                  💫 For furs in very poor condition: apply Super Keeper \u003cstrong\u003eneat, up to 24 hours before bathing\u003c\/strong\u003e as a restorative shock treatment — massage and leave on.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Conditioner enrichment\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         To enrich the final conditioner:\u003cbr\u003e                  💫 Add \u003cstrong\u003e1 to 2 pumps of Super Keeper in the Hydrating Cream\u003c\/strong\u003e at the end of the bath.\u003cbr\u003e         The protective sheath effect of Super Keeper complements the hydration of Hydrating Cream for a shiny, velvety and long-lasting result.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 The ultimate Terrier protocol — texture, elasticity \u0026amp; hair removal without drying\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         The protocol, concentrated into a single step, is universal for all Terriers:\u003cbr\u003e         1. Mix \u003cstrong\u003eequal parts: Super Keeper + Bio Energy Plus + Keratin Pro\u003c\/strong\u003e.\u003cbr\u003e         2. Lather, apply to wet hair, massage, rinse.\u003cbr\u003e         The hair is textured for hair removal, elasticity is preserved by Bio Energy, the coat remains nourished thanks to Super Keeper — without drying out.         \u003cdiv style=\"margin-top: 10px; background: #f0fff4; border-left: 3px solid #2ecc71; padding: 10px 12px; font-size: 12px;\"\u003e                      ✨  \u003cstrong\u003eA must-try on all Terriers\u003c\/strong\u003e — this 3-in-1 protocol is a game changer for regular hair removal.         \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eThe entire Special One range is compatible with Super Keeper. Our favorite wedding bands:\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003e              🤝  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e as a pre-bath mask       🤝  \u003cstrong\u003eAll Special One shampoos\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e at the end of the bath     \u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px; padding: 10px 14px; background: #f9f9f9; border: 1px solid #eee;\"\u003e              💛 Perfectly complementary to \u003cstrong\u003eHygro Fluid\u003c\/strong\u003e And \u003cstrong\u003e4 Element Oils\u003c\/strong\u003e — the three integrators work in symbiosis for complete action on all furs.\u003cbr\u003e       Also perfect for a \u003cstrong\u003eskin program\u003c\/strong\u003e in association with Bio Energy Plus \u0026amp; Skincare Pro.     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️  \u003cstrong\u003eAll coats of all breeds, without exception\u003c\/strong\u003e — dogs and cats of all ages.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️  \u003cstrong\u003eParticularly suitable for breeds with keratin coats\u003c\/strong\u003e — Terriers, Schnauzers, Cockers and other breeds with dense, harsh or high keratin-rich hair.\u003c\/td\u003e\u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e    \u003c\/body\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819389313203,"sku":"WEX-SPK250 (56)","price":37.9,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819389280435,"sku":"WEX-SPK 023 (55)","price":88.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/superKeeper.png?v=1680703362"},{"product_id":"hydrating-cream-masque-final-sublimateur","title":"HYDRATING CREAM, sublimating final mask","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003eHYDRATING CREAM\u003c\/strong\u003e is the \u003cstrong\u003eSpecial One's best-selling professional moisturizing mask of all time\u003c\/strong\u003e.  Essential for discovering the range.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEssential for \u003cstrong\u003eall races\u003c\/strong\u003e,  particularly for the \u003cstrong\u003econditioning of fringes and beards\u003c\/strong\u003e and coats requiring a \u003cstrong\u003edeep hydration\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eA \u003cstrong\u003eformulation enriched with natural active ingredients\u003c\/strong\u003e to nourish and revitalize with a \u003cstrong\u003eanti-aging effect\u003c\/strong\u003e.  Excerpts from \u003cstrong\u003esilk\u003c\/strong\u003e They provide exceptional shine for a vibrant color.\u003c\/p\u003e  \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M4 4h16v6M4 4v3M8 4v3M12 4v3M16 4v3M20 4v3M4 10h16l-2 10H6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDetangling\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eMakes brushing easier and \u003cstrong\u003eavoids the return of the knots\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M4 9h12a3 3 0 1 0-3-3\"\u003e\u003c\/path\u003e\u003cpath d=\"M4 14h16a3 3 0 1 1-3 3\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eSpeed\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eSignificantly reduces the \u003cstrong\u003edrying time\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M12 3v2M12 19v2M3 12h2M19 12h2M5.6 5.6l1.4 1.4M17 17l1.4 1.4M5.6 18.4l1.4-1.4M17 7l1.4-1.4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eProtection\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003e  \u003cstrong\u003eUV filter\u003c\/strong\u003e and action \u003cstrong\u003eanti-fork\u003c\/strong\u003e to preserve the tips.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eHealth\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eMaintains the\u003cstrong\u003eskin elasticity\u003c\/strong\u003e and perfectly healthy skin.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eVitality\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eTexture plus \u003cstrong\u003eflexible and sheathed\u003c\/strong\u003e from the very first application.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Hydrating Cream\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv id=\"so-radar-widget\" style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv id=\"so-radar-area\" style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\"\u003e\u003csvg id=\"so-radar-svg\" style=\"width: 100%; height: 100%; overflow: visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 5 }, { label: \"Brillance\", value: 4 }, { label: \"Démêlant\", value: 4 }, { label: \"Volume\", value: 3 }, { label: \"Soin peau\", value: 4 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active ingredients Hydrating Cream - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of the Hydrating Cream: 4 pairs of synergistic active ingredients\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA \u003cstrong\u003esophisticated formulation\u003c\/strong\u003e which penetrates to the heart of the fiber for total regeneration — four pairs of active ingredients with complementary properties.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv id=\"aqr-carto\" style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e  \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display: block; width: 100%; height: auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l’Hydrating Cream\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e  \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e  \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'argan', label:'Argan \u0026amp; Macadamia', latin:'Huiles précieuses', family:'botanic',\n          desc:\"Duo d’huiles précieuses : nutrition intense, hydratation et élasticité grâce à l’acide palmitoléique (rare et précieux).\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition intense\", benefit:\"Nourrit la fibre en profondeur et apporte souplesse et élasticité.\" },\n            { anchor:'cuticule', action:\"Hydratation lipidique\", benefit:\"Lisse la cuticule et restitue brillance et toucher gainé.\" }\n          ]\n        },\n        {\n          id:'soie', label:'Soie \u0026amp; Collagène', latin:'Protéines structurantes', family:'aqua',\n          desc:\"Duo restructurant : la \u003cstrong\u003esoie\u003c\/strong\u003e dépose un film protecteur et confère une brillance exceptionnelle ; le \u003cstrong\u003ecollagène\u003c\/strong\u003e restructure la fibre en profondeur.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Restructuration\", benefit:\"Renforce la structure interne et restaure la cohésion du poil.\" },\n            { anchor:'cuticule', action:\"Brillance éclatante\", benefit:\"Dépose un film protecteur soyeux — signature « brillance » du produit.\" }\n          ]\n        },\n        {\n          id:'ginseng', label:'Ginseng \u0026amp; Fucus', latin:'Plantes adaptogènes \u0026amp; marines', family:'bio',\n          desc:\"Duo régénérant : le \u003cstrong\u003eginseng\u003c\/strong\u003e antioxydant tonifie et oxygène ; le \u003cstrong\u003efucus\u003c\/strong\u003e (algue brune) reminéralise et participe à la régénération cellulaire.\",\n          targets: [\n            { anchor:'derme', action:\"Régénération cellulaire\", benefit:\"Soutient la régénération profonde et l’oxygénation cutanée.\" },\n            { anchor:'epiderme', action:\"Action antioxydante\", benefit:\"Protège des stress oxydatifs — effet anti-âge.\" }\n          ]\n        },\n        {\n          id:'proteines', label:'Protéines végétales \u0026amp; Vitamine E', latin:'Bouclier protecteur', family:'cond',\n          desc:\"Duo protecteur : les \u003cstrong\u003eprotéines végétales\u003c\/strong\u003e hydratent l’épiderme ; la \u003cstrong\u003evitamine E\u003c\/strong\u003e protège les cellules contre les radicaux libres.\",\n          targets: [\n            { anchor:'epiderme', action:\"Protection cellulaire\", benefit:\"Hydrate l’épiderme et le protège des radicaux libres.\" },\n            { anchor:'film_hydro', action:\"Apport humectant\", benefit:\"Restaure le film hydrolipidique et maintient l’hydratation.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e  \u003c!-- STORYTELLING INSERT: Historical Bestseller --\u003e  \u003cdiv style=\"margin-top: 25px; padding: 22px 24px; background: #fff; border-left: 3px solid #1d1d1f;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin-bottom: 12px; display: block;\"\u003e✨ The signature Hydrating Cream\u003c\/span\u003e  \u003cp style=\"font-size: 14px; margin: 0 0 10px; font-weight: 600;\"\u003eSpecial One's all-time bestseller\u003c\/p\u003e  \u003cp style=\"font-size: 13px; margin: 0; color: #444; line-height: 1.65;\"\u003eL'\u003cstrong\u003eHydrating Cream\u003c\/strong\u003e is the best-selling professional moisturizing mask in Special One's history — the product that introduced the brand to thousands of groomers. Its formula is based on the \u003cstrong\u003esilk extracts\u003c\/strong\u003e,  which deposit a silky protective film and give the coat a \u003cstrong\u003eExceptional shine for a vibrant color\u003c\/strong\u003e.  It is \u003cem\u003ethere\u003c\/em\u003e entry point to the range.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalences) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e60\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003e1 teaspoon to 2 tablespoons\u003cbr\u003eper liter depending on the result\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e150 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 9 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e500 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 30 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e3 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 180 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e17\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e17\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e1\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoon\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '17', g: '17', spoon: '1' },\n        { target: '2 L', ml: '33', g: '33', spoon: '2' },\n        { target: '4 L', ml: '67', g: '67', spoon: '4' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003c!-- METHOD OF PREPARATION BLOCK (infographic, not a protocol) --\u003e  \u003cdiv class=\"aqr-method-box\"\u003e  \u003cdiv class=\"aqr-method-eyebrow\"\u003e🛠️ Preparation method\u003c\/div\u003e  \u003ch3 class=\"aqr-method-title\"\u003eMaking perfect cream in 6 steps — homemade tips\u003c\/h3\u003e  \u003cp class=\"aqr-method-subtitle\"\u003eThis anti-clumping method is the basis of \u003cstrong\u003e3 protocols below\u003c\/strong\u003e — a single movement to master.\u003c\/p\u003e  \u003col class=\"aqr-method-grid\"\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e01\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eDosage\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eTake \u003cstrong\u003e1 spoon\u003c\/strong\u003e of cream in a bowl or a shaker.\u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e02\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eOil \u003cspan class=\"aqr-method-opt\"\u003e(option)\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eIf residual nodes: \u003cstrong\u003e1 Oil Pressure 4 Elements\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e03\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eWater \u003cem\u003every\u003c\/em\u003e hot\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eApproximately \u003cstrong\u003e5 cm of very hot water\u003c\/strong\u003e — essential for \u003cstrong\u003edissolve the oils\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e04\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eEmulsify\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003e  \u003cstrong\u003eA whisk or blender is essential!\u003c\/strong\u003e Shake\/mix until a homogeneous emulsion is formed.\u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e05\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eBio Energy Plus \u003cspan class=\"aqr-method-opt\"\u003e(option)\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003e  \u003cstrong\u003e2 pumps of Bio Energy Plus\u003c\/strong\u003e to boost the moisturizing effect.\u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-method-step\"\u003e  \u003cdiv class=\"aqr-method-num\"\u003e06\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-title\"\u003eComplete \u0026amp; apply\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eTop up with lukewarm water, mix well, apply. \u003cstrong\u003eDo not rinse (or rinse very little)\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003cdiv class=\"aqr-method-tip\"\u003e  \u003cspan class=\"aqr-method-tip-icon\"\u003e💡\u003c\/span\u003e  \u003cstrong\u003eOur advice:\u003c\/strong\u003e Unlike other creams, the Hydrating Cream reveals itself fully \u003cstrong\u003ewithout rinsing (or with a very light rinse)\u003c\/strong\u003e — this is what allows the silky film to adhere properly to the fiber.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-method-box {\n        background: #f5f5f7;\n        border: 1px solid #e5e5e7;\n        border-radius: 14px;\n        padding: 22px 24px 24px;\n        margin-bottom: 18px;\n        font-family: inherit;\n      }\n      .aqr-method-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 600;\n        margin-bottom: 8px;\n      }\n      .aqr-method-title {\n        font-size: 18px;\n        font-weight: 600;\n        color: #1d1d1f;\n        margin: 0 0 6px;\n        line-height: 1.3;\n      }\n      .aqr-method-subtitle {\n        font-size: 13px;\n        color: #6e6e73;\n        margin: 0 0 18px;\n        line-height: 1.5;\n      }\n      .aqr-method-grid {\n        list-style: none;\n        margin: 0;\n        padding: 0;\n        display: grid;\n        grid-template-columns: repeat(6, 1fr);\n        gap: 10px;\n      }\n      .aqr-method-step {\n        background: #fff;\n        border: 1px solid #e5e5e7;\n        border-radius: 10px;\n        padding: 14px 12px;\n        display: flex;\n        flex-direction: column;\n        gap: 6px;\n        position: relative;\n      }\n      .aqr-method-step + .aqr-method-step::before {\n        content: '→';\n        position: absolute;\n        left: -10px;\n        top: 50%;\n        transform: translateY(-50%);\n        color: #c2a85c;\n        font-weight: 600;\n        font-size: 12px;\n        background: #f5f5f7;\n        padding: 0 3px;\n      }\n      .aqr-method-num {\n        font-size: 11px;\n        font-weight: 700;\n        color: #c2a85c;\n        letter-spacing: 0.1em;\n      }\n      .aqr-method-step-title {\n        font-size: 13px;\n        font-weight: 600;\n        color: #1d1d1f;\n      }\n      .aqr-method-opt {\n        font-weight: 400;\n        color: #86868b;\n        font-size: 11px;\n      }\n      .aqr-method-step-desc {\n        font-size: 12px;\n        line-height: 1.45;\n        color: #515154;\n      }\n      .aqr-method-tip {\n        margin-top: 16px;\n        padding: 12px 14px;\n        background: #fff;\n        border-left: 3px solid #c2a85c;\n        border-radius: 6px;\n        font-size: 12.5px;\n        color: #515154;\n        line-height: 1.55;\n      }\n      .aqr-method-tip-icon {\n        margin-right: 4px;\n      }\n      @media (max-width: 900px) {\n        .aqr-method-grid { grid-template-columns: repeat(2, 1fr); }\n        .aqr-method-step + .aqr-method-step::before { display: none; }\n      }\n      @media (max-width: 480px) {\n        .aqr-method-grid { grid-template-columns: 1fr; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eQuick grooming \u0026amp; effective\u003c\/span\u003eBasic use — everyday use in the living room\u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eMix\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMix the Hydrating Cream with a \u003cstrong\u003ehot water base\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eHomogenize\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eShake or blend to homogenize.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eComplete\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eTop up with lukewarm water and apply.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e⚡\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eLightweight\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e  \u003cstrong\u003e1 teaspoon per liter\u003c\/strong\u003e + optional rinsing.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e⚡\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo more lead\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e  \u003cstrong\u003e1 to 2 tablespoons per liter\u003c\/strong\u003e + no rinsing required.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eIntensive restructuring\u003c\/span\u003eFor very damaged hair — intensive treatment\u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePrepare the mixture\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eOn washed and wrung-out fur: \u003cstrong\u003e1 tablespoon + 20 drops of 4 Elements Oil\u003c\/strong\u003e In \u003cstrong\u003e2 liters of hot water\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eDistribute\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDistribute along the entire length and leave on for a few minutes while brushing.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eHeat boost\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e💡  \u003cstrong\u003eTrick :\u003c\/strong\u003e For very damaged hair, apply the \u003cstrong\u003eunder a heat source\u003c\/strong\u003e (hair dryer, lamp) to activate penetration.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinse\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse thoroughly.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eExhibition Preparation\/Wrapping\u003c\/span\u003eThe Competitors' and Handlers' Ritual\u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eMix the trio\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAfter the bath: \u003cstrong\u003e1 tablespoon of Hydrating Cream + 1 tablespoon of Hygrofluid + a few drops of 4 Elements\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eApply\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply to the \u003cstrong\u003ebangs and beard\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eComb\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePaint with a \u003cstrong\u003epin brush\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePapillotes\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eLeave in place \u003cstrong\u003eunder foil packets\u003c\/strong\u003e — up to a maximum of 1 week.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Villanelle at the heart + modular supplements If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003eThe Hydrating Cream makes \u003cstrong\u003eunanimity on a wide variety of breeds\u003c\/strong\u003e.  Ideal for the \u003cstrong\u003econditioning of fringes and beards\u003c\/strong\u003e,  and the \u003cstrong\u003etreatment during seasonal molting\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eLightweight volume desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 tsp\/L + optional rinsing\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eThe desired heavy, oppressive effect...\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 to 2 tbsp.tablespoon\/L + no rinsing\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003every damaged hair…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eIntensive restructuring (+ 4 Elements Oil + heat)\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003epreparation for a show or wrapping…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating + Hygrofluid + 4 Elements blend in foil packets\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eDifficult to untangle as a duo…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eVillanelle (for loosening) + Hydrating Cream (for finishing)\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Hydrating Cream makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 All Cats \u0026amp; Tibetan Races \u003cspan\u003e(Shih-Tzu, Lhasa…)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐶 Cocker Spaniels, Spaniels \u0026amp; Cavalier King Charles \u003cspan\u003e(bangs and beards)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 Shepherds, Retrievers, Spitz \u0026amp; Eurasians \u003cspan\u003e(seasonal molt)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Terriers, Poodles, Bichons \u0026amp; Yorkshires \u003cspan\u003e(curly and long hair)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eHydrating Cream is universally acclaimed — the historic entry point to the Special One range.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLES, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"500 mL","offer_id":37819389739187,"sku":"WEX-HYD500 (20)","price":46.5,"currency_code":"EUR","in_stock":true},{"title":"1 Liter","offer_id":37819389673651,"sku":"WEX-HYD1 (22)","price":72.7,"currency_code":"EUR","in_stock":true},{"title":"3 Liters","offer_id":37819389706419,"sku":"WEX-HYD3 (24)","price":181.8,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/HydratingCream.png?v=1680188791"},{"product_id":"extra-body-cream-masque-final-volumisant","title":"EXTRA BODY CREAM","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003eEXTRA BODY CREAM\u003c\/strong\u003e is a \u003cstrong\u003econcentrated volumizing balm with instant effect\u003c\/strong\u003e,  formulated for dogs and cats.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it, particularly for the \u003cstrong\u003ethin coats\u003c\/strong\u003e And \u003cstrong\u003ewithout a body\u003c\/strong\u003e !\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"2.5\" cy=\"18\" cx=\"6\"\u003e\u003c\/circle\u003e\u003ccircle r=\"2.5\" cy=\"18\" cx=\"18\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle fill=\"#1a1a1a\" r=\"1\" cy=\"11.5\" cx=\"12\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"4\" cy=\"8\" cx=\"12\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"#1a1a1a\" fill=\"none\" height=\"20\" width=\"20\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"3\" cy=\"7\" cx=\"8\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle r=\"2\" cy=\"11\" cx=\"17\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThanks to \u003cstrong\u003enext-generation polymers\u003c\/strong\u003e and \u003cstrong\u003eamino acids\u003c\/strong\u003e,  This balm binds to the core of the hair structure to \u003cstrong\u003eincrease its thickness without ever adding weight\u003c\/strong\u003e.\u003c\/p\u003e  \u003cdiv style=\"margin-top: 20px;\" class=\"aqr-benefits\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv style=\"--i: 0;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003ccircle r=\"9\" cy=\"12\" cx=\"12\"\u003e\u003c\/circle\u003e\u003cpath d=\"M12 8v8M8 12h8\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eFilling\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIncrease the \u003cstrong\u003ehair diameter\u003c\/strong\u003e — \u003cstrong\u003eplumping effect\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 1;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M3 12c2-3 4-3 6 0s4 3 6 0 4-3 6 0\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 16c2-3 4-3 6 0s4 3 6 0 4-3 6 0\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eElasticity\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eGive back \u003cstrong\u003eimmediate suppleness and shine\u003c\/strong\u003e to fiber.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 2;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M3 21s2-12 18-18c0 0-2 18-18 18z\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 21l9-9\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eDetox\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eEffect \u003cstrong\u003erefreshing and purifying\u003c\/strong\u003e for the skin.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 3;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eVersatility\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIdeal for \u003cstrong\u003enourish dry fringes\u003c\/strong\u003e stiff hairs.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"--i: 4;\" class=\"aqr-benefit-card\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg stroke-linejoin=\"round\" stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-Aging\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003e  \u003cstrong\u003eProtection against oxidative stress\u003c\/strong\u003e — preserves the youthfulness of the fiber.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Extra Body Cream\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\" id=\"so-radar-widget\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\" id=\"so-radar-area\"\u003e\u003csvg viewbox=\"0 0 360 360\" style=\"width: 100%; height: 100%; overflow: visible;\" id=\"so-radar-svg\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Volume\", value: 3 }, { label: \"Hydratation\", value: 4 }, { label: \"Démêlant\", value: 4 }, { label: \"Soin peau\", value: 3 }, { label: \"Brillance\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active ingredients Extra Body Cream - verified) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of the Extra Body Cream: 4 pairs of synergistic active ingredients\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA \u003cstrong\u003eA rich formulation that penetrates deep into the keratin fiber\u003c\/strong\u003e — four pairs of assets with complementary properties.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\" id=\"aqr-carto\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul id=\"aqrList\" class=\"aqr-list\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv id=\"aqrSchemaWrap\" class=\"aqr-schema-wrap\"\u003e  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l’Extra Body Cream\" style=\"display: block; width: 100%; height: auto;\" id=\"aqrSchemaImg\" class=\"aqr-schema-img\"\u003e  \u003csvg viewbox=\"0 0 100 225\" preserveaspectratio=\"none\" id=\"aqrOverlay\" class=\"aqr-overlay\"\u003e\u003c\/svg\u003e  \u003cdiv id=\"aqrConnectors\" class=\"aqr-connectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv id=\"aqrInfo\" class=\"aqr-info\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'collagene', label:'Collagène \u0026amp; Kératine', latin:'Protéines structurantes', family:'aqua',\n          desc:\"Duo structurant : le \u003cstrong\u003ecollagène\u003c\/strong\u003e renforce et apporte de l’élasticité ; la \u003cstrong\u003ekératine\u003c\/strong\u003e reconstitue la fibre et apporte force et résistance.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Force \u0026amp; résistance\", benefit:\"Reconstitue la fibre kératinique et renforce la structure interne.\" },\n            { anchor:'cuticule', action:\"Élasticité retrouvée\", benefit:\"Restaure la souplesse et la cohésion de la cuticule.\" }\n          ]\n        },\n        {\n          id:'argan', label:'Huiles d’Argan \u0026amp; Jojoba', latin:'Huiles précieuses', family:'botanic',\n          desc:\"Duo nourrissant : l’\u003cstrong\u003eargan\u003c\/strong\u003e nourrit en profondeur ; le \u003cstrong\u003ejojoba\u003c\/strong\u003e mime le sébum naturel et protège la peau.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition profonde\", benefit:\"Nourrit la fibre en profondeur sans l’alourdir.\" },\n            { anchor:'film_hydro', action:\"Protection cutanée\", benefit:\"Mime le sébum naturel et protège le film hydrolipidique.\" }\n          ]\n        },\n        {\n          id:'olive', label:'Olive \u0026amp; Tournesol', latin:'Émollients antioxydants', family:'botanic',\n          desc:\"Duo émollient : \u003cstrong\u003eolive et tournesol\u003c\/strong\u003e apportent une riche teneur en antioxydants et adoucissent la fibre.\",\n          targets: [\n            { anchor:'cuticule', action:\"Adoucissement\", benefit:\"Lisse la cuticule et apporte un toucher fondant durable.\" },\n            { anchor:'tige_poil', action:\"Bouclier antioxydant\", benefit:\"Protège la fibre des dommages oxydatifs quotidiens.\" }\n          ]\n        },\n        {\n          id:'raisin', label:'Raisin \u0026amp; Vitamine E', latin:'Action détox \u0026amp; anti-âge', family:'cond',\n          desc:\"Duo détox : le \u003cstrong\u003eraisin\u003c\/strong\u003e apporte resvératrol et polyphénols antioxydants ; la \u003cstrong\u003evitamine E\u003c\/strong\u003e agit en anti-âge et anti-inflammatoire.\",\n          targets: [\n            { anchor:'epiderme', action:\"Action anti-inflammatoire\", benefit:\"Apaise la peau et la protège du vieillissement cutané.\" },\n            { anchor:'derme', action:\"Détox \u0026amp; jeunesse\", benefit:\"Soutient le drainage et préserve la vitalité du derme.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e  \u003c!-- STORYTELLING INSERT: plumping effect --\u003e  \u003cdiv style=\"margin-top: 25px; padding: 22px 24px; background: #fff; border-left: 3px solid #1d1d1f;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin-bottom: 12px; display: block;\"\u003e✨ The signature Extra Body Cream\u003c\/span\u003e  \u003cp style=\"font-size: 14px; margin: 0 0 10px; font-weight: 600;\"\u003eThe plumping effect: the hair regains its body\u003c\/p\u003e  \u003cp style=\"font-size: 13px; margin: 0; color: #444; line-height: 1.65;\"\u003eFor the coats \u003cstrong\u003efine or without body\u003c\/strong\u003e,  the challenge is not to style but to \u003cstrong\u003erestore diameter\u003c\/strong\u003e to each fiber. Thanks to its \u003cstrong\u003enext-generation polymers\u003c\/strong\u003e and its \u003cstrong\u003eamino acids\u003c\/strong\u003e,  Extra Body Cream binds to the core of the hair structure and\u003cem\u003ethickens\u003c\/em\u003e from the inside. \u003cstrong\u003eNo added weight\u003c\/strong\u003e,  just a hair \u003cstrong\u003edenser, more toned, more present\u003c\/strong\u003e.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalences) --\u003e  \u003cdiv style=\"margin-bottom: 12px;\" class=\"aqr-dilution\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e60\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003e1 teaspoon to 1 tablespoon\u003cbr\u003eper liter depending on the result\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e150 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 9 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e500 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 30 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e3 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 180 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan class=\"aqr-dilution-cycle-target\" id=\"aqrCycleTarget\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e17\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e17\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e1\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoon\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '17', g: '17', spoon: '1' },\n        { target: '2 L', ml: '33', g: '33', spoon: '2' },\n        { target: '4 L', ml: '67', g: '67', spoon: '4' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eAnti-molting protocol \u0026amp; Anti-jamming\u003c\/span\u003eThe double application of pre-shampoo mask + conditioner\u003csvg stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"aqr-proto-plus\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDilute \u003cstrong\u003e1 tablespoon of Extra Body Cream per liter of water\u003c\/strong\u003e (with or without Bio Energy). Apply as a pre-bath mask.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eGentle shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eProceed to \u003cstrong\u003egentle shampoo of your choice\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eConditioner\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAt the end of the bath, reuse up to the level of\u003cstrong\u003e1 tablespoon per liter\u003c\/strong\u003e as a conditioner. \u003cstrong\u003eDoes not require a long exposure time.\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eQuick grooming \u0026amp; effective\u003c\/span\u003eTwo dosages depending on the desired richness\u003csvg stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"aqr-proto-plus\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eRich care\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDilute \u003cstrong\u003e1 tablespoon\u003c\/strong\u003e In \u003cstrong\u003ehalf a liter of hot water\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eLight care\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eOr dilute \u003cstrong\u003e1 teaspoon\u003c\/strong\u003e in half a liter of hot water.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eMassage\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eGently massage the coat.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinsing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e\u003cstrong\u003eRinse thoroughly with lukewarm water.\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eNutrition \u0026amp; Finish (Hard bristles)\u003c\/span\u003eThe signature touch for fringes of coarse hair\u003csvg stroke-linecap=\"round\" stroke-width=\"1.5\" stroke=\"currentColor\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"aqr-proto-plus\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-body\"\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eTargeted application\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFor the \u003cstrong\u003edry fringes of wire-haired breeds\u003c\/strong\u003e :  apply to the affected areas.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eMassage \u0026amp; rinsing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMassage then rinse.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eShampoo booster\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eIdeal too \u003cstrong\u003eadded to your shampoo\u003c\/strong\u003e to enrich it with hydrolyzed collagen and keratin.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdiv style=\"margin-top: 18px; padding: 14px 18px; background: #fff5f5; border-left: 3px solid #d9534f; border-radius: 8px; font-size: 13px; line-height: 1.55;\"\u003e⚠️  \u003cstrong\u003eATTENTION :\u003c\/strong\u003e we will not use \u003cstrong\u003enot\u003c\/strong\u003e Extra Body Cream if the dog has a \u003cstrong\u003eeasy knot return\u003c\/strong\u003e.  Reminder : \u003cem\u003eToo much volume = accelerated node return\u003c\/em\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Villanelle at the heart + modular supplements If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003e🤝  \u003cstrong\u003ePerfect finish\u003c\/strong\u003e with \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e (pre-bath), \u003cstrong\u003ePlatynum\/Aquarosa\u003c\/strong\u003e (shampoos), \u003cstrong\u003eAbsolute\/Style 360\u003c\/strong\u003e (finishing).\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003efine fur without a body…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eExtra Body Cream applied twice before and after bathing\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eanti-molting\/anti-matting protocol…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 tbsp\/L — without long standing time\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003edry fringes on coarse hair…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eTargeted application, either pure or as a shampoo booster\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003edog with easy knot retrieval…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e❌ Do not use — prefer Villanelle or Hydrating Cream\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003ehigh-gloss finish is sought after…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute or Style 360 ​​in finishing spray\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Extra Body Cream makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 All Cats \u003cspan\u003e(concentrated volume)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs \u0026amp; Bodyless fur \u003cspan\u003e(Need #1)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 Shepherds, Retrievers, Cattle Dogs \u0026amp; Primitives \u003cspan\u003e(density and body)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐺 Wire hair \u003cspan\u003e(targeted application on the fringes)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eThe balm of controlled volume — to give body without weighing it down.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLES, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":37819389771955,"sku":"WEX-EXTR  (42)","price":71.9,"currency_code":"EUR","in_stock":true},{"title":"3 Litres","offer_id":43820167168220,"sku":"3x  (42)","price":202.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-20.png?v=1651836398"},{"product_id":"beauty-rinse-reequilibreur-de-ph","title":"BEAUTY RINSE, pH rebalancing","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e\u003cspan\u003eHydrogen potential rebalancing lotion: cleanse the skin, force the scales to close, prevent the return of knots, air the hair. \u003c\/span\u003e\u003c\/p\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\" data-mce-fragment=\"1\"\u003e\n\u003ctbody data-mce-fragment=\"1\"\u003e\n\u003ctr data-mce-fragment=\"1\"\u003e\n\u003ctd bgcolor=\"303030\" data-mce-fragment=\"1\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-fragment=\"1\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan style=\"color: #ffffff;\" data-mce-fragment=\"1\" data-mce-style=\"color: #ffffff;\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003eEveryone will find it of real interest!\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Breeders \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Handlers\u003c\/div\u003e\n\n\u003cdiv\u003e\u003cspan\u003e \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"UTF-8\"\u003e \u003cstrong\u003eBEAUTY RINSE\u003c\/strong\u003e\u003cspan\u003e is an innovative solution that rebalances the hydration, protection and pH of the \u003c\/span\u003ehair after shampooing\u003cspan\u003e. \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e✅ Skin cleansing \u003c\/div\u003e\n\u003cdiv\u003e✅ Regulation of bacterial flora \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e\u003c\/span\u003e✅ Shine and volume action \u003c\/div\u003e\n\u003cdiv\u003e✅ Hair cuticle closure \u003c\/div\u003e\n\u003cdiv\u003e✅ Anti Knot Return Action\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eComposition: focus on naturalness!\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"UTF-8\"\u003e \u003cspan\u003eThe BEAUTY RINSE, created from ancestral recipes, combines \u003c\/span\u003e\u003cstrong\u003enaturally acidic agents\u003c\/strong\u003e\u003cspan\u003e which, in very low doses, will rebalance the external \u003c\/span\u003epH of your pet\u003cspan\u003e. \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cstrong\u003e\u003cbr\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong\u003eYou will appreciate its natural composition:\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e🍀 Distilled water of helichrysum (healing properties, anti-inflammatory) \u003c\/div\u003e\n\u003cdiv\u003e🍀 Yarrow water (soothe and calm skin irritations)\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e🍀 Apple extract and apple cider vinegar (to hydrate and regulate the skin's PH\u003c\/span\u003e)\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggested uses\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan style=\"color: #ff2a00;\"\u003e\u003cspan style=\"color: #ff2a00;\"\u003e\u003cstrong\u003e\u003cem\u003eTo be diluted with 15\/20 ml of Beauty Rinse for 1 liter of hot water. \u003cbr\u003e\u003c\/em\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan style=\"color: #ff2a00;\"\u003e\u003cspan style=\"color: #ff2a00;\"\u003e\u003cstrong\u003e\u003cem\u003e\u003cmeta charset=\"UTF-8\"\u003e \u003cspan\u003eLeave on for a few minutes to allow the product to work, then dry. \u003c\/span\u003e\u003c\/em\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e✨\u003cmeta charset=\"UTF-8\"\u003e \u003cspan data-mce-fragment=\"1\"\u003eAs part of a specific \"anti-knot \/ anti-felting\" programme, this lotion is ideal. We will then mix, at the end of the bath, 20mL of Beauty Rinse with our usual Hydrating Cream mask and Mix Pink. ✨\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan style=\"text-decoration: underline;\"\u003e\u003cbr\u003e\u003cstrong\u003eBUT:\u003c\/strong\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003eDoes not nourish the coat, be careful not to dry out your fur\u003c\/div\u003e\n\u003cdiv\u003e The objective remains to force the hair cuticles to close on problem fur or having problems with knots returning too quickly. Should not be included in a hair growth routine on a \"normal\" dog. \u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended Combinations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003eEntire Special One Line is Compatible with Beauty Rinse \u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003eHowever, our favorite wedding rings go to:\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cp\u003e▶︎ Perfectly completes the Skin Problems program (Bio Energy + Skincare)\u003c\/p\u003e\n\u003cp\u003e▶︎ Also ideal at the end of a bath for a search for very \"airy\" volume, in addition to classic masks. \u003c\/p\u003e\n\u003cp\u003e▶︎ Complements Hydrating Cream and Mix Pink to prevent the return of knots or felting. \u003c\/p\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e+90% biodegradable cosmetics\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eParaben-free, Silicone-free\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals. \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging HDPE02\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e ","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819389870259,"sku":"WEX-BRI250 (94)","price":23.2,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819389804723,"sku":"WEX-BRI 036 (91)","price":46.3,"currency_code":"EUR","in_stock":true},{"title":"5 Litres","offer_id":37819389837491,"sku":"WEX-BRI 5 (90)","price":115.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/BeautyRinse_954f593a-765a-4fbb-a696-df917ad689af.png?v=1680254357"},{"product_id":"aquapure-chlorexidine-propolis","title":"AQUAPURE PRO - 1st washing and disinfecting shampoo","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e              \u003cstrong\u003eAQUAPURE PRO\u003c\/strong\u003e is the Special One shampoo \u003cstrong\u003estrongest washing power in the range\u003c\/strong\u003e.  It cleans even the dirtiest animals very thoroughly and allows for a \u003cstrong\u003eepidermal reset\u003c\/strong\u003e thanks to its natural antiseptic properties — without ever harming the skin or hair.     \u003c\/div\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it — \u003cstrong\u003eparticularly indispensable for difficult cases and extreme situations\u003c\/strong\u003e in a salon or on a farm.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriched with \u003cstrong\u003epropolis\u003c\/strong\u003e — “the natural antibiotic” — and in \u003cstrong\u003echlorhexidine\u003c\/strong\u003e,  The Aquapure Pro combines the highest cleaning power in the range with properties \u003cstrong\u003elong-lasting antiseptics, antibacterials and antifungals\u003c\/strong\u003e.  Ultra effective in the most extreme situations, yet it respects the skin's natural hydrolipidic balance and pH.\u003c\/p\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eMaximum washing power\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eThe strongest in the range: deeply cleans and sanitizes even the toughest cases.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eRespect for the skin\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eIt preserves the natural hydrolipidic balance and pH despite its cleansing power.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3c3 4 5 6 5 9a5 5 0 0 1-10 0c0-1.6.6-3 1.6-4.2 0 1.2.7 2 1.5 2 .9 0 1.1-1 .6-2.3C12.3 6.6 12 4.8 12 3z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eExtreme cases\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eEffective on males with urine, very unkempt coats, pollution and deep dirt.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eEpidermal reset\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSoothing, purifying and antiseptic properties to start with healthy skin.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"8\"\u003e\u003c\/circle\u003e\u003cpath d=\"M12 8v8M8 12h8\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAntibacterial \u0026amp; antifungal\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eLong-lasting action against bacteria, yeasts and fungi — both curative and preventative.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12z\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"3\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eVisible result\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCleaner, healthier and shinier coat from the first use.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Aquapure Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 4 }, { label: \"Démêlant\", value: 3 }, { label: \"Texture\", value: 1 }, { label: \"Soin peau\", value: 5 }, { label: \"Lavant\", value: 5 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active ingredients Aquapure Pro - verified) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Aquapure Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA formula focused on antiseptic efficacy and skin-friendly properties — \u003cstrong\u003eSLES-free, paraben-free, silicone-free\u003c\/strong\u003e.  Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display:block;width:100%;height:auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l'Aquapure Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'propolis', label:'Propolis', latin:'« L’antibiotique naturel »', family:'botanic',\n          desc:\"Résine récoltée par les abeilles, purifiante et revitalisante : propriétés apaisantes, purifiantes et antiseptiques reconnues depuis l’Antiquité. Idéale pour les peaux sensibles ou sujettes aux irritations.\",\n          targets: [\n            { anchor:'epiderme', action:\"Assainissant naturel\", benefit:\"Purifie et apaise les peaux sensibles ou sujettes aux irritations.\" },\n            { anchor:'glande_seb', action:\"Action antiseptique\", benefit:\"Limite la prolifération microbienne au niveau du film cutané.\" }\n          ]\n        },\n        {\n          id:'chlorhexidine', label:'Chlorhexidine', latin:'Antiseptique de référence', family:'bio',\n          desc:\"Antibactérien puissant à effet durable, également antifongique : prévient la prolifération des micro-organismes et le développement d’infections cutanées, y compris sur les peaux sèches et squameuses.\",\n          targets: [\n            { anchor:'epiderme', action:\"Antibactérien \u0026 antifongique\", benefit:\"Prévient bactéries, levures et champignons — effet durable, en curatif comme en préventif.\" },\n            { anchor:'glande_sud', action:\"Désinfection profonde\", benefit:\"Assainit la peau dans les situations extrêmes (peau macérée ou négligée).\" }\n          ]\n        },\n        {\n          id:'panthenol', label:'Panthénol (Provitamine B5)', latin:'Panthénol', family:'cond',\n          desc:\"Renforce et régénère le poil : il restitue brillance et vitalité tout en améliorant la structure de la fibre.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Régénération de la fibre\", benefit:\"Renforce le poil et améliore la structure de la fibre.\" },\n            { anchor:'cuticule', action:\"Brillance \u0026 vitalité\", benefit:\"Lisse la surface et restitue brillance et vitalité au poil.\" }\n          ]\n        },\n        {\n          id:'glycurea', label:'Glycérine \u0026 Urée', latin:'Humectants', family:'aqua',\n          desc:\"Agents hydratants et humectants : ils maintiennent la peau et le poil souples et élastiques malgré l’intensité du nettoyage.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Hydratation humectante\", benefit:\"Captent et retiennent l’eau pour préserver le confort de surface.\" },\n            { anchor:'epiderme', action:\"Souplesse préservée\", benefit:\"Maintiennent l’élasticité cutanée malgré la puissance lavante.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e        \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eOne part for every 20 parts water\u003cbr\u003e1\/10 if intense antiseptic action\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e                                      \u003cdetails class=\"aqr-proto-acc\" open\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eIntensive cleaning — for very dirty or neglected animals\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eFor very neglected furs, males with urine, pollution or deep dirt\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eIntensive washing\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Aquapure Pro \u003cstrong\u003ediluted to 1\/10\u003c\/strong\u003e (intense action) on wet hair. Massage thoroughly, then rinse.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond conditioning shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFollow up with a \u003cstrong\u003esecond, gentler shampoo\u003c\/strong\u003e — \u003cstrong\u003eBain Pro, Aquarosa Pro or 4Poodle\u003c\/strong\u003e — for conditioning after cleaning.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream, Bombastic or Aqua Dolce\u003c\/strong\u003e depending on the fur's needs.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eResetting the epidermis — skin to be cleansed\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eTo restore healthy skin after macerated, neglected, or unbalanced skin\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepare with the pre-bath mask \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e to amplify the restorative action.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo-rinse application\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply Aquapure Pro directly \u003cstrong\u003ewithout rinsing the mask\u003c\/strong\u003e.  Leave on for a few moments, then massage.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinsing \u0026amp; renewal\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse thoroughly, then repeat the shampooing if necessary.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRestorative finish\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream + 4 Element Oils\u003c\/strong\u003e to restore the protective film.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eChoose Aquapure Pro if you need…\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eSituations where the Aquapure Pro makes all the difference\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDeep cleaning\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eThe dirtiest and most neglected furs.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eReset the skin\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eThanks to its antiseptic and antifungal properties.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDisinfecting in exceptional circumstances\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eHair removal on very dirty skin requiring disinfection of the epidermis.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePrevent\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eTo prevent the growth of bacteria, yeast or fungi on skin that has been macerated or neglected.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Aquapure Pro at its core + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with the Aquapure Pro.Our favorite alliances:\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA second, gentler shampoo is recommended…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBain Pro · Aquarosa Pro · 4Poodle\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA restorative pre-bath mask is desired…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final treatment is necessary…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Mix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere the Aquapure Pro makes the difference:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐶 All dogs \u003cspan\u003e(without exception)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 All cats \u003cspan\u003e(without exception)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e💧 Marker males \u0026amp; urine\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🌫️ Pollution \u0026amp; deep dirt\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🩹 Macerated or neglected skin\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✂️ Hair removal on skin that needs to be cleansed\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eThe most powerful cleaning in the range — with no compromise on gentleness towards skin and hair.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLES, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"PetDesign shop","offers":[{"title":"250 mL","offer_id":40196766924979,"sku":"WAQ-AQPU250 (16)","price":22.9,"currency_code":"EUR","in_stock":true},{"title":"5 L","offer_id":40196766957747,"sku":"WAQ-AQPU5000 (14)","price":128.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Aquapure_13bcd1a0-6daf-4a4c-a84a-2b55145279af.png?v=1680253861"},{"product_id":"mix-pink-conditionner-bi-phase","title":"MIX PINK, Bi-phase conditioning","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003eMix Pink – Special One | Product Details\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003ePINK MIX\u003c\/strong\u003e is Special One's bi-phase anti-static conditioning spray, a bestseller in the Expert Line range. Its unique formula—enriched with macadamia oil and lanolin—acts like a \u003cstrong\u003epowerful coat restructuring and disciplining agent\u003c\/strong\u003e :  The hair regains tone, hydration and shine without being weighed down or greasy.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eIdeal for all long and fringed coats — and indispensable for fine, woolly furs with high electrostatic potential.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u0026amp;            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts \u003cstrong\u003etwo-phase formula\u003c\/strong\u003e The key to its effectiveness lies in the fact that, after shaking, the two phases—oily and aqueous—allow the oils to spread evenly over the hair. \u003cstrong\u003ewithout greasing\u003c\/strong\u003e,  while neutralizing electrostatic charge. The product dries quickly, does not accumulate and does not \u0026quot;flicker\u0026quot; during drying — so it can be used as often as needed, even daily.\u003c\/p\u003e            \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePowerful antistatic agent:\u003c\/strong\u003e Eliminates electrostatic charge without weighing down the coat.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDisciplining:\u003c\/strong\u003e Orders, smooths and structures the coat — fine to the hairs that \u0026quot;fly\u0026quot;.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHydration \u0026amp; brightness:\u003c\/strong\u003e Shiny, supple and visibly moisturized hair after each application.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDurable anti-knot:\u003c\/strong\u003e Improves coat texture and prevents knots from daily use.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAnti-frizz:\u003c\/strong\u003e Eliminates frizz and protects the hair from the heat of the hairdryer.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eFabric softener:\u003c\/strong\u003e Softens dry and dehydrated coats, making detangling much easier.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eNon-greasy formula:\u003c\/strong\u003e Uniform distribution of oils without residue or heavy effect.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eFresh scent \u0026amp; persistent :\u003c\/strong\u003e A pleasant note that leaves the coat smelling good after each use.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 3: ASSETS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA complex of precious oils and restructuring active ingredients carefully selected for their moisturizing, protective and regenerating properties.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e\u0026amp; Macadamia Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eMoisturizing and restructuring — keeps the coat soft, shiny and deeply nourished.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Lanolin\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eNatural emollient of ovine origin: prevents dryness, reduces hair loss and improves combability.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Camellia Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRich in essential fatty acids and vitamin E — protects the coat from UV rays, wind and pollution.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Sunflower Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eEmollient and soothing — keeps skin supple and moisturized, prevents dryness.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Corn Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eLight and non-greasy — moisturizes the coat without weighing it down.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Ginseng extract\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eAntioxidant and regenerating — protects against external aggressions and stimulates hair regeneration.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Arabica Coffee Extract\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eToning and stimulating — improves cutaneous microcirculation and energizes the fiber.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Hydrogenated Castor Oil\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eEmollient and soothing — softens the skin, prevents dryness and flaking.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdiv style=\"margin-bottom: 15px; padding: 12px 15px; background: #fff; border: 1px solid #e5e5e5; font-size: 13px; font-weight: 600;\"\u003e              ⚠️  \u003cstrong\u003eShake vigorously before each use\u003c\/strong\u003e to thoroughly mix the two phases. Spray at \u003cstrong\u003e20–30 cm\u003c\/strong\u003e of the hair. Do not spray on the eyes and nose.     \u003c\/div\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Interview \u0026amp; daily brushing with dry fur\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         For coats that tie easily, Mix Pink can be used \u003cstrong\u003eevery day with dry fur\u003c\/strong\u003e in an interview:\u003cbr\u003e         1. Shake the bottle. Spray onto the area to be brushed, from 20–30 cm away.\u003cbr\u003e         2. Brush section by section. The hair relaxes, becomes orderly and the electrostatic charge disappears.\u003cbr\u003e         Regular use gradually improves the texture of the coat and \u003cstrong\u003eprevents the formation of knots\u003c\/strong\u003e in the long term.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Conditioner during drying\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Mix Pink integrates perfectly into the drying phase after bathing:\u003cbr\u003e         1. Shake the bottle. Spray evenly over the entire wet coat, from 20–30 cm away, covering the whole surface.\u003cbr\u003e         2. Dry with a hairdryer, brushing section by section.\u003cbr\u003e         The product \u003cstrong\u003edries quickly without accumulating\u003c\/strong\u003e — it protects against heat damage and leaves the coat disciplined, shiny and fragrant.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Pre-ring finishing — definition \u0026amp; shine expo\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Mix Pink is an excellent \u003cstrong\u003epresentation finishing\u003c\/strong\u003e for show dogs:\u003cbr\u003e         1. Shake the bottle. Spray directly onto the dry, brushed coat.\u003cbr\u003e         2. Distribute evenly with the brush to define shapes and amplify the shine of lengths and fringes.\u003cbr\u003e         Result: an impeccably ordered, bright and structured coat — ready for the ring.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eThe entire Special One range is compatible with Mix Pink. Note: Mix Pink is lighter and more airy than Aqua Beauty (less anti-tangling, lighter), and differs from Absolute 4Poodle, which is more focused on volume for Poodles.\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003eAquarosa Pro\/Bain Pro\u003c\/strong\u003e in shampoo       🤝  \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e wearing a mask       🤝  \u003cstrong\u003eAqua Beauty\u003c\/strong\u003e in a complementary spray (enhanced anti-tangle action)     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Long-coated, fringed breeds: Cockers, Setters, Afghans, Yorkshire — conditioning and shine of the lengths.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Fine, woolly furs with strong electrostatic attraction: Maltese, Bichons, Samoyeds…\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Poodles — lightens and orders the coat without curling it (to be distinguished from Absolute 4Poodle for volume).\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Silky breeds: Shih-Tzu, Cavalier King Charles, Tibetan Terrier — softness and easy to comb every day.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0;\"\u003e✔️ All dogs participating in shows — pre-ring finishing to define shapes and intensify shine.\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free | Not tested on animals | HDPE02 Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e    \u003c\/body\u003e","brand":"Endemik Sas","offers":[{"title":"200 mL","offer_id":37819390001331,"sku":"WEX-MIX200 (10)","price":40.9,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819389968563,"sku":"WEX-MIXP1 (12)","price":98.9,"currency_code":"EUR","in_stock":true},{"title":"3 Litres","offer_id":43820256526556,"sku":"3x  (12)","price":277.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Mixpink.png?v=1675846492"},{"product_id":"tech-in-color-raviveur-de-couleurs","title":"TECH IN COLOR, color reviver","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e  \u003cstrong\u003eTECH IN COLOR\u003c\/strong\u003e is the professional treatment from Special One for \u003cstrong\u003eenhance the natural color of the dress\u003c\/strong\u003e.  His \u003cstrong\u003enatural pigments\u003c\/strong\u003e interact with the keratin structures of the hair to prolong shine until the next treatment — available in \u003cstrong\u003e5 versions depending on coat color\u003c\/strong\u003e.\u003c\/div\u003e  \u003cdiv style=\"background: #fffbe6; border: 1px solid #f0e040; padding: 14px 18px; margin-bottom: 20px; font-size: 13px; border-radius: 2px;\"\u003e⚠️  \u003cstrong\u003eTech in Color is not a dye.\u003c\/strong\u003e It's a \u003cstrong\u003enatural reflector\u003c\/strong\u003e which intensifies the tone of the coat by up to 2 or 3 tones, increases the contrast and depth of the coat.\u003c\/div\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e  \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find something of real interest in it!\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e  \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e  \u003cp style=\"font-size: 14px;\"\u003eThanks to \u003cstrong\u003enatural pigments derived from plant pollen\u003c\/strong\u003e and \u003cstrong\u003ereflective mineral substances\u003c\/strong\u003e,  Tech in Color penetrates the hair cortex by gently opening the keratin scales, without altering the structure. The pigments seal inside the hair and remain there until the next wash for a long-lasting and even result.\u003c\/p\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eColor Developer:\u003c\/strong\u003e Intensifies the natural coat color by up to 2-3 shades.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDurability:\u003c\/strong\u003e The pigments anchor themselves in the keratin until the next bath.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eNatural Formula \u0026amp; Aqueous:\u003c\/strong\u003e Plant-based pigments, water-based, non-aggressive to the skin.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003e5 Mixable Versions:\u003c\/strong\u003e Adapted to each color, and combinable with each other for a tailor-made result.\u003c\/li\u003e  \u003cli\u003e✅  \u003cstrong\u003eCompatible \u0026amp; Modular:\u003c\/strong\u003e It can be used with all products in the Special One range.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- AVAILABLE VERSIONS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eChoose your version\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eSelect the version that matches your pet's coat color. The versions are also \u003cstrong\u003ecombinable with each other\u003c\/strong\u003e to refine the result.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003cthead\u003e  \u003ctr style=\"background: #1a1a1a; color: #fff;\"\u003e  \u003cth style=\"padding: 10px 15px; text-align: left; font-weight: 600;\"\u003eCoat color\u003c\/th\u003e  \u003cth style=\"padding: 10px 15px; text-align: center; font-weight: 600;\"\u003eVersion\u003c\/th\u003e  \u003cth style=\"padding: 10px 15px; text-align: left; font-weight: 600;\"\u003eReflection \u0026amp; Notes\u003c\/th\u003e  \u003c\/tr\u003e  \u003c\/thead\u003e  \u003ctbody\u003e  \u003ctr style=\"background: #fafafa;\"\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003e⬜ White, bi\/tricolour, silver\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee; text-align: center;\"\u003e\u003cstrong\u003eTech in Color A\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003eBlue tone — anti-yellow effect, enhances contrast and brightness.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr style=\"background: #fff;\"\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003e⬛ Black, grey, blue\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee; text-align: center;\"\u003e\u003cstrong\u003eTech in Color B\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003eBlack tone — also usable on grey\/light hair without purple or green undertones.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr style=\"background: #fafafa;\"\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003e🟠 Apricot, red, fawn, tan\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee; text-align: center;\"\u003e\u003cstrong\u003eTech in Color C\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003eRuby tone — intense pigment, red \u0026amp; tan. Mixable with D or E.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr style=\"background: #fff;\"\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003e🟤 Brown, ruby\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee; text-align: center;\"\u003e\u003cstrong\u003eTech in Color D\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; border-bottom: 1px solid #eee;\"\u003eWalnut tone — specially formulated for brown coats. Mixable with C.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr style=\"background: #fafafa;\"\u003e  \u003ctd style=\"padding: 10px 15px;\"\u003e🟡 Blonde, cream, gold, apricot\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px; text-align: center;\"\u003e\u003cstrong\u003eTech in Color E\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 15px;\"\u003eBright orange tone, for gold, blonde, and apricot coats. Mixable with C.\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv style=\"margin-top: 15px; padding: 12px 15px; background: #f6f6f6; border: 1px solid #eee; font-size: 12px; color: #555;\"\u003eYou can mix them to get the exact tone you're looking for!\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- ASSET SYNERGY --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eComposition: Focus on Natural Ingredients\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eCarefully selected active ingredients to illuminate without altering.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e  \u003cstrong\u003e✨ Natural Pigments of Plant Origin\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eDerived from plant pollen (CI 14720, CI 19140, CI 28440, CI 15985, CI 16255, CI 42090). They penetrate the keratin cortex for an intense and luminous color.\u003c\/span\u003e  \u003c\/td\u003e  \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e  \u003cstrong\u003e✨ Reflective Mineral Substances\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eUltramarines (CI 60730) — amplify the radiance and shine of the dress by capturing light. Water-based, gentle on the skin.\u003c\/span\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- PROTOCOLS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for Use\u003c\/span\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 1 🔥 Integration into Shampoo or Mask\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eEmulsify the Tech in Color drops in your diluted Special One shampoo or in the final mask.\u003cbr\u003e\u003cbr\u003e1. Indicative dose: \u003cstrong\u003e15 to 60 drops per liter\u003c\/strong\u003e — Increase according to the desired intensity of reflections.\u003cbr\u003e2. Apply to the entire coat and leave to work \u003cstrong\u003e5 to 10 minutes\u003c\/strong\u003e.\u003cbr\u003e3. Rinse thoroughly.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 2 🔥 Enhanced absorption (excluding white coats)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eTo maximize pigment fixation — \u003cstrong\u003eDo not perform on white coats\u003c\/strong\u003e :\u003cbr\u003e\u003cbr\u003e1. Prepare a concentrated solution of Tech in Color in water (+ possibly a few pumps of\u003cstrong\u003e4 Elements Oils\u003c\/strong\u003e).\u003cbr\u003e2. Apply to the \u003cstrong\u003edry hair\u003c\/strong\u003e,  outside of a standard bath cycle.\u003cbr\u003e3. Do not dry, do not rinse. Allow to absorb naturally.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 3 🔥 Spray application (before or during drying)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003e1. Dilute Tech in Color in a spray bottle with water.\u003cbr\u003e2. Spray onto the mantel \u003cstrong\u003ebefore or during drying\u003c\/strong\u003e.\u003cbr\u003e3. ⚠️  \u003cstrong\u003eWear gloves\u003c\/strong\u003e During this use — the coloring effect can be very intense on the hands.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 4 🔥 Targeted Brush Application (touch-up) \u0026amp; camouflage)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eTo target a specific area (chest, leg, etc.):\u003cbr\u003e\u003cbr\u003e1. Apply Tech in Color \u003cstrong\u003epure or diluted\u003c\/strong\u003e applied directly to the area to be treated with a brush.\u003cbr\u003e2. Adjust the dosage according to the desired color intensity.\u003cbr\u003e3. Leave to stand, then rinse if necessary.\u003cbr\u003e\u003cbr\u003e💡 Ideal for touch-ups of presentation at exhibitions.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdiv style=\"margin-top: 20px; padding: 20px; background: #fff; border: 1px dashed #1a1a1a;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; margin-bottom: 10px;\"\u003e🛠️ USE YOUR TECH IN COLOR WELL:\u003c\/span\u003e  \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e1️⃣ Choose the version that matches the coat color (A, B, C, D or E).\u003cbr\u003e2️⃣ Start by \u003cstrong\u003e15 to 40 drops per liter\u003c\/strong\u003e as a working basis.\u003cbr\u003e3️⃣ Go up to \u003cstrong\u003e60 drops\u003c\/strong\u003e depending on the desired intensity of reflections.\u003cbr\u003e4️⃣ Mix thoroughly with your shampoo or mask before applying.\u003cbr\u003e5️⃣ Let it sit \u003cstrong\u003e5 to 10 minutes\u003c\/strong\u003e to allow keratin to anchor, then rinse.\u003cbr\u003e6️⃣ For a natural tone-on-tone effect: mix two versions (e.g., 3\/4 E + 1\/4 C).\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003e🤝 Perfect synergy with: \u003cstrong\u003eall Special One shampoos, masks and conditioners\u003c\/strong\u003e — in particular with \u003cstrong\u003e4 Elements Oils\u003c\/strong\u003e for an intensified result.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All cats\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All dogs in the grooming salon\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Curly fur (Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington…)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All Cocker Spaniels (American, English)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Tibetan breeds (Shih Tzu, Lhasa Apso, Tibetan Terrier…)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ English Toy Spaniels (Cavalier and King Charles)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Long and silky furs (Yorkshire, Afghan…)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0;\"\u003e✔️ All terriers (Scottish, Westie, Welsh…)\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"font-size: 12px; color: #888; margin-top: 10px;\"\u003eThe list is long and not exhaustive!\u003c\/p\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"A - WHITE\/TWO-COLOR\/TRICO COAT","offer_id":37819391017139,"sku":"WEX-THCA 040 (11)","price":50.9,"currency_code":"EUR","in_stock":true},{"title":"B - BLACK\/GREY COAT","offer_id":37819391049907,"sku":"WEX-THCB 041","price":50.9,"currency_code":"EUR","in_stock":false},{"title":"C - APRICOT\/FAUVE COAT","offer_id":37819391082675,"sku":"WEX-THCD 042  (142)","price":50.9,"currency_code":"EUR","in_stock":true},{"title":"D - BROWN COAT, RUBY","offer_id":37819391115443,"sku":"WEX-THCD 043 (137)","price":50.9,"currency_code":"EUR","in_stock":true},{"title":"E - CREAM\/BLOND COAT","offer_id":37819391148211,"sku":"WEX-THCE 044 (45)","price":50.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-24.png?v=1661266021"},{"product_id":"style-360-spray-volume","title":"STYLE 360, volume spray","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eSTYLE 360\u003c\/strong\u003e is the very first conditioner in the Special One range — a classic with a particularly technical formulation. Designed for \u003cstrong\u003emaximize the volume of all furs\u003c\/strong\u003e While eliminating static electricity, it gives perfect hold to the hair when cutting with scissors and is essential for show days.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it of real interest — particularly professionals seeking maximum volume and hold for cutting or display.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- RADAR BLOCK: COSMETOLOGICAL DIAGRAM --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:24px 28px 20px;overflow:visible;\"\u003e                  \u003cspan style=\"font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#999;margin-bottom:22px;display:block;\"\u003eStyle 360 ​​Cosmetological Diagram\u003c\/span\u003e                  \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label {\n      position: absolute;\n      transform: translate(-50%, -50%);\n      text-align: center;\n      pointer-events: none;\n      white-space: nowrap;\n      opacity: 0;\n      animation: so-fadeUp 0.5s ease forwards;\n    }\n    .so-label .so-lname {\n      font-size: 9px;\n      font-weight: 600;\n      text-transform: uppercase;\n      letter-spacing: 0.08em;\n      color: #999;\n      display: block;\n      margin-bottom: 1px;\n      font-family: inherit;\n    }\n    .so-label .so-lval {\n      font-size: 24px;\n      font-weight: 700;\n      color: #1a1a1a;\n      line-height: 1;\n      font-family: inherit;\n    }\n    .so-label .so-lmax {\n      font-size: 12px;\n      font-weight: 400;\n      color: #bbb;\n      font-family: inherit;\n    }\n    .so-footer-bar {\n      margin-top: 18px;\n      border-top: 1px solid #eee;\n      padding-top: 14px;\n      display: flex;\n      align-items: center;\n      flex-wrap: wrap;\n      gap: 6px;\n      opacity: 0;\n      animation: so-footerIn 0.5s ease forwards 0.8s;\n    }\n    .so-footer-label {\n      font-size: 9px;\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.1em;\n      color: #999;\n      font-family: inherit;\n      margin-right: 2px;\n    }\n    .so-footer-chip {\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n      background: #1a1a1a;\n      padding: 4px 10px;\n      font-size: 11px;\n      font-weight: 600;\n      color: #fff;\n      font-family: inherit;\n    }\n    .so-footer-chip-score {\n      font-weight: 400;\n      color: rgba(255,255,255,0.4);\n      font-size: 10px;\n    }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp {\n      from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); }\n      to   { opacity: 1; transform: translate(-50%, -50%); }\n    }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-footer-chip { font-size: 10px !important; padding: 3px 8px !important; }\n      .so-footer-label { font-size: 8px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = {\n      criteria: [\n        { label: \"Volume\",       value: 5 },\n        { label: \"Brillance\",    value: 4 },\n        { label: \"Démêlant\",     value: 2 },\n        { label: \"Hydratation\",  value: 3 },\n        { label: \"Défrisage\",    value: 4 }\n      ]\n    };\n\n    var svg  = document.getElementById(\"so-radar-svg\");\n    var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria;\n    var n    = data.length;\n    var cx = 180, cy = 180, maxR = 95;\n\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) {\n      var a = ang(i), r = (v \/ mx) * maxR;\n      return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) };\n    }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n\n    for (var l = 1; l \u003c= 5; l++) {\n      var pts = [];\n      for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); }\n      var poly = svgEl(\"polygon\");\n      poly.setAttribute(\"points\", pts.join(\" \"));\n      poly.setAttribute(\"fill\", \"none\");\n      poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\");\n      poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\");\n      if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\");\n      svg.appendChild(poly);\n    }\n\n    for (var i = 0; i \u003c n; i++) {\n      var p = pt(i, 5, 5);\n      var line = svgEl(\"line\");\n      line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy);\n      line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y);\n      line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\");\n      line.setAttribute(\"stroke-width\", \"0.6\");\n      svg.appendChild(line);\n    }\n\n    var shapePts = [];\n    for (var i = 0; i \u003c n; i++) {\n      var p = pt(i, data[i].value, 5);\n      shapePts.push(p.x + \",\" + p.y);\n    }\n    var ptsStr = shapePts.join(\" \");\n\n    var fillPoly = svgEl(\"polygon\");\n    fillPoly.setAttribute(\"points\", ptsStr);\n    fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\");\n    fillPoly.classList.add(\"so-shape-fill\");\n    svg.appendChild(fillPoly);\n\n    var strokePoly = svgEl(\"polygon\");\n    strokePoly.setAttribute(\"points\", ptsStr);\n    strokePoly.setAttribute(\"fill\", \"none\");\n    strokePoly.setAttribute(\"stroke\", \"#1a1a1a\");\n    strokePoly.setAttribute(\"stroke-width\", \"1.8\");\n    strokePoly.setAttribute(\"stroke-linejoin\", \"round\");\n    strokePoly.classList.add(\"so-shape-stroke\");\n    svg.appendChild(strokePoly);\n\n    for (var i = 0; i \u003c n; i++) {\n      (function(i) {\n        var d = data[i];\n        var p = pt(i, d.value, 5);\n        var delay = 0.5 + i * 0.1;\n\n        var halo = svgEl(\"circle\");\n        halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y);\n        halo.setAttribute(\"r\", \"7\");\n        halo.setAttribute(\"fill\", \"none\");\n        halo.setAttribute(\"stroke\", \"#1a1a1a\");\n        halo.setAttribute(\"stroke-width\", \"1\");\n        halo.setAttribute(\"stroke-opacity\", \"0.12\");\n        halo.classList.add(\"so-dot\");\n        halo.style.animationDelay = delay + \"s\";\n        svg.appendChild(halo);\n\n        var dot = svgEl(\"circle\");\n        dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y);\n        dot.setAttribute(\"r\", \"3\");\n        dot.setAttribute(\"fill\", \"#1a1a1a\");\n        dot.classList.add(\"so-dot\");\n        dot.style.animationDelay = delay + \"s\";\n        svg.appendChild(dot);\n\n        var lp = pt(i, 6.5, 5);\n        var pctX = (lp.x \/ 360) * 100;\n        var pctY = (lp.y \/ 360) * 100;\n\n        var lbl = document.createElement(\"div\");\n        lbl.className = \"so-label\";\n        lbl.style.left = pctX + \"%\";\n        lbl.style.top  = pctY + \"%\";\n        lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\";\n        lbl.innerHTML =\n          '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e' +\n          '\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e';\n        area.appendChild(lbl);\n      })(i);\n    }\n\n    var maxVal = 0;\n    for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; }\n    var bests = [];\n    for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n\n    var chipsHtml = '';\n    for (var i = 0; i \u003c bests.length; i++) {\n      chipsHtml +=\n        '\u003cspan class=\"so-footer-chip\"\u003e' +\n          bests[i].label +\n          '\u003cspan class=\"so-footer-chip-score\"\u003e' + bests[i].value + '\/5\u003c\/span\u003e' +\n        '\u003c\/span\u003e';\n    }\n\n    document.getElementById(\"so-radar-footer\").innerHTML =\n      '\u003cdiv class=\"so-footer-bar\"\u003e' +\n        '\u003cspan class=\"so-footer-label\"\u003e★ ' + (bests.length \u003e 1 ? 'Points forts' : 'Point fort') + '\u003c\/span\u003e' +\n        chipsHtml +\n      '\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriched with a blend of naturally derived surfactants and moisturizing substances, Style 360 \u003cstrong\u003erestores shine and elasticity to the hair from the very first treatments\u003c\/strong\u003e.  Its unique technical formula allows for a controlled and structured volume, whether for a professional cut, the assembly of a head or presentation in the ring.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️  \u003cstrong\u003eProduct for special occasions:\u003c\/strong\u003e Style 360 ​​is recommended for show, competition, and cutting days—not for daily maintenance. Overuse would be counterproductive and would quickly cause knots to reappear.     \u003c\/div\u003e            \u003cdiv style=\"background: #f6f6f6; padding: 20px; border: 1px solid #e5e5e5;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eMaximum volume:\u003c\/strong\u003e It puffs up and structures all furs for a spectacular result.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePerfect fit for the cut:\u003c\/strong\u003e The hair stays in place under the scissors, facilitating precise finishing.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eLong-lasting hold:\u003c\/strong\u003e Maintains the shape and condition of the coat over time.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHead assembly:\u003c\/strong\u003e Particularly effective for assembling and shaping heads.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHelp with plumbing:\u003c\/strong\u003e Helps to weigh down furs that need it.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntistatic:\u003c\/strong\u003e Eliminates static electricity for a disciplined and tidy hair.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal gentleness:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA natural formula focused on volume, shine and protection — paraben-free, silicone-free.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Silk Proteins\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eThey provide softness and sheathing — enveloping the fiber to give it body and shine.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Milk Proteins\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eThey deeply nourish the coat and strengthen the fiber for a strong and silky coat.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Jojoba Oil\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eBrings out the natural colours of the coat while deeply nourishing the fiber.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Chlorella Vulgaris\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eMarine algae rich in highly bioavailable essential amino acids — antioxidant and detoxifying.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Vitamin B12 \u0026amp; Beta-Carotene\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eThey hydrate the hair structure from within and contribute to the vitality and shine of the coat.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdiv style=\"margin-bottom: 15px; padding: 12px 15px; background: #f6f6f6; border: 1px solid #e5e5e5; font-size: 13px; font-weight: 600;\"\u003e              💡  \u003cstrong\u003eDilution according to the fineness of the hair:\u003c\/strong\u003e Neat on thick coats for very defined volume. Dilute up to 1\/10 with demineralized water for fine coats (e.g., Toy Poodle). Apply to wet coat.     \u003c\/div\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Drying, blow-drying \u0026amp; scissor cut\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Style 360 ​​is used throughout the entire grooming process, from drying to the final cut:\u003cbr\u003e         1. Apply to wet hair while drying, pulsing regularly as the hair dries.\u003cbr\u003e         2. Continue spraying during the final blow-dry — on the hair \u003cstrong\u003eand directly onto the brush and comb\u003c\/strong\u003e for even more effective action.\u003cbr\u003e         3. During the cut, return to spray very regularly on the areas being worked: the hair stays under the scissors and the hold improves as the cut progresses.\u003cbr\u003e         The volume gradually increases at each stage.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Exhibition day — preparation \u0026amp; ring retouching\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Style 360 ​​is the go-to tool on competition days:\u003cbr\u003e         1. \u003cstrong\u003eThe morning of the exhibition\u003c\/strong\u003e :  Pulse Style 360 ​​all over the coat to restore the volume and hold achieved during grooming.\u003cbr\u003e         2. \u003cstrong\u003eBefore the ring\u003c\/strong\u003e :  Touch up any areas that may have shifted or lost their hold. Spray and brush for a flawless finish.\u003cbr\u003e         3. \u003cstrong\u003eIn the ring if needed\u003c\/strong\u003e :  A slight last-minute application is possible for a perfect result in front of the judges.\u003cbr\u003e         If additional fixation is desired: use \u003cstrong\u003eMultifix\u003c\/strong\u003e in final fixing spray.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Head assembly \u0026amp; weighted furs\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         For specific formatting work:\u003cbr\u003e         1. Spray Style 360 ​​pure or slightly diluted directly onto the area to be worked on (head, bun, areas to be filled).\u003cbr\u003e         2. Work with a comb or brush, building volume layer by layer.\u003cbr\u003e         The long-lasting mount maintains the desired shape—ideal for elaborate setups that need to last all day on display. Complete with \u003cstrong\u003eExtra Body Cream or Beauty Rinse\u003c\/strong\u003e for an even more enhanced volume effect.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 4 🔥 Rinse-out conditioner after shampooing\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Style 360 ​​can also be used as \u003cstrong\u003eclassic conditioner after shampooing\u003c\/strong\u003e :\u003cbr\u003e         1. After shampooing and wringing, spray Style 360 ​​all over the wet coat.\u003cbr\u003e         2. Massage thoroughly to allow the product to penetrate the hair fiber.Leave on for a few moments while continuing to massage.\u003cbr\u003e         3. Rinse thoroughly.\u003cbr\u003e         This method provides a volume effect and basic nutrition even before drying — ideal for preparing fine or dehydrated furs.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eIdeal with all volume-generating products in the range:\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003ePlatynum Pro\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eExtra Body Cream\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eBeauty Rinse\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eMultifix\u003c\/strong\u003e (final fixing)     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All cats and all dogs — universal across all breeds and coat types when volume is desired\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Curly furs: Poodles, Bichons, Kerry Blue, Soft Coated, Bedlington… — maximum volume and hold.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ American Cocker Spaniels\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Ears of English Toy Spaniels (Cavalier and King Charles)\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Terriers: Scottish, Westie, Welsh… — long and not exhaustive list!\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️ Double coats: Spitz, Newfoundland, Samoyed, Bouviers, Australian Shepherds, etc.\u003c\/td\u003e\u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":37819391312051,"sku":"WEX-STY360 (37)","price":88.9,"currency_code":"EUR","in_stock":true},{"title":"200 mL","offer_id":37819391344819,"sku":"WEX-STYLE280 (34)","price":44.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/style360.png?v=1680257576"},{"product_id":"multifix-fluide-modelant","title":"MULTIFIX, modeling fluid","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eMULTIFIX\u003c\/strong\u003e is Special One's professional modeling fluid for \u003cstrong\u003ecreate and maintain long-lasting hairstyles\u003c\/strong\u003e — smooth or curly effect. Thanks to its \u003cstrong\u003ewater-soluble film with memory effect\u003c\/strong\u003e,  It protects the coat from the heat while maintaining the desired shape well beyond the salon.     \u003c\/div\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eA must-have for artistic groomers and competitors!\u003c\/p\u003e          \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e          \u003cp style=\"font-size: 14px;\"\u003eMultifix forms a \u003cstrong\u003ewater-soluble film on the hair\u003c\/strong\u003e which protects the hair from heat sources (straightener, hairdryer), sets the style, and can be easily renewed with water. Its formula is based on \u003cstrong\u003enatural resins and cosmetic polymers\u003c\/strong\u003e guarantees shine, elasticity and hold without weighing down the coat or leaving residue.\u003c\/p\u003e          \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eMemory Effect:\u003c\/strong\u003e Keeps the hairstyle smooth or curly long after grooming.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eThermal Protection:\u003c\/strong\u003e Protective film that is active against the heat of the iron and hairdryer.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrilliance \u0026amp; Elasticity:\u003c\/strong\u003e Enhances the silky appearance and vitality of the coat.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eEasy Application:\u003c\/strong\u003e Spreads evenly, dries quickly, without residue.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eWater-soluble:\u003c\/strong\u003e The hairstyle can be easily reactivated with water for adjustment.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eFormulation: Modeling Technology\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA synergy of cosmetic actives to fix, protect and enhance.\u003c\/p\u003e          \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Natural Resins\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eThey form a water-soluble protective film with a memory effect — holding the hairstyle without stiffness or residue.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Cosmetic Conditioning Polymers\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eThey improve coat texture, facilitate styling, and provide suppleness and resistance to humidity.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for Use\u003c\/span\u003e          \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 1 🔥 Smooth Effect — Blow Dry \u0026amp; Hair straightener\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003e         On clean fur, patted dry to remove excess water:\u003cbr\u003e\u003cbr\u003e         1. Distribute \u003cstrong\u003eMultifix uniformly\u003c\/strong\u003e on the coat.\u003cbr\u003e         2. Dry with a hairdryer or a blow dryer.\u003cbr\u003e         3. Create the smooth formatting at \u003cstrong\u003ehair straightener\u003c\/strong\u003e.\u003cbr\u003e         4. To reinforce the hold, \u003cstrong\u003erepeat the application\u003c\/strong\u003e after formatting.\u003cbr\u003e\u003cbr\u003e                  💡 The thermal protective film is active immediately upon application — the hair is protected from direct heat.       \u003c\/div\u003e          \u003c\/details\u003e          \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 2 🔥 Curly Effect — Diffuser (without brush or carder)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003e         On clean fur, patted dry to remove excess water:\u003cbr\u003e\u003cbr\u003e         1. Apply Multifix evenly over the entire coat.\u003cbr\u003e         2. Comb the hair, forming \u003cstrong\u003enatural curls\u003c\/strong\u003e.\u003cbr\u003e         3. Dry \u003cstrong\u003eto the diffuser only\u003c\/strong\u003e — without a carder or brush to preserve the loop.\u003cbr\u003e         4.Repeat the application after drying to \u003cstrong\u003estrengthen and secure the loop\u003c\/strong\u003e.\u003cbr\u003e\u003cbr\u003e                  💡 Ideal for Poodles, Bichons and all breeds with wavy coats.       \u003c\/div\u003e          \u003c\/details\u003e          \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 3 🔥 Interview \u0026amp; Reactivation between baths\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003e         Thanks to the film \u003cstrong\u003ewater-soluble\u003c\/strong\u003e,  The hairstyle can be easily reactivated and adjusted:\u003cbr\u003e\u003cbr\u003e         1. Lightly moisten the area to be restructured with water.\u003cbr\u003e         2. Reshape the hairstyle by hand or with a comb.\u003cbr\u003e         3. Dry to fix again — without re-bathing the animal.\u003cbr\u003e\u003cbr\u003e                  💡 Perfect for maintaining a flawless presentation between exhibitions.       \u003c\/div\u003e          \u003c\/details\u003e          \u003cdiv style=\"margin-top: 20px; padding: 20px; background: #fff; border: 1px dashed #1a1a1a;\"\u003e              \u003cspan style=\"font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; margin-bottom: 10px;\"\u003e🛠️ HOW TO USE YOUR MULTIFIX PROPERLY:\u003c\/span\u003e              \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e                  1️⃣ Apply to hair \u003cstrong\u003eclean and stamped\u003c\/strong\u003e (neither too wet, nor too dry).\u003cbr\u003e                  2️⃣ Distribute evenly over the entire coat or on targeted areas.\u003cbr\u003e                  3️⃣ Proceed with drying according to the desired effect (blow-dry for smooth, diffuser for curly).\u003cbr\u003e                  4️⃣ Create the final shape using a curling iron or diffuser.\u003cbr\u003e                  5️⃣  \u003cstrong\u003eRepeat the application\u003c\/strong\u003e after shaping to reinforce the fit.\u003cbr\u003e                  6️⃣ To reactivate: lightly moisten and reshape without re-immersing.       \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003e🤝 Perfect synergy with: \u003cstrong\u003eall Special One shampoos and masks\u003c\/strong\u003e — ideally as a finishing touch after a treatment \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e for a coat that is perfectly conditioned before shaping.\u003c\/p\u003e          \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Curly furs \u0026amp; wavy (Poodles, Bichons, Kerry Blue, Soft Coated Wheaten…) — natural curly effect.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Long, smooth furs (Yorkshire, Afghan, Setter, Cocker…) — straightening lasts longer.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Tibetan breeds (Shih-Tzu, Lhasa, Tibetan Terrier…) — maintenance of the coat in exhibition.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Terriers (Bedlington, Welsh, Lakeland…) — definition and maintenance of the molding.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️ All breeds in preparation for shows or competitions requiring lasting conditioning.\u003c\/td\u003e\u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e          \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"200 mL","offer_id":37819392819379,"sku":"WEX-MFIX (418)","price":41.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/multifix-special-one.jpg?v=1687460135"},{"product_id":"trim-grooming-powder","title":"TRIM GROOMING POWDER","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e\u003cstrong\u003eTrim Growing Powder\u003c\/strong\u003e\u003cspan\u003e is a professional powder specially formulated to whiten and prepare the coat for bleaching.\u003c\/span\u003e\u003cstrong\u003ehair removal\u003c\/strong\u003e\u003cspan\u003e. \u003c\/span\u003e\u003c\/p\u003e  \u003cspan data-mce-fragment=\"1\"\u003e  \u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\" data-mce-fragment=\"1\"\u003e  \u003ctbody data-mce-fragment=\"1\"\u003e  \u003ctr data-mce-fragment=\"1\"\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\" data-mce-fragment=\"1\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\" data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\" data-mce-fragment=\"1\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr data-mce-fragment=\"1\"\u003e  \u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003eEveryone will find something of real interest in it!\u003c\/div\u003e  \u003cdiv\u003e  \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Livestock farmers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Handlers\u003c\/div\u003e      \u003cdiv\u003e\u003cspan\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e✅ Provides precision and speed during the hair removal stage \u003c\/div\u003e  \u003cdiv\u003e✅ Join \u003cmeta charset=\"UTF-8\"\u003e  \u003cspan data-mce-fragment=\"1\"\u003eevenly to the hairs\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cspan data-mce-fragment=\"1\"\u003e✅ Whitening action \u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✅ Given \u003cmeta charset=\"UTF-8\"\u003ethe compactness and hardness of the structure in order to facilitate stripping\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggestions for use\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e  \u003cmeta charset=\"UTF-8\"\u003e  \u003cp\u003e✨Spread evenly on the hair to be removed, and on your fingers, then start stripping.\u003c\/p\u003e  \u003cdiv\u003e✨Do not hesitate to reapply during hair removal.\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e✨Our opinion: to best shape your dog, nothing beats rolling, a hair removal technique that takes time, with very frequent but light stripping.\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended associations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e  \u003cmeta charset=\"UTF-8\"\u003e  \u003cspan\u003e🔥Ideally complements the Special One protocol, allowing for a \u003c\/span\u003eHair removal on clean hair. We still recommend: \u003cspan data-mce-fragment=\"1\"\u003eBio Energy + Keratin Pro.\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e\u003cmeta charset=\"UTF-8\"\u003e🔥Its \u003cstrong data-mce-fragment=\"1\"\u003eparticle size \u003c\/strong\u003eis judged\u003cstrong data-mce-fragment=\"1\"\u003e \u0026quot;\u003cem data-mce-fragment=\"1\"\u003eaverage\u003c\/em\u003e\u0026quot;\u003c\/strong\u003e,  It therefore perfectly complements our other HAIR STRIP powder, which is \u0026quot;\u003cem data-mce-fragment=\"1\"\u003eultra-thin\u003c\/em\u003e\u0026quot;The combination of the two powders therefore makes it possible to respond to all situations, for all types of hair. \u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e  \u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eCosmetics that are over 90% biodegradable\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eParaben-free, silicone-free\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals.\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging HDPE02\u003c\/p\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eSelection by race?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e\u003cbr\u003e\u003c\/p\u003e  \u003cdiv\u003e🎈 Some examples of breeds on which Trim Grooming Powder makes people happy:\u003cbr data-mce-fragment=\"1\"\u003e  \u003cdiv data-mce-fragment=\"1\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e✔️ All Cats\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✔️ All dogs \u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✔️ Ideal for hair removal \u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e✔️ All curly-coated fur breeds (Poodles, Bichons, Kerry Blue, Soft Coaten, Bedlington, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All Cocker Spaniels (American, English)\u003c\/div\u003e  \u003cdiv\u003e✔️ All Tibetan breeds (Shih Tzu, Lhasa Apso, Tibetan Terrier, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ English Toy Spaniels (Cavalier and King Charles)\u003c\/div\u003e  \u003cdiv\u003e✔️ More generally all long and silky furs (Yorkshire, Afghan, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All terriers (Scottish, Westie, Welsh, etc.)\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003eThe list is long and not exhaustive!\u003c\/div\u003e  \u003cp\u003e\u003cbr\u003e\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"75 grams","offer_id":37819392917683,"sku":"WEX-TGP75 (401)","price":32.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/461f5837-4b29-401a-8da1-2b89ff23b7ab.jpg?v=1637052966"},{"product_id":"model-cream-creme-d-accroche-pour-blanchir","title":"MODEL CREAM, bonding cream for whitening","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e\u003cspan\u003e✨Hair whitening cream✨\u003c\/span\u003e\u003cspan style=\"font-size: 1.4em;\"\u003e  \u003c\/span\u003e\u003c\/p\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\" data-mce-fragment=\"1\"\u003e  \u003ctbody data-mce-fragment=\"1\"\u003e  \u003ctr data-mce-fragment=\"1\"\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\" data-mce-fragment=\"1\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\" data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\" data-mce-fragment=\"1\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003eEveryone will find something of real interest in it!\u003c\/div\u003e  \u003cdiv\u003e✅ Groomers ✅ Livestock farmers ✅ Individuals ✅ Competitors ✅ Handlers\u003c\/div\u003e      \u003cbr\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e✅ Hair whitening \u003c\/div\u003e  \u003cdiv\u003e✅ Structuring and shaping coats \u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✅ Easily prepares the hair\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✅ Ideal for enhancing texture or adding weight to the coat, depending on the situation.\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e✅ Significantly improves the aesthetic beauty of coats\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✅ Prepares the coat of many breeds for show preparation\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eA natural composition!\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e🍀Model Cream has been enriched with keratin to enhance the coat's structure with an immediate effect. The product's action is particularly noticeable on hairs that need conditioning before competition: it perfectly prepares the coat, thus protecting it from subsequent work with colored plasters or bleaching powders.\u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggestions for use\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e  \u003cdiv\u003e\u003cstrong\u003e\u003cspan style=\"text-decoration: underline;\"\u003eUse on dry hair.\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e🔥Apply the \u003cstrong\u003eMODEL CREAM\u003c\/strong\u003e in a very fine and light manner; it must cover the entire hair to be bleached, without any clumps or excess thickness.\u003c\/div\u003e  \u003cdiv\u003eHomogenize the distribution by massaging and\/or brushing.\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e🔥When the cream film is satisfactory, sprinkle on the SOFT GROOMING POWDER, and help it adhere by pressing (manually).\u003c\/div\u003e  \u003cdiv\u003eRepeat the sprinkling until the desired color is achieved.\u003c\/div\u003e  \u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003cbr\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e\u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003cbr\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended associations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e  \u003cmeta charset=\"UTF-8\"\u003e  \u003cspan\u003e✨It perfectly completes any Special One program, since hair whitening is possible on all hair types and textures, from the coarsest to the silkiest.\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e✨  \u003cmeta charset=\"UTF-8\"\u003e  \u003cspan data-mce-fragment=\"1\"\u003e The combination of Model Cream and the \u003c\/span\u003eSOFT GROOMING powder\u003cspan data-mce-fragment=\"1\"\u003e POWDER ensures discreet coverage and effective, long-lasting whitening.\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e  \u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eCosmetics that are over 90% biodegradable\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eSLES-free, paraben-free, silicone-free\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals.\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging HDPE02\u003c\/p\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eSelection by race?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e\u003cbr\u003e\u003c\/p\u003e  \u003cdiv\u003e🎈 Some examples of breeds that Model Cream focuses on Unanimity:\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003e✔️ All Cats\u003c\/div\u003e  \u003cdiv\u003e  \u003cmeta charset=\"UTF-8\"\u003e  \u003cspan\u003e✔️ All Dogs\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv\u003e✔️ All curly-coated fur breeds (Poodles, Bichons, Kerry Blue, Soft Coaten, Bedlington, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All Shepherds (Australian, Belgian, German, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All Cocker Spaniels (American, English)\u003c\/div\u003e  \u003cdiv\u003e✔️ All Tibetan breeds (Shih Tzu, Lhasa Apso, Tibetan Terrier, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ English Toy Spaniels (Cavalier and King Charles)\u003c\/div\u003e  \u003cdiv\u003e✔️ More generally, all long and silky furs (Yorkshire, Afghan, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All water dogs, retrievers and cattle dogs (Newfoundland, Bernese Mountain Dogs, Golden Retrievers, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All primitive\/double-coat breeds (Spitz, Eurasiers, Samoyeds, etc.)\u003c\/div\u003e  \u003cdiv\u003e✔️ All terriers (Scottish, Westie, Welsh, etc.)\u003c\/div\u003e  \u003cdiv\u003e\u003c\/div\u003e  \u003cdiv\u003eThe list is long and not exhaustive!\u003c\/div\u003e  \u003cp\u003e  \u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"500mL","offer_id":37819392950451,"sku":"WEX-MODC (407)","price":59.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-27.png?v=1651837289"},{"product_id":"soft-grooming-powder-poudre-blanche","title":"SOFT GROOMING POWDER, white powder","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e\u003cstrong\u003eSOFT GROOMING POWDER\u003c\/strong\u003e\u003cspan\u003e is the \u003c\/span\u003e\u003cstrong\u003eimpalpable white powder\u003c\/strong\u003e\u003cspan\u003e that we recommend for \u003c\/span\u003e\u003cstrong\u003ewhitening the coat\u003c\/strong\u003e\u003cspan\u003e.\u003c\/span\u003e\u003c\/p\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\n\u003ctable data-mce-fragment=\"1\" cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody data-mce-fragment=\"1\"\u003e\n\u003ctr data-mce-fragment=\"1\"\u003e\n\u003ctd data-mce-fragment=\"1\" bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv data-mce-fragment=\"1\" style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan data-mce-fragment=\"1\" style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003eEveryone will find it of real interest!\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Breeders \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Handlers\u003c\/div\u003e\n\n\u003cdiv\u003e\u003cspan\u003e \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e✅ Allows to whiten the hair \u003c\/div\u003e\n\u003cdiv\u003e✅ Fine texture that brings softness \u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e✅ Offers volume to the coat \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e✅ Ideal for exhibitions and competitions \u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggested uses\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cdiv\u003e\u003cspan\u003e🔥\u003cstrong\u003e\u003cspan style=\"text-decoration: underline;\"\u003eHair whitening in combination with Model Cream:\u003c\/span\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003eTo be used on dry hair. \u003c\/div\u003e\n\u003cdiv\u003eApply MODEL CREAM very thinly and lightly; it must cover all of the hair to be bleached, without presenting any clumps or excess thickness.\u003c\/div\u003e\n\u003cdiv\u003e Even out the distribution by massaging and\/or brushing.\u003c\/div\u003e\n\u003cdiv\u003eWhen the film of cream is satisfactory, sprinkle the SOFT GROOMING POWDER, and help grip by (manual) pressure.\u003c\/div\u003e\n\u003cdiv\u003eRenew the dusting until the desired color is obtained.\u003c\/div\u003e\n\u003cp\u003e\u003cbr\u003e\u003cspan\u003e🔥\u003cspan style=\"text-decoration: underline;\"\u003e\u003cstrong\u003eVolumize the hair:\u003c\/strong\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003eTo be used on dry hair. Dust generously and massage in the Soft Grooming Powder deeply to create a powdery cushion. Massage and use a brush to optimize homogenization.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended Combinations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"UTF-8\"\u003e \u003cspan\u003e✨Completes perfectly any Special One program, since hair whitening can be done on all types of hair and on all textures, from the coarsest to the silkiest.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e+90% biodegradable cosmetics\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eParaben-free, Silicone-free\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals.\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging HDPE02\u003c\/p\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eChoice by race?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cdiv\u003e🎈 Some examples of breeds that Soft Grooming Powder is happy with:\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e✔️ All Cats\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e✔️ All dogs in the grooming salon to whiten the coat\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e\u003cmeta charset=\"UTF-8\"\u003e✔️ Ideal for competitions and exhibitions \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e✔️ All curly coats (Poodles, Bichons, Kerry Blue, Soft Coaten, Bedlington, etc.)\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e✔️ All terriers (Scottish, Westie, Welsh, etc)\u003c\/div\u003e\n\u003cdiv\u003e✔️ Australian Shepherds \/ White Shepherds \u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003eThe list is long and not exhaustive!\u003c\/div\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"250 grammes","offer_id":42694888390876,"sku":"WEX-SGP250 (54)","price":46.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/SoftGroomingPowder.png?v=1675851806"},{"product_id":"hair-strip-ear-powder","title":"Hair Strip, Ear Powder","description":"\u003ch6\u003e\n\u003cspan style=\"font-size: 1.4em;\"\u003e \u003cmeta charset = \"UTF-8\"\u003e\n\u003cstrong\u003e Powder used during ear waxing - ear hygiene \u003c\/strong\u003e \u003c\/span\u003e \u003cbr\u003e\n\u003c\/h6\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\" data-mce-fragment=\"1\"\u003e\n\u003ctbody data-mce-fragment = \"1\"\u003e\n\u003ctr data-mce-fragment = \"1\"\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\" data-mce-fragment=\"1\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\" data-mce-fragment=\"1\"\u003e \u003cstrong data-mce-fragment=\"1\"\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\" data-mce-fragment=\"1\"\u003e Who is this product made for? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e Everyone will find a real interest in it! \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Breeders \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Handlers \u003c\/div\u003e\n\n\u003cdiv\u003e \u003cspan\u003e ✨ \u003cmeta charset = \"UTF-8\"\u003e\n\u003cstrong data-mce-fragment=\"1\"\u003e HAIR STRIP \u003c\/strong\u003e is a \u003cstrong data-mce-fragment=\"1\"\u003e powder \u003c\/strong\u003e \u003cstrong data-mce-fragment=\"1\"\u003e fine and impalpable hair removal \u003c\/strong\u003e created specifically to easily remove hair from the dog's ear pinna. \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✨Its special formulation also allows it to be used for hair removal treatments, especially for the most difficult areas such as the ears, cheeks and back of the dog. With regular use, the ear remains hygienic and protected from external aggressions. \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e What benefits can I expect? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✅ Facilitates hair removal \u003c\/div\u003e\n\u003cdiv\u003e ✅ Allows the ear to stay clean and protected from external aggressions \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✅ Smoother, more precise and faster hair removal \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✅ \u003cmeta charset = \"UTF-8\"\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e Ideal for show dogs and all hair removal breeds \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cspan data-mce-fragment=\"1\"\u003e \u003cmeta charset = \"UTF-8\"\u003e ✅ Optimize the volume by creating a powdery cushion. \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan style=\"font-size: 1.4em;\"\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✅ Texture creation \u003cspan data-mce-fragment=\"1\"\u003e on dogs whose coat lacks hold, whose softness is a defect \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Examples and suggested uses \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset = \"UTF-8\"\u003e\n\u003cdiv\u003e \u003cspan\u003e 🔥Sprinkle the product in the desired areas (squeeze the bottle to release a cloud of powder). \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan lang=\"it\" xml:lang=\"it\"\u003e 🔥Mass the hair on the ears carefully to facilitate the grip. \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e 🔥Pilate using thumb and forefinger or a depilatory knife. \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Recommended associations \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset = \"UTF-8\"\u003e\n\u003cspan\u003e ▶ ︎ Ideally complements any Special One program. \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e ▶ ︎ \u003cmeta charset = \"UTF-8\"\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e Its \u003c\/span\u003e \u003cstrong data-mce-fragment=\"1\"\u003e grain size \u003c\/strong\u003e \u003cspan data-mce-fragment=\"1\"\u003e is considered \u003c\/span\u003e \u003cstrong data-mce-fragment=\"1\"\u003e \"ultra fine\" \u003c\/strong\u003e \u003cspan data-mce-fragment=\"1\"\u003e, it therefore perfectly complements our other TRIM GROOMING POWDER which, for its part, is \"medium\". The combination of the two powders therefore makes it possible to respond to all situations, for all types of hair. \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Our commitments \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Cosmetics biodegradable at + 90% \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Paraben-free, Silicone-free \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Not tested on animals. \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e PEHD02 recyclable packaging \u003c\/p\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Choice by race? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003cbr\u003e \u003c\/p\u003e\n\u003cdiv\u003e 🎈 Some examples of breeds on which Hair Strip \/ Par Powder makes people happy: \u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✔️ All Cats \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✔️ All dogs \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✔️ Texture creation for dogs such as: Bichons, Poodles ... \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✔️ \u003cmeta charset = \"UTF-8\"\u003e Ideal for show dogs and all hair-removing breeds \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cp\u003e \u003cbr\u003e \u003c\/p\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819393015987,"sku":"WEX-HSTR 050 (125)","price":14.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-41.png?v=1651839973"},{"product_id":"aqua-nettoyant-oculaire","title":"AQUA eye cleaner","description":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eAQUA eye cleanser is an ultra-gentle ophthalmic lotion with plant extracts. \u003cbr\u003eFinally a product that allows you to REMOVE THE TRACES OF TEARS thanks to natural active ingredients.\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003c\/p\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\" data-mce-fragment=\"1\"\u003e\n\u003ctbody data-mce-fragment=\"1\"\u003e\n\u003ctr data-mce-fragment=\"1\"\u003e\n\u003ctd bgcolor=\"303030\" data-mce-fragment=\"1\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-fragment=\"1\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan style=\"color: #ffffff;\" data-mce-fragment=\"1\" data-mce-style=\"color: #ffffff;\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003eEveryone will find it of real interest!\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Breeders \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Handlers\u003c\/div\u003e\n\n\u003cdiv\u003e\u003cspan\u003e\u003cbr\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e✅ Won't damage hair\u003c\/div\u003e\n\u003cdiv\u003e✅ Erases traces of tears\u003c\/div\u003e\n\u003cdiv\u003e✅ Prevent itching and redness\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e✅ Prevents furrows from being pink\/brown, oxidized, bad smelling, or unsightly\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e\u003cspan\u003e✅ Remove the frame out of the corner of your eye.\u003c\/span\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e\u003cspan\u003e\u003cmeta charset=\"utf-8\"\u003e \u003cmeta charset=\"utf-8\"\u003eprotects and soothes watery eyes\u003c\/span\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eComposition: focus on naturalness!\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong\u003e\u003cbr\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp\u003eYour pet's eye is constantly exposed to different causes of irritation in our environment: dust, UV rays, foreign particles and many other things. It is therefore important to take care of it with natural and effective products.\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan\u003e\u003cmeta charset=\"utf-8\"\u003eAQUA is a highly concentrated eye lotion with plant extracts and distilled water.\u003c\/span\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003e\u003c\/strong\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong\u003eYou will appreciate its natural composition:\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e🍀 E\u003cspan data-mce-fragment=\"1\"\u003echamomile extracts \u003c\/span\u003e(\u003cmeta charset=\"utf-8\"\u003ecalming action), \u003c\/div\u003e\n\u003cdiv\u003e🍀 Lime (a\u003cspan data-mce-fragment=\"1\"\u003entiseptic, anti-inflammatory and antioxidant\u003c\/span\u003e), \u003c\/div\u003e\n\u003cdiv\u003e🍀 L\u003cspan data-mce-fragment=\"1\"\u003ea lemon balm\u003c\/span\u003e (revitalising, soothing and softening \u003c\/span\u003e),\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e🍀 Mallow (\u003cmeta charset=\"utf-8\"\u003ehydrating and antioxidant active ingredients\u003c\/span\u003e)\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"utf-8\"\u003e \u003cspan data-mce-fragment=\"1\"\u003e🍀L\u003c\/span\u003e'aloe vera ( hydrates\u003cspan data-mce-fragment=\"1\"\u003e and\u003c\/span\u003e \u003cmeta charset=\"utf-8\"\u003e \u003cspan data-mce-fragment=\"1\"\u003esupplies the skin with vitamins\u003c\/span\u003e)\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"utf-8\"\u003e \u003cspan\u003e🍀Sea water (\u003cmeta charset=\"utf-8\"\u003ehelps strengthen the skin barrier)\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggested uses\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cspan style=\"color: #000000;\" data-mce-style=\"color: #000000;\"\u003e\u003cem\u003e\u003c\/em\u003eChoose this cleanser if you need:\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003c\/span\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 to gently clean any dog's eyes\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 to \u003cspan data-mce-fragment=\"1\"\u003eremove tear marks\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 to put in place a protocol to avoid \u003cmeta charset=\"utf-8\"\u003eclogging of the eyes\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong data-mce-fragment=\"1\"\u003e\u003c\/strong\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003cstrong\u003eBUT:\u003c\/strong\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e❌ Never \u003cmeta charset=\"utf-8\"\u003euse cotton wool to clean.\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cspan data-mce-fragment=\"1\"\u003eApply AQUA carefully by spraying the lotion in the eye and in the tear drainage area. \u003cbr\u003e\u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003eGently clean the excess and impurities with a gauze.\u003cbr\u003e\u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003eAt the beginning of the treatment, repeat this operation every day and at each bath for perfect hygiene.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cspan data-mce-fragment=\"1\"\u003eThereafter, you will find the rhythm of routine that suits your animal (generally one or two weekly applications are sufficient for a healthy animal).\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003cmeta charset=\"utf-8\"\u003eThanks to its innovative formulation, it can be used inside the eye as well as around it.\u003cbr\u003eIn just a few weeks your dog or cat will regain eyes in full health.\u003c\/span\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended Combinations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003eEntire Special One Range is Compatible with AQUA OTO\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan data-mce-fragment=\"1\"\u003e🤝\u003cmeta charset=\"utf-8\"\u003eThe lotion can very well be combined with medical treatment\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset=\"utf-8\"\u003e \u003cmeta charset=\"utf-8\"\u003eStart each Special One bath with a spray of AQUA cleanser in each eye. \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e+90% biodegradable cosmetics\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eParaben-free, Silicone-free\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals.\u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging PEHD02\u003c\/p\u003e.","brand":"Endemik Sas","offers":[{"title":"100 mL","offer_id":37819393048755,"sku":"WAQ-AQ100 (136)","price":19.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/PHOTO-2021-07-12-23-13-599_c22f8065-ac78-43d2-8634-0ee2d8d3ea12.jpg?v=1680465993"},{"product_id":"aqua-oto-hygiene-des-oreilles","title":"AQUA OTO Ear Hygiene","description":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eAQUA OTO is a specific lotion for \u003c\/span\u003e\u003cspan\u003eear cleaning, but also for the prevention of blockages and infections.\u003c\/span\u003e\u003c\/p\u003e  \u003cspan data-mce-fragment=\"1\"\u003e  \u003c\/span\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e  \u003ctable data-mce-fragment=\"1\" cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody data-mce-fragment=\"1\"\u003e  \u003ctr data-mce-fragment=\"1\"\u003e  \u003ctd data-mce-fragment=\"1\" bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv data-mce-fragment=\"1\" style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003e\u003cspan data-mce-fragment=\"1\" style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWho is this product for?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr data-mce-fragment=\"1\"\u003e  \u003cdiv data-mce-fragment=\"1\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003eEveryone will find something of real interest in it!\u003c\/div\u003e  \u003cdiv\u003e  \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Livestock farmers \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e☑️\u003c\/span\u003e Handlers\u003c\/div\u003e      \u003cdiv\u003e\u003cspan\u003e\u003cbr\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eWhat benefits can I expect?\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e✅ Doesn't damage the hair\u003c\/div\u003e  \u003cdiv\u003e✅ Deodorant action \u003c\/div\u003e  \u003cdiv\u003e✅ Prevents itching and redness\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e✅ Offer a calming effect\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan\u003e\u003cspan\u003e✅ Removal of earwax and other oily impurities.\u003c\/span\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eComposition: a focus on natural ingredients!\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003e  \u003cmeta charset=\"utf-8\"\u003e  \u003cp\u003eAQUA OTO is an innovative ear solution whose solubility will allow the dissolution and elimination of earwax and other oily-type impurities.\u003cbr\u003eFor effective cleaning of your dogs' and cats' ears, the product should be applied frequently, especially during bathing so that the removed dirt does not damage the fur.\u003cbr\u003eBeing hypoallergenic, it has been manufactured with the aim of respecting all skin types, while contributing to the proper functioning of epidermal metabolism.\u003c\/p\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cstrong\u003e\u003cbr\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cstrong\u003eYou will appreciate its natural composition:\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e🍀 HAS\u003cspan data-mce-fragment=\"1\"\u003ellatoin and chamomile extracts \u003c\/span\u003e(\u003cmeta charset=\"utf-8\"\u003ecalming action), \u003c\/div\u003e  \u003cdiv\u003e🍀 M\u003cspan data-mce-fragment=\"1\"\u003epeppermint tea\u003c\/span\u003e (\u003cmeta charset=\"utf-8\"\u003eprevention of itching and redness), \u003c\/div\u003e  \u003cdiv\u003e🍀 L' \u003cspan data-mce-fragment=\"1\"\u003eYarrow, mallow and lemon balm\u003c\/span\u003e (\u003cmeta charset=\"utf-8\"\u003edeodorant action),\u003c\/div\u003e  \u003cdiv\u003e  \u003cspan data-mce-fragment=\"1\"\u003e🍀 Yeast (\u003c\/span\u003estrengthen and brighten the coat and promote the skin's natural microbial balance)\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003e  \u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eExamples and suggestions for use\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cdiv\u003e\u003cspan style=\"color: #000000;\" data-mce-style=\"color: #000000;\"\u003e\u003cem\u003e\u003c\/em\u003eChoose this cleaner if you need:\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003c\/span\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 of Gently clean the ears of any dog ​​and cat\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 of \u003cmeta charset=\"utf-8\"\u003e  \u003cspan data-mce-fragment=\"1\"\u003eprevent infections\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cstrong data-mce-fragment=\"1\"\u003e🔥 to put in place a protocol to avoid \u003cmeta charset=\"utf-8\"\u003eear blockage\u003c\/strong\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cstrong data-mce-fragment=\"1\"\u003e\u003c\/strong\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan style=\"text-decoration: underline;\" data-mce-style=\"text-decoration: underline;\"\u003e\u003cstrong\u003eBUT :\u003c\/strong\u003e\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e❌ Born \u003cmeta charset=\"utf-8\"\u003eNever use cotton to clean the inside of your pet's ears.\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cmeta charset=\"utf-8\"\u003eIt is advisable to remove the down present in the pavilion beforehand (use HAIR STRIP for this).\u003cbr\u003eHold the animal's head with its muzzle pointing towards the ground, lift the ear so that the canal is vertical.\u003cbr\u003ePour Aqua Oto and then massage for a few moments. \u003cbr\u003eUsing a gauze moistened with the product, gently wipe the inside of the ear to remove impurities.\u003cbr\u003eWhen your dog shakes itself, the centrifugal force of the movement will only intensify the action of the product and the expulsion of impurities.\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eRecommended associations\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cbr\u003e  \u003cdiv\u003eThe entire Special One range is compatible with AQUA OTO\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv\u003e\u003cspan data-mce-fragment=\"1\"\u003e🤝\u003cmeta charset=\"utf-8\"\u003eThe lotion can very well be used in conjunction with medical treatment.\u003c\/span\u003e\u003c\/div\u003e  \u003cdiv\u003e  \u003cspan data-mce-fragment=\"1\"\u003e\u003c\/span\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cspan data-mce-fragment=\"1\"\u003e\u003cmeta charset=\"utf-8\"\u003e  \u003cmeta charset=\"utf-8\"\u003eWhen grooming, begin each Special One bath with an application. lotion in each ear.\u003c\/span\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd bgcolor=\"303030\" pixels=\"\"\u003e  \u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eOur commitments\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e  \u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eCosmetics that are over 90% biodegradable\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eParaben-free, silicone-free\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eNot tested on animals.\u003c\/p\u003e  \u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003eRecyclable packaging HDPE02\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"150 mL","offer_id":37819393081523,"sku":"WEX-AQUA OTO (144)","price":28.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-40.png?v=1651839867"},{"product_id":"spray-aluminium-logote-special-one","title":"SPECIAL ONE microdiffusion logo spray","description":"\u003cp\u003eEmpty spray\u003c\/p\u003e\n\u003cdiv\u003ePlastic spray for \u003ca href=\"https:\/\/www.rueducommerce.fr\/m\/pl\/malid:51426052\" target=\"_blank\"\u003eprofessional use\u003c\/a\u003e, capacity 200mL.\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003eUltra fine mist.\u003c\/div\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819393147059,"sku":"-172","price":8.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-38.png?v=1651839501"},{"product_id":"shampoing-salon-toilettage","title":"BLUE SKY PRO, can be diluted 40 times!","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e  \u003cstrong\u003eBLUE SKY PRO\u003c\/strong\u003e is the highly concentrated Special One professional shampoo \u003cstrong\u003euniversal\u003c\/strong\u003e.  Designed for grooming salons and breeders, it offers the \u003cstrong\u003ebest value for money in the range\u003c\/strong\u003e :  ultra versatile, ultra economical, ultra efficient — without ever stripping or damaging.\u003c\/div\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eDesigned primarily for the \u003cstrong\u003egrooming salons and breeders\u003c\/strong\u003e — but everyone will find it genuinely beneficial. Note: for competitors preparing for a competition, a specialist shampoo will be more effective in its specific area (Bain Pro, Platinum Pro, 4Poodle, Keratine Pro…).\u003c\/p\u003e  \u003cdiv class=\"aqr-audience\"\u003e  \u003cdiv class=\"aqr-audience-grid\"\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-audience-card\"\u003e  \u003cdiv class=\"aqr-audience-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts formula, incorporating \u003cstrong\u003emoisturizing agents and a structuring emollient cream\u003c\/strong\u003e,  is designed for \u003cstrong\u003espeed up and optimize grooming\u003c\/strong\u003e while offering maximum results on hair texture. Diluted at 1\/40, it becomes noticeably \u003cstrong\u003echeaper than discount brands\u003c\/strong\u003e — with all the care of the high-end Special One formulations.\u003c\/p\u003e  \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; border-radius: 8px; padding: 12px 16px; font-size: 13px; line-height: 1.55; margin: 4px 0 4px;\"\u003e⚠️  \u003cstrong\u003eFor competitors:\u003c\/strong\u003e Blue Sky Pro is an excellent all-rounder, but a specialist shampoo will achieve unparalleled performance in its specialty — \u003cstrong\u003eBain Pro, Platinum Pro, 4Poodle, Keratin Pro, Aquablu Pro\u003c\/strong\u003e depending on the objective.\u003c\/div\u003e  \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e  \u003cdiv class=\"aqr-benefits-grid\"\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eUniversal cleaning\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eDeep cleans and sanitizes even the dirtiest animals — without stripping or damaging them.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eGlow \u0026amp; brightness\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eGives a boost to all hair types: more pleasant feel and improved shine.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eKeratin protection\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases natural defenses to protect the hair structure.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eFrequent baths\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNo risk to skin and hair, even with intensive use in salons.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e  \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"8\"\u003e\u003c\/circle\u003e\u003cpath d=\"M12 7v10M9.5 9.5h4a1.6 1.6 0 0 1 0 3.2h-3a1.6 1.6 0 0 0 0 3.2h4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-content\"\u003e  \u003cdiv class=\"aqr-benefit-title\"\u003eUltra economical\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eDilution 1\/40: a lower cost per bath than \u0026quot;discount\u0026quot; brands, with Special One standards.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- RADAR UNIT (moved under Expertise) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of the Blue Sky Pro\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e  \u003cdiv id=\"so-radar-widget\" style=\"width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border: 1px solid #e5e5e5; font-family: inherit; color: #1a1a1a; line-height: 1.4;\"\u003e  \u003cdiv style=\"padding: 16px 28px; overflow: visible;\"\u003e  \u003cdiv id=\"so-radar-area\" style=\"position: relative; width: 100%; max-width: 340px; aspect-ratio: 1; margin: 0 auto; overflow: visible;\"\u003e\u003csvg id=\"so-radar-svg\" style=\"width: 100%; height: 100%; overflow: visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\u003c\/div\u003e  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 3 }, { label: \"Volume\", value: 3 }, { label: \"Démêlant\", value: 2 }, { label: \"Soin peau\", value: 2 }, { label: \"Brillance\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e  \u003c!-- BLOCK 3: COMPOSITION (Active Blue Sky Pro JS MAPPING - Reliable) --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Blue Sky Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA natural formulation focused on purity, hydration, and skin protection — \u003cstrong\u003eParaben-free, silicone-free\u003c\/strong\u003e.  Here, zone by zone, is how each active ingredient acts on the skin and hair.\u003c\/p\u003e  \u003c!-- MAPPING --\u003e  \u003cdiv id=\"aqr-carto\" style=\"background: #fff; border: 1px solid #e5e5e5; padding: 18px;\"\u003e  \u003cdiv class=\"aqr-grid\"\u003e  \u003cdiv class=\"aqr-col-list\"\u003e  \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-schema\"\u003e  \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e  \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display: block; width: 100%; height: auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée du Blue Sky Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e  \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e  \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-col-info\"\u003e  \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e  \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'yuzu', label:'Yuzu Ceramide B', latin:'Céramide d’agrume', family:'cond',\n          desc:\"Céramide d’agrume qui améliore la souplesse de la couche externe de la peau et favorise le renouvellement cutané : elle renforce la barrière épidermique.\",\n          targets: [\n            { anchor:'epiderme', action:\"Renfort de la barrière\", benefit:\"Renforce la barrière épidermique et améliore la souplesse de la couche externe.\" },\n            { anchor:'cuticule', action:\"Lissage du poil\", benefit:\"Aide à lisser la surface du poil pour un toucher plus doux.\" }\n          ]\n        },\n        {\n          id:'ananas', label:'Extrait d’Ananas', latin:'Ananas comosus', family:'bio',\n          desc:\"Tonifiant, hydratant et exfoliant naturel : il repulpe la peau, revitalise le manteau et favorise l’élimination des cellules mortes.\",\n          targets: [\n            { anchor:'epiderme', action:\"Exfoliation douce\", benefit:\"Favorise l’élimination des cellules mortes et repulpe la peau.\" },\n            { anchor:'tige_poil', action:\"Revitalisation\", benefit:\"Revitalise le manteau et lui redonne de la vitalité.\" }\n          ]\n        },\n        {\n          id:'thym', label:'Huile de Thym', latin:'Thymus vulgaris', family:'botanic',\n          desc:\"Huile aux vertus purifiantes et antioxydantes : elle assainit la peau en profondeur et protège le manteau des agressions extérieures.\",\n          targets: [\n            { anchor:'glande_seb', action:\"Purification\", benefit:\"Assainit la peau en profondeur au niveau du film cutané.\" },\n            { anchor:'tige_poil', action:\"Protection antioxydante\", benefit:\"Protège le manteau des agressions extérieures.\" }\n          ]\n        },\n        {\n          id:'teatree', label:'Tea Tree (Théier)', latin:'Melaleuca alternifolia', family:'botanic',\n          desc:\"Actif antiseptique naturel bien connu en cosmétique professionnelle : il purifie, assainit et tonifie la peau.\",\n          targets: [\n            { anchor:'epiderme', action:\"Action antiseptique\", benefit:\"Purifie et assainit la peau naturellement.\" },\n            { anchor:'glande_sud', action:\"Effet tonifiant\", benefit:\"Tonifie la peau et limite les déséquilibres de surface.\" }\n          ]\n        },\n        {\n          id:'palmier', label:'Huile de Palmier', latin:'Huile végétale nourrissante', family:'aqua',\n          desc:\"Huile très nourrissante et protectrice : elle prévient la déshydratation cutanée et maintient la barrière hydrolipidique.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Maintien de la barrière\", benefit:\"Prévient la déshydratation et maintient la barrière hydrolipidique.\" },\n            { anchor:'epiderme', action:\"Nutrition protectrice\", benefit:\"Nourrit et protège la peau en profondeur.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: PROTOCOLS --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e  \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- CARD 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e40\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eOne part for every 40 parts water\u003cbr\u003ethe most economical in the range\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAP 2: Yield --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 10 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 40 L\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 200 L\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CARD 3: Animated Equivalencies --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e25\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e25\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e1.5\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoon\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e1\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressure\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/40)\n      var cycles = [\n        { target: '1 L', ml: '25',  g: '25',  spoon: '1,5', pump: '1' },\n        { target: '2 L', ml: '50',  g: '50',  spoon: '3',   pump: '2' },\n        { target: '4 L', ml: '100', g: '100', spoon: '6',   pump: '4' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e  \u003cdetails class=\"aqr-proto-acc\" open=\"\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eLiving room \u0026amp; breeding — first general shampoo or bath\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eBlue Sky Pro excels as a standalone shampoo or as the first step in a two-shampoo protocol.\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eUse Blue Sky Pro diluted to \u003cstrong\u003e1\/40\u003c\/strong\u003e First, shampoo the wet hair, then rinse.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eSpecific shampoo (optional)\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eYou can then follow up with a more targeted shampoo depending on the need: \u003cstrong\u003eBain Pro or Aquarosa Pro\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream and\/or Bombastic\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eSingle shampoo possible\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFor \u0026quot;average\u0026quot; dogs in living rooms, Blue Sky Pro can be the \u003cstrong\u003eunique shampoo\u003c\/strong\u003e :  It covers all current needs with unbeatable profitability.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails class=\"aqr-proto-acc\"\u003e  \u003csummary class=\"aqr-proto-summary\"\u003e\u003cspan class=\"aqr-proto-title\"\u003eIntensive cleaning — for males, overweight or very dirty dogs\u003c\/span\u003e  \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv class=\"aqr-proto-content\"\u003e  \u003cp class=\"aqr-proto-subtitle\"\u003eFor cases requiring strong cleansing power (males with urine, oily skin, extreme dirt)\u003c\/p\u003e  \u003col class=\"aqr-proto-steps\"\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eCompare according to intensity\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eCompare with \u003cstrong\u003eAquapure Pro\u003c\/strong\u003e depending on the problem — both are positioned on this register, with Blue Sky Pro being slightly softer.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst concentrated shampoo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eUse Blue Sky Pro in \u003cstrong\u003efirst shampoo, pure or concentrated\u003c\/strong\u003e on the dirtiest areas, then rinse.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eIntegration into the pre-bath routine\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eIt can also be \u003cstrong\u003eintegrated directly into the Bio Energy Plus\u003c\/strong\u003e for enhanced action right from the pre-bath.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003cli class=\"aqr-proto-step\"\u003e  \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e  \u003cdiv class=\"aqr-proto-step-body\"\u003e  \u003cdiv class=\"aqr-proto-step-title\"\u003eSuitable finish\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish the bath with shampoo and conditioner suitable for the type of fur.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/li\u003e  \u003c\/ol\u003e  \u003c\/div\u003e  \u003c\/details\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e  \u003c!-- Blue Sky Pro at its core + modular add-ons. If... → Then --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003eBlue Sky Pro's direct competitor remains...\u003cstrong\u003eAquarosa Pro\u003c\/strong\u003e :  Both are suitable for all breeds, but Blue Sky Pro is more cleansing while Aquarosa Pro is gentler and more nourishing. Compare them based on your pet's needs. Our favorite combinations:\u003c\/p\u003e  \u003cdiv class=\"aqr-assoc-rules\"\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA second targeted shampoo is recommended…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBain Pro · Aquarosa Pro · Aquapure Pro\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final touch-up is needed…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-rule\"\u003e  \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA showroom finish is desired…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eMix Pink · Absolute 4Poodle · Style 360\u003c\/strong\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003c!-- Races in rounded pills --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere the Blue Sky Pro makes the difference:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱🐶 All cats \u0026amp; all dogs \u003cspan\u003e(universal by definition)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e✂️ Short, double or medium-length hair \u0026amp; scissors cuts \u003cspan\u003e(in the living room)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eA long and non-exhaustive list — the universal generalist, from the living room to the farm.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"10 Litres","offer_id":37819393179827,"sku":"WEX-BLSKY10L (89)","price":168.1,"currency_code":"EUR","in_stock":true},{"title":"250 mL","offer_id":37819393212595,"sku":"WEX-BLSKY250 (86)","price":23.95,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":37819393245363,"sku":"WEX-BLSKY1L (87)","price":48.3,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/blueSkyPro.png?v=1680257162"},{"product_id":"parfum-de-luxe-by-special-one","title":"Luxury Perfume, by Special One","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\u003clink rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"\u003e  \u003clink href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400\u0026amp;family=Outfit:wght@200;300;400;500;600\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\u003c\/p\u003e  \u003cstyle\u003e\n  *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }\n\n  :root {\n    --black: #111;\n    --dark: #222;\n    --charcoal: #333;\n    --gray-dark: #555;\n    --gray: #777;\n    --gray-mid: #999;\n    --gray-light: #bbb;\n    --silver: #d0d0d0;\n    --pearl: #e5e5e5;\n    --smoke: #f0f0f0;\n    --off-white: #f7f7f7;\n    --white: #fff;\n    --font-display: 'Cormorant Garamond', Georgia, serif;\n    --font-body: 'Outfit', Helvetica, sans-serif;\n  }\n\n  html { scroll-behavior: smooth; font-size: 16px; }\n\n  body {\n    font-family: var(--font-body);\n    background: var(--white);\n    color: var(--black);\n    line-height: 1.6;\n    overflow-x: hidden;\n    -webkit-font-smoothing: antialiased;\n  }\n\n  \/* ==================== HERO ==================== *\/\n  .hero {\n    position: relative;\n    min-height: 100vh;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: center;\n    text-align: center;\n    padding: 60px 24px;\n    background: var(--white);\n    overflow: hidden;\n  }\n\n  .hero::before {\n    content: '';\n    position: absolute;\n    inset: 0;\n    background: url(\"data:image\/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000000' fill-opacity='0.015'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'\/%3E%3C\/g%3E%3C\/g%3E%3C\/svg%3E\");\n  }\n\n  .hero-badge {\n    display: inline-block;\n    font-family: var(--font-body);\n    font-weight: 500;\n    font-size: 0.7rem;\n    letter-spacing: 0.35em;\n    text-transform: uppercase;\n    color: var(--gray);\n    border: 1px solid var(--pearl);\n    padding: 8px 24px;\n    margin-bottom: 40px;\n    position: relative;\n    z-index: 1;\n    animation: fadeDown 1s ease both;\n  }\n\n  .hero-title {\n    font-family: var(--font-display);\n    font-weight: 300;\n    font-size: clamp(2.8rem, 8vw, 7rem);\n    line-height: 1.05;\n    letter-spacing: -0.02em;\n    color: var(--black);\n    position: relative;\n    z-index: 1;\n    animation: fadeUp 1s 0.2s ease both;\n  }\n\n  .hero-title em {\n    font-style: italic;\n    font-weight: 300;\n    color: var(--gray);\n  }\n\n  .hero-subtitle {\n    font-family: var(--font-body);\n    font-weight: 300;\n    font-size: clamp(0.95rem, 2vw, 1.15rem);\n    color: var(--gray);\n    max-width: 560px;\n    margin-top: 28px;\n    line-height: 1.7;\n    position: relative;\n    z-index: 1;\n    animation: fadeUp 1s 0.4s ease both;\n  }\n\n  .hero-line {\n    width: 1px;\n    height: 80px;\n    background: linear-gradient(to bottom, transparent, var(--pearl), transparent);\n    margin-top: 50px;\n    position: relative;\n    z-index: 1;\n    animation: fadeUp 1s 0.6s ease both;\n  }\n\n  .hero-scroll {\n    font-family: var(--font-body);\n    font-size: 0.65rem;\n    letter-spacing: 0.3em;\n    text-transform: uppercase;\n    color: var(--gray-light);\n    margin-top: 16px;\n    position: relative;\n    z-index: 1;\n    animation: fadeUp 1s 0.7s ease both;\n  }\n\n  \/* ==================== PYRAMIDE ==================== *\/\n  .pyramide-section {\n    padding: 100px 24px;\n    background: var(--off-white);\n    position: relative;\n  }\n\n  .pyramide-section::before {\n    content: '';\n    position: absolute;\n    top: 0; left: 0; right: 0;\n    height: 1px;\n    background: linear-gradient(to right, transparent, var(--pearl), transparent);\n  }\n\n  .section-header {\n    text-align: center;\n    max-width: 700px;\n    margin: 0 auto 70px;\n  }\n\n  .section-label {\n    font-family: var(--font-body);\n    font-weight: 500;\n    font-size: 0.65rem;\n    letter-spacing: 0.35em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    margin-bottom: 20px;\n  }\n\n  .section-title {\n    font-family: var(--font-display);\n    font-weight: 300;\n    font-size: clamp(2rem, 4.5vw, 3.2rem);\n    color: var(--black);\n    line-height: 1.15;\n  }\n\n  .pyramide-grid {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 1px;\n    max-width: 1000px;\n    margin: 0 auto;\n    background: var(--pearl);\n  }\n\n  .pyramide-card {\n    background: var(--white);\n    padding: 48px 32px;\n    text-align: center;\n    transition: background 0.4s ease;\n  }\n\n  .pyramide-card:hover { background: var(--smoke); }\n\n  .pyramide-icon { font-size: 1.6rem; margin-bottom: 20px; color: var(--silver); }\n\n  .pyramide-card h3 {\n    font-family: var(--font-display);\n    font-weight: 500;\n    font-size: 1.35rem;\n    color: var(--black);\n    margin-bottom: 6px;\n  }\n\n  .pyramide-card .subtitle {\n    font-family: var(--font-body);\n    font-size: 0.7rem;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    margin-bottom: 18px;\n  }\n\n  .pyramide-card p {\n    font-family: var(--font-body);\n    font-weight: 300;\n    font-size: 0.88rem;\n    color: var(--gray);\n    line-height: 1.7;\n  }\n\n  @media (max-width: 768px) {\n    .pyramide-grid { grid-template-columns: 1fr; }\n  }\n\n  \/* ==================== FRAGRANCES ==================== *\/\n  .fragrances-section {\n    padding: 100px 24px;\n    background: var(--white);\n    position: relative;\n  }\n\n  .fragrances-section::before {\n    content: '';\n    position: absolute;\n    top: 0; left: 0; right: 0;\n    height: 1px;\n    background: linear-gradient(to right, transparent, var(--pearl), transparent);\n  }\n\n  .featured-fragrances {\n    max-width: 1100px;\n    margin: 0 auto 100px;\n    display: flex;\n    flex-direction: column;\n    gap: 2px;\n  }\n\n  .featured-card {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    overflow: hidden;\n    transition: transform 0.5s ease;\n  }\n\n  .featured-card:hover { transform: translateY(-2px); }\n\n  .featured-card:nth-child(even) .featured-visual { order: 2; }\n  .featured-card:nth-child(even) .featured-content { order: 1; }\n\n  .featured-visual {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 60px 40px;\n    background: var(--black);\n    position: relative;\n    min-height: 350px;\n  }\n\n  .featured-visual .fragrance-initial {\n    font-family: var(--font-display);\n    font-weight: 300;\n    font-size: clamp(5rem, 10vw, 9rem);\n    color: var(--white);\n    opacity: 0.06;\n    position: absolute;\n    user-select: none;\n  }\n\n  .featured-visual .fragrance-name-display {\n    font-family: var(--font-display);\n    font-weight: 300;\n    font-size: clamp(2.2rem, 4vw, 3.5rem);\n    color: var(--white);\n    position: relative;\n    z-index: 1;\n    text-align: center;\n  }\n\n  .featured-visual .fragrance-name-display em {\n    display: block;\n    font-style: italic;\n    font-size: 0.45em;\n    color: var(--gray-mid);\n    margin-top: 8px;\n    font-weight: 300;\n  }\n\n  .featured-content {\n    padding: 50px 44px;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    background: var(--white);\n  }\n\n  .featured-tag {\n    font-family: var(--font-body);\n    font-size: 0.6rem;\n    font-weight: 500;\n    letter-spacing: 0.3em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    margin-bottom: 16px;\n  }\n\n  .featured-content h3 {\n    font-family: var(--font-display);\n    font-weight: 500;\n    font-size: clamp(1.5rem, 3vw, 2rem);\n    color: var(--black);\n    margin-bottom: 16px;\n    line-height: 1.2;\n  }\n\n  .featured-content .desc {\n    font-family: var(--font-body);\n    font-weight: 300;\n    font-size: 0.9rem;\n    color: var(--gray);\n    line-height: 1.75;\n    margin-bottom: 28px;\n  }\n\n  .notes-row { display: flex; gap: 24px; flex-wrap: wrap; }\n  .note-block { flex: 1; min-width: 140px; }\n\n  .note-block .note-label {\n    font-family: var(--font-body);\n    font-size: 0.6rem;\n    font-weight: 500;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    margin-bottom: 6px;\n  }\n\n  .note-block .note-value {\n    font-family: var(--font-display);\n    font-weight: 400;\n    font-size: 0.92rem;\n    color: var(--charcoal);\n    line-height: 1.5;\n    font-style: italic;\n  }\n\n  @media (max-width: 768px) {\n    .featured-card { grid-template-columns: 1fr; }\n    .featured-card:nth-child(even) .featured-visual { order: 1; }\n    .featured-card:nth-child(even) .featured-content { order: 2; }\n    .featured-content { padding: 36px 28px; }\n    .featured-visual { min-height: 240px; padding: 40px 28px; }\n    .notes-row { gap: 16px; }\n    .note-block { min-width: 100%; }\n  }\n\n  \/* — Classics — *\/\n  .classics-header { text-align: center; max-width: 700px; margin: 0 auto 60px; }\n\n  .classics-divider {\n    width: 60px;\n    height: 1px;\n    background: var(--pearl);\n    margin: 0 auto 60px;\n  }\n\n  .classics-grid {\n    max-width: 1100px;\n    margin: 0 auto;\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n    gap: 1px;\n    background: var(--pearl);\n  }\n\n  .classic-card {\n    background: var(--white);\n    padding: 36px 32px;\n    border-left: 2px solid var(--pearl);\n    transition: border-color 0.3s ease, background 0.3s ease;\n  }\n\n  .classic-card:hover {\n    border-color: var(--black);\n    background: var(--off-white);\n  }\n\n  .classic-card .card-name {\n    font-family: var(--font-display);\n    font-weight: 600;\n    font-size: 1.4rem;\n    color: var(--black);\n    margin-bottom: 4px;\n  }\n\n  .classic-card .card-theme {\n    font-family: var(--font-body);\n    font-size: 0.7rem;\n    font-weight: 400;\n    letter-spacing: 0.15em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    margin-bottom: 22px;\n  }\n\n  .classic-card .card-notes { display: flex; flex-direction: column; gap: 14px; }\n\n  .classic-card .card-note-row { display: flex; align-items: baseline; gap: 12px; }\n\n  .classic-card .card-note-label {\n    font-family: var(--font-body);\n    font-size: 0.58rem;\n    font-weight: 500;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--gray-mid);\n    min-width: 52px;\n    flex-shrink: 0;\n  }\n\n  .classic-card .card-note-val {\n    font-family: var(--font-display);\n    font-weight: 400;\n    font-size: 0.88rem;\n    color: var(--gray-dark);\n    font-style: italic;\n    line-height: 1.45;\n  }\n\n  @media (max-width: 500px) {\n    .classics-grid { grid-template-columns: 1fr; }\n    .classic-card { padding: 28px 24px; }\n  }\n\n  \/* ==================== USAGE ==================== *\/\n  .usage-section {\n    padding: 80px 24px;\n    background: var(--off-white);\n    position: relative;\n  }\n\n  .usage-section::before {\n    content: '';\n    position: absolute;\n    top: 0; left: 0; right: 0;\n    height: 1px;\n    background: linear-gradient(to right, transparent, var(--pearl), transparent);\n  }\n\n  .usage-inner { max-width: 640px; margin: 0 auto; text-align: center; }\n\n  .usage-inner h3 {\n    font-family: var(--font-display);\n    font-weight: 400;\n    font-size: 1.6rem;\n    color: var(--black);\n    margin-bottom: 24px;\n  }\n\n  .usage-tips {\n    display: flex;\n    gap: 40px;\n    justify-content: center;\n    margin-top: 40px;\n    flex-wrap: wrap;\n  }\n\n  .usage-tip { text-align: center; max-width: 200px; }\n  .usage-tip .tip-icon { font-size: 1.4rem; margin-bottom: 12px; color: var(--silver); }\n\n  .usage-tip .tip-text {\n    font-family: var(--font-body);\n    font-weight: 300;\n    font-size: 0.82rem;\n    color: var(--gray);\n    line-height: 1.6;\n  }\n\n  .usage-tip .tip-text strong { color: var(--black); }\n\n  \/* ==================== FOOTER ==================== *\/\n  .footer {\n    padding: 50px 24px;\n    text-align: center;\n    background: var(--black);\n  }\n\n  .footer-brand {\n    font-family: var(--font-display);\n    font-weight: 300;\n    font-size: 1.1rem;\n    color: var(--gray-mid);\n    letter-spacing: 0.05em;\n  }\n\n  .footer-brand strong { color: var(--white); font-weight: 500; }\n\n  .footer-sub {\n    font-family: var(--font-body);\n    font-size: 0.7rem;\n    color: var(--gray-dark);\n    margin-top: 10px;\n    letter-spacing: 0.1em;\n  }\n\n  \/* ==================== ANIMATIONS ==================== *\/\n  @keyframes fadeUp {\n    from { opacity: 0; transform: translateY(24px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\n  @keyframes fadeDown {\n    from { opacity: 0; transform: translateY(-16px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\n  .reveal {\n    opacity: 0;\n    transform: translateY(30px);\n    transition: opacity 0.7s ease, transform 0.7s ease;\n  }\n\n  .reveal.visible { opacity: 1; transform: translateY(0); }\n\u003c\/style\u003e  \u003c!-- HERO --\u003e  \u003csection class=\"hero\"\u003e  \u003ch2 class=\"hero-badge\"\u003eSpecial One Italia — Perfume Line\u003c\/h2\u003e  \u003ch2 class=\"hero-title\"\u003ePerfumes \u003cem\u003eExceptional\u003c\/em\u003e\u003cbr\u003efor Animals\u003c\/h2\u003e  \u003cp class=\"hero-subtitle\"\u003eA collection of premium fragrances, created in Grasse, to offer your pets a unique olfactory signature. The luxurious touch that beautifully completes your grooming routine.\u003c\/p\u003e  \u003cdiv class=\"hero-line\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"hero-scroll\"\u003eDiscover the collection ↓\u003c\/div\u003e  \u003c\/section\u003e  \u003c!-- OLFACTORY PYRAMID --\u003e  \u003csection class=\"pyramide-section\"\u003e  \u003cdiv class=\"section-header reveal\"\u003e  \u003cdiv class=\"section-label\"\u003eUnderstanding perfumes\u003c\/div\u003e  \u003ch2 class=\"section-title\"\u003eThe Olfactory Pyramid\u003c\/h2\u003e  \u003c\/div\u003e  \u003cdiv class=\"pyramide-grid\"\u003e  \u003cdiv class=\"pyramide-card reveal\"\u003e  \u003cdiv class=\"pyramide-icon\"\u003e△\u003c\/div\u003e  \u003ch3\u003eTop Note\u003c\/h3\u003e  \u003cdiv class=\"subtitle\"\u003eThe flight\u003c\/div\u003e  \u003cp\u003eEphemeral, volatile and light, that's the first impression. Fresh and lively, it immediately captures the senses.\u003c\/p\u003e  \u003c\/div\u003e  \u003cdiv class=\"pyramide-card reveal\"\u003e  \u003cdiv class=\"pyramide-icon\"\u003e◇\u003c\/div\u003e  \u003ch3\u003eHeart Note\u003c\/h3\u003e  \u003cdiv class=\"subtitle\"\u003eThe character\u003c\/div\u003e  \u003cp\u003eLess intense but more tenacious, it comes alive when the top note fades. It is the soul of the fragrance.\u003c\/p\u003e  \u003c\/div\u003e  \u003cdiv class=\"pyramide-card reveal\"\u003e  \u003cdiv class=\"pyramide-icon\"\u003e▽\u003c\/div\u003e  \u003ch3\u003eBackground Note\u003c\/h3\u003e  \u003cdiv class=\"subtitle\"\u003eThe wake\u003c\/div\u003e  \u003cp\u003eNot very intense but very persistent, it creates attachment and loyalty. It is the memory of the perfume.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/section\u003e  \u003c!-- FRAGRANCES --\u003e  \u003csection id=\"collection\" class=\"fragrances-section\"\u003e  \u003cdiv class=\"section-header reveal\"\u003e  \u003cdiv class=\"section-label\"\u003eNew creations\u003c\/div\u003e  \u003ch2 class=\"section-title\"\u003eSignature Fragrances\u003c\/h2\u003e  \u003c\/div\u003e  \u003cdiv class=\"featured-fragrances\"\u003e  \u003c!-- CIURI CIURI --\u003e  \u003cdiv class=\"featured-card reveal\"\u003e  \u003cdiv class=\"featured-visual\"\u003e  \u003cspan class=\"fragrance-initial\"\u003eCC\u003c\/span\u003e  \u003cdiv class=\"fragrance-name-display\"\u003eCiuri Ciuri\u003cem\u003eFlowery \u0026amp; Nostalgic\u003c\/em\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"featured-content\"\u003e  \u003cdiv class=\"featured-tag\"\u003eNew fragrance — 100 ml\u003c\/div\u003e  \u003ch3\u003eAn emotional journey through a flower garden\u003c\/h3\u003e  \u003cp class=\"desc\"\u003eInspired by the famous Italian song, Ciuri Ciuri transports you to a garden in bloom all year round. This fresh, floral fragrance evokes nostalgia for moments past, bringing a breath of freshness and joy. Each spray is a fragrant embrace that transforms your companion into a messenger of pure emotion.\u003c\/p\u003e  \u003cdiv class=\"notes-row\"\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHead\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eViolet, Orange Blossom\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHeart\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eRose, Geranium\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eBottom\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eJasmine, White Musk\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- THE BELL --\u003e  \u003cdiv class=\"featured-card reveal\"\u003e  \u003cdiv class=\"featured-visual\"\u003e  \u003cspan class=\"fragrance-initial\"\u003eLB\u003c\/span\u003e  \u003cdiv class=\"fragrance-name-display\"\u003eThe Bell\u003cem\u003eFruity \u0026amp; Elegant\u003c\/em\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"featured-content\"\u003e  \u003cdiv class=\"featured-tag\"\u003eNew fragrance — 100 ml\u003c\/div\u003e  \u003ch3\u003eFruity sweetness \u0026amp; woody sophistication\u003c\/h3\u003e  \u003cp class=\"desc\"\u003eBell is a sweet and fruity fragrance, enriched with floral and woody notes. Ideal for small dogs with a gentle and affectionate nature, it gives their coat an elegant and refined feel, perfect for special occasions and social outings.\u003c\/p\u003e  \u003cdiv class=\"notes-row\"\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHead\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eOrange, Mandarin, Bergamot, Lemon\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHeart\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eJasmine, Lily of the Valley, Ylang-Ylang, Lavender, Peach, Violet\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eBottom\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eCedar, Sandalwood, White Musk\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- KIKINCI --\u003e  \u003cdiv class=\"featured-card reveal\"\u003e  \u003cdiv class=\"featured-visual\"\u003e  \u003cspan class=\"fragrance-initial\"\u003eKi\u003c\/span\u003e  \u003cdiv class=\"fragrance-name-display\"\u003eKikinci\u003cem\u003eCosts \u0026amp; Spicy\u003c\/em\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"featured-content\"\u003e  \u003cdiv class=\"featured-tag\"\u003eNew fragrance — 100 ml\u003c\/div\u003e  \u003ch3\u003ePositive energy \u0026amp; spirit of adventure\u003c\/h3\u003e  \u003cp class=\"desc\"\u003eKikinci is an explosion of freshness and vitality, ideal for exuberant and energetic dogs. Its fresh and spicy fragrance evokes travel, outdoor play, and movement. Just one spray and it will accompany your companion on every adventure with a burst of positive energy.\u003c\/p\u003e  \u003cdiv class=\"notes-row\"\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHead\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eLemon, Orange, Bergamot, Blackcurrant\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHeart\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eSandalwood, Peach Blossoms, Zagara, Lily of the Valley\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eBottom\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eWhite Musk, Vanilla\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BABY PAW --\u003e  \u003cdiv class=\"featured-card reveal\"\u003e  \u003cdiv class=\"featured-visual\"\u003e  \u003cspan class=\"fragrance-initial\"\u003eBP\u003c\/span\u003e  \u003cdiv class=\"fragrance-name-display\"\u003eBaby Paw\u003cem\u003eSoft \u0026amp; Gourmand\u003c\/em\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"featured-content\"\u003e  \u003cdiv class=\"featured-tag\"\u003eNew fragrance — 100 ml\u003c\/div\u003e  \u003ch3\u003eThe tenderness of a childhood memory\u003c\/h3\u003e  \u003cp class=\"desc\"\u003eBaby Paw is the link between fragrance and emotion. Like the smell of freshly baked cookies that made you run to the kitchen, this sweet and delicious fragrance brings back the carefree days of childhood. A tender puppy becomes a little companion for life, someone you shower with love… and in an instant, you're a child again.\u003c\/p\u003e  \u003cdiv class=\"notes-row\"\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHead\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eLemon, Orange, Strawberry, Raspberry\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eHeart\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eWhite Flowers\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"note-block\"\u003e  \u003cdiv class=\"note-label\"\u003eBottom\u003c\/div\u003e  \u003cdiv class=\"note-value\"\u003eVanilla\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- CLASSICS --\u003e  \u003cdiv class=\"classics-header reveal\"\u003e  \u003cdiv class=\"section-label\"\u003eClassic Collection — Aqua Line\u003c\/div\u003e  \u003ch2 class=\"section-title\"\u003eOur Iconic Fragrances\u003c\/h2\u003e  \u003c\/div\u003e  \u003cdiv class=\"classics-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e  \u003cdiv class=\"classics-grid\"\u003e  \u003cdiv class=\"classic-card reveal\"\u003e  \u003cdiv class=\"card-name\"\u003eBrave Water\u003c\/div\u003e  \u003cdiv class=\"card-theme\"\u003eSpicy \u0026amp; Amber\u003c\/div\u003e  \u003cdiv class=\"card-notes\"\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHead\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eFlorence Iris, Texas Cedar\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHeart\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eIndian pepper, Chinese eucalyptus, Indonesian nutmeg\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eBottom\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eAustralian sandalwood, woody notes \u0026amp; amber\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"classic-card reveal\"\u003e  \u003cdiv class=\"card-name\"\u003eEnergy Water\u003c\/div\u003e  \u003cdiv class=\"card-theme\"\u003eCosts \u0026amp; Leather\u003c\/div\u003e  \u003cdiv class=\"card-notes\"\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHead\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eFrench violet, sandalwood, Texas cedar\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHeart\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eSicilian lemon, French lavender\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eBottom\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eAmber, Leather, Musk\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"classic-card reveal\"\u003e  \u003cdiv class=\"card-name\"\u003eSpring Water\u003c\/div\u003e  \u003cdiv class=\"card-theme\"\u003eFlowery \u0026amp; Wooded\u003c\/div\u003e  \u003cdiv class=\"card-notes\"\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHead\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eTurkish rose, Indian hyacinth\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHeart\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eCoconut, Comoros Ylang-Ylang\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eBottom\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eVanilla from Madagascar, Sandalwood from India\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"classic-card reveal\"\u003e  \u003cdiv class=\"card-name\"\u003eMoon Water\u003c\/div\u003e  \u003cdiv class=\"card-theme\"\u003eSlender \u0026amp; Elegant\u003c\/div\u003e  \u003cdiv class=\"card-notes\"\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHead\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eTurkish rose, Egyptian geranium, jasmine\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHeart\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eWatermelon, Ylang-Ylang, Magnolia\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eBottom\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eWhite Musk, Heliotrope\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"classic-card reveal\"\u003e  \u003cdiv class=\"card-name\"\u003eRock Water\u003c\/div\u003e  \u003cdiv class=\"card-theme\"\u003eRelaxed \u0026amp; Light\u003c\/div\u003e  \u003cdiv class=\"card-notes\"\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHead\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eTuberose, Solar Accord\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eHeart\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eJasmine, Orange Blossom\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"card-note-row\"\u003e  \u003cspan class=\"card-note-label\"\u003eBottom\u003c\/span\u003e  \u003cspan class=\"card-note-val\"\u003eAmber, Oriental Wood\u003c\/span\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/section\u003e  \u003c!-- USAGE INSTRUCTIONS --\u003e  \u003csection class=\"usage-section\"\u003e  \u003cdiv class=\"usage-inner reveal\"\u003e  \u003cdiv style=\"margin-bottom: 20px;\" class=\"section-label\"\u003eInstructions for use\u003c\/div\u003e  \u003ch3\u003eUsage Tips\u003c\/h3\u003e  \u003cdiv class=\"usage-tips\"\u003e  \u003cdiv class=\"usage-tip\"\u003e  \u003cdiv class=\"tip-icon\"\u003e◎\u003c\/div\u003e  \u003cdiv class=\"tip-text\"\u003eSpray at \u003cstrong\u003e20-40 cm\u003c\/strong\u003e of the animal, on the hair of the tail and the back of the back\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"usage-tip\"\u003e  \u003cdiv class=\"tip-icon\"\u003e✦\u003c\/div\u003e  \u003cdiv class=\"tip-text\"\u003eAvoid spraying on the face and mucous membranes. \u003cstrong\u003eTwo sprays\u003c\/strong\u003e are enough.\u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv class=\"usage-tip\"\u003e  \u003cdiv class=\"tip-icon\"\u003e♦\u003c\/div\u003e  \u003cdiv class=\"tip-text\"\u003eContains alcohol, flammable product. Keep out of reach of children.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/section\u003e  \u003c!-- FOOTER --\u003e\u003cfooter class=\"footer\"\u003e  \u003cdiv class=\"footer-brand\"\u003e  \u003cstrong\u003eSpecial One\u003c\/strong\u003e — Perfume Line\u003c\/div\u003e  \u003cdiv class=\"footer-sub\"\u003eCreated in Grasse · Distributed by PetDesign.fr\u003c\/div\u003e  \u003c\/footer\u003e  \u003cp\u003e  \u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"Spring Water","offer_id":37819393310899,"sku":"-107","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"Brave Water","offer_id":37819393343667,"sku":"-126","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"Energy Water","offer_id":37819393376435,"sku":"-104","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"Moon Water","offer_id":37819393409203,"sku":"-101","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"Rock Water","offer_id":37819393441971,"sku":"-102","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"The Bell era","offer_id":37819393474739,"sku":"-105","price":50.2,"currency_code":"EUR","in_stock":true},{"title":"Kikinsci","offer_id":37819393507507,"sku":"-108","price":50.2,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/179.jpg?v=1614081492"},{"product_id":"veste-toilettage-special-one","title":"Grooming Jacket Special One \"Marina\"","description":"\u003caddress\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c\/address\u003e \u003cbr\u003e\n\u003cp\u003e Professional clothing, made in Italy, for operators in the grooming and pet shops. \u003c\/p\u003e\n\u003cp\u003e The collections are made of high quality materials, breathable, irresistible, semi-transparent, stain resistant. \u003c\/p\u003e\n\u003cp\u003e The fabric is certified phthalate free. \u003c\/p\u003e\n\u003cp\u003e Machine washable at 30 ° in the washing machine, they do not need to be wrung out, the technical fabric dries quickly and does not require ironing after cleaning. \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e Choose safe, fashionable and comfortable work clothes ... for you Special One only! \u003c\/p\u003e","brand":"autre","offers":[{"title":"Taille XS","offer_id":37819393966259,"sku":"(440-Taille XS)","price":117.6,"currency_code":"EUR","in_stock":true},{"title":"Taille S","offer_id":37819393835187,"sku":"(440-Taille S)","price":117.6,"currency_code":"EUR","in_stock":true},{"title":"Taille M","offer_id":37819393867955,"sku":"(440-Taille M)","price":117.6,"currency_code":"EUR","in_stock":true},{"title":"Taille L","offer_id":37819393900723,"sku":"(440-Taille L)","price":117.6,"currency_code":"EUR","in_stock":true},{"title":"Taille XL","offer_id":37819393933491,"sku":"(440-Taille XL)","price":117.6,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/Photoroom_20251223_172837-600x600.png?v=1772708971"},{"product_id":"pompe-pour-bidon-5-10-l","title":"Pump for Special One 5 \u0026 10 L Bottle","description":"\u003cp\u003ePump for gallon: fits 5 or 10L containers. Ideal for controlling consumption and making dilutions more reliable.\u003cbr\u003e\u003cbr\u003eMake the dosage of your Special One cosmetics more reliable by using this pump for 5 and 10 L containers.\u003cbr\u003e\u003c\/p\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003eYou control your consumption and dilution, and the instructions you give to your employees will be disconcertingly simple:\u003c\/div\u003e\n\u003cdiv\u003e1 full pump = 30mL of product.\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003eTo prepare 1 liter of finished product, press this pump twice, and you're done, all you have to do is top up with water.\u003c\/div\u003e\n\u003cdiv\u003e(1\/20 dilution for Bio Energy or shampoos)\u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"Bidons 5\u002610L","offer_id":37819397669043,"sku":"WAC-PO001 (92)","price":8.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Bonformatsiteinternet3-10.png?v=1632834226"},{"product_id":"special-rinse-shampoing-sans-rincage","title":"Special Rinse, \"leave-in\" shampoo","description":"\u003cp\u003e \u003cmeta charset = \"UTF-8\"\u003e \u003cspan lang=\"it\" xml:lang=\"it\"\u003e Shampoo \u003c\/span\u003e \u003cspan\u003e WITHOUT RINSE, ideal for removing traces and other organic soiling. Odors also disappear instantly. \u003c\/span\u003e \u003c\/p\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e \u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e\n\u003ctable data-mce-fragment=\"1\" cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody data-mce-fragment = \"1\"\u003e\n\u003ctr data-mce-fragment = \"1\"\u003e\n\u003ctd data-mce-fragment=\"1\" bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv data-mce-fragment=\"1\" style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong data-mce-fragment=\"1\"\u003e \u003cspan data-mce-fragment=\"1\" style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Who is this product made for? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e Everyone will find a real interest in it! \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Groomers \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Breeders \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Individuals \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Competitors \u003cspan data-mce-fragment=\"1\"\u003e ☑️ \u003c\/span\u003e Handlers \u003c\/div\u003e\n\n\u003cdiv\u003e \u003cspan\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e What benefits can I expect? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✅ Eliminate tasks \u003c\/div\u003e\n\u003cdiv\u003e ✅ Eliminate unpleasant organic odors \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e ✅ Its blue color is used to revive white coats \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Composition: focus on naturalness! \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e The formulation of Special Rinse has been enriched with a gentle cleansing and moisturizing composition to complement the coat with important functional elements. Its action accentuates the aesthetic beauty and the shine of the coat. It also contains an important blue pigment that prevents yellowing of white coats. Pleasantly scented. \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cbr\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Examples and suggested uses \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e \u003cspan style=\"color: #ff2a00;\"\u003e \u003cspan style=\"color: #ff2a00;\"\u003e \u003cstrong\u003e \u003cem\u003e \u003c\/em\u003e \u003c\/strong\u003e \u003c\/span\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cmeta charset = \"UTF-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003e \u003cspan data-mce-fragment=\"1\"\u003e ✨Applies to soiled, dry or wet hair. \u003c\/span\u003e \u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e \u003cspan data-mce-fragment=\"1\"\u003e ✨Leave for a few moments, dry or leave in the open. \u003c\/span\u003e \u003c\/p\u003e\n\u003cdiv style=\"text-align: left;\"\u003e ✨ We put it in the second shampoo, pure on the area we want to whiten in particular. \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan style=\"text-decoration: underline;\"\u003e \u003cbr\u003e \u003cstrong\u003e \u003c\/strong\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cem\u003e \u003c\/em\u003e \u003c\/div\u003e\n\u003cdiv\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Recommended associations \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cmeta charset = \"UTF-8\"\u003e \u003cspan\u003e Can also be mixed with all the shampoos of the Special One range to revive white colors. \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e \u003c\/span\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003cspan\u003e We advise you to use it alone outside the bath to avoid soiling, to avoid organic odors \u003c\/span\u003e \u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003cbr\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Our commitments \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Cosmetics biodegradable at + 90% \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Paraben-free, Silicone-free \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Not tested on animals. \u003c\/p\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e Recyclable PEHD02 packaging \u003c\/p\u003e\n\u003ctable border=\"0\" cellpadding=\"1\" cellspacing=\"1\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e \u003cstrong\u003e \u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003e Choice by race? \u003c\/span\u003e \u003c\/strong\u003e \u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003cbr\u003e \u003c\/p\u003e\n\u003cdiv\u003e 🎈 Some examples of races that Special Rinse makes people happy: \u003cbr data-mce-fragment=\"1\"\u003e\n\u003cdiv data-mce-fragment=\"1\"\u003e \u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e\n\u003cdiv\u003e ✔️ All Cats \u003c\/div\u003e\n\u003cdiv\u003e\n\u003cmeta charset = \"UTF-8\"\u003e \u003cspan\u003e ✔️ All Dogs \u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e ✔️ Ideal to have in your grooming case for competitions or exhibitions (can save you at the \u003c\/span\u003e last minute in the event of an accident) \u003c\/div\u003e\n\u003cdiv\u003e ✔️ Perfect for Chow Chow \u003c\/div\u003e\n\u003cdiv\u003e ✔️ Perfect for a Newfoundland \u003c\/div\u003e\n\u003cdiv\u003e ✔️ Ideal for your Saint Bernard \u003c\/div\u003e\n\u003cdiv\u003e \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":37819397701811,"sku":"-143","price":44.0,"currency_code":"EUR","in_stock":true},{"title":"250 mL","offer_id":37819397734579,"sku":"WAQ-SPR250 (138)","price":19.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-25.png?v=1651837125"},{"product_id":"collier-anti-casse-de-poil-tissu-rembourre-protecteur","title":"Anti Hair Loss Collar - Protective padded fabric","description":"\u003cp\u003e Owners of long-haired dogs unfortunately know the problem all too well: all collars, whether nylon, leather or metal, break the coat. Finally the miracle solution to keep the coat on your pet's neck intact! \u003c\/p\u003e \u003cbr\u003e \u003ch2 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#923a6c;\"\u003e \u003cem\u003e Hair Proection Collar, Anti Breakage \u003c\/em\u003e \u003c\/span\u003e \u003c\/h2\u003e \u003ch2 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#923a6c;\"\u003e ABBA by Pudelshop \u003c\/span\u003e \u003c\/h2\u003e \u003ch3 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#923a6c;\"\u003e The collar that saves your dog's hair, without ever damaging it \u003c\/span\u003e \u003c\/h3\u003e \u003cdiv style=\"height:40px;\"\u003e \u003c\/div\u003e \u003ctable width=\"316\" style=\"height:45px;margin-left:auto;margin-right:auto;\"\u003e \u003ctbody\u003e \u003ctr bgcolor = \"# 923a6c\"\u003e \u003ctd\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch3 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e Description \u003c\/span\u003e \u003c\/h3\u003e\n\u003ch3\u003e \u003c\/h3\u003e\n\u003c\/td\u003e \u003c\/tr\u003e \u003c\/tbody\u003e \u003c\/table\u003e \u003cp style=\"text-align:justify;\"\u003e \u003c\/p\u003e \u003cp\u003e \u003cstrong\u003e \u003cbr\u003e Thanks to this collar, your dog's hair is perfectly protected. \u003c\/strong\u003e Because the smooth and soft surface of the collar allows for an optimal and fluid movement, without friction, it thus prevents pressure and breakage of the neck coat. The necklaces are easy to put on and take off, thanks to the chain system. \u003c\/p\u003e \u003cp\u003e \u003cstrong\u003e \u003cbr\u003e Many veterinarians recommend these collars postoperatively, or when the dog has chronic pain in the neck, sometimes only due to the felting of the coat. \u003c\/strong\u003e The principle operation is similar to that of a choke with the stopper, but without ever being aggressive or injurious to the dog, because the wadding of the mattress provides a protective pad for the animal window. \u003c\/p\u003e \u003cp\u003e \u003cstrong\u003e \u003cbr\u003e Handcrafted, and patented for their conception and design, these high quality necklaces are in quilted velvet and reinforced with wadding fibers. \u003c\/strong\u003e \u003c\/p\u003e \u003cp\u003e \u003cbr\u003e Several colors and sizes possible. \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp style=\"text-align:justify;\"\u003e \u003c\/p\u003e \u003cdiv\u003e \u003c\/div\u003e \u003ctable\u003e \u003ctbody\u003e \u003ctr\u003e\n\u003ctd\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_COUP_DE_COEUR.png?v=1608720534\" alt=\"\" width=\"90%\" height=\"90%\"\u003e \u003c\/td\u003e\n\u003ctd\u003e\n\u003ch2\u003e \u003cstrong\u003e \u003cspan\u003e What we liked: \u003c\/span\u003e \u003c\/strong\u003e \u003c\/h2\u003e\n\u003ch6\u003e ☑ Resistance \u003c\/h6\u003e\n\u003ch6\u003e ☑ Efficiency \u003c\/h6\u003e\n\u003ch6\u003e ☑ Lightness \u003c\/h6\u003e\n\u003ch6\u003e ☑ Design and colors \u003c\/h6\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e \u003c\/tbody\u003e \u003c\/table\u003e \u003cp\u003e \u003c\/p\u003e \u003cdiv style=\"height:40px;\"\u003e \u003c\/div\u003e \u003ctable width=\"316\" style=\"margin-left:auto;margin-right:auto;\"\u003e \u003ctbody\u003e \u003ctr bgcolor = \"# 923a6c\"\u003e \u003ctd\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch3 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e Choosing the right size \u003c\/span\u003e \u003c\/h3\u003e\n\u003ch3\u003e \u003c\/h3\u003e\n\u003c\/td\u003e \u003c\/tr\u003e \u003c\/tbody\u003e \u003c\/table\u003e \u003cp\u003e \u003cspan\u003e \u003cbr\u003e In order to reliably choose the size that corresponds to your animal, you must \u003cstrong\u003e absolutely measure its neck circumference ( or at least measure his current collar which is set to his size), \u003c\/strong\u003e at the exact place where you position the collar, but also make sure that this diameter allows the collar to be threaded through the head (no system of 'opening-closing by clip, the collar is slipped on by passing the head in. Vigilance with the morphologies with the large skull). \u003cbr\u003e \u003c\/span\u003e \u003c\/p\u003e \u003cp\u003e \u003cspan\u003e The examples of breeds are not presented as an indication, I NEVER rely solely on this indication, because the morphologies are very variable within a race. \u003c\/span\u003e \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cdiv style=\"height:20px;\"\u003e \u003c\/div\u003e \u003ctable rules=\"rows\" border=\"4\" style=\"margin-left:auto;margin-right:auto;\"\u003e \u003ctbody\u003e\n\u003ctr bgcolor = \"# b6b5b5\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e \u003cstrong\u003e Neck circumference (perimeter) \u003c\/strong\u003e \u003c\/span\u003e \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e \u003cstrong\u003e Supplier reference \u003c\/strong\u003e \u003c\/span\u003e \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e \u003cstrong\u003e Examples of breeds \u003c\/strong\u003e \u003c\/span\u003e \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 30 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [130] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Toy poodle, Yorkshire \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 35 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [135] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Miniature Poodle, Bichons \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 40 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [140] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Shih Tzu, Westie \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 45 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [145] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Medium Poodle, Cockers \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 50 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [150] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Setter \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 55 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [155] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Large Poodle \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 60 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [160] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Afghan, Collie \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style = \"text-align: center;\"\u003e\n\u003ctd style=\"text-align:center;\"\u003e 65 cm \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e [165] \u003c\/td\u003e\n\u003ctd style=\"text-align:center;\"\u003e Bobtail \u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e \u003c\/table\u003e","brand":"Endemik Sas","offers":[{"title":"130 - Blanc","offer_id":37819400716467,"sku":"2964","price":22.1,"currency_code":"EUR","in_stock":false},{"title":"130 - Bleu","offer_id":37819400749235,"sku":"2965","price":22.1,"currency_code":"EUR","in_stock":false},{"title":"135 - Orange","offer_id":37819400782003,"sku":"2966","price":24.1,"currency_code":"EUR","in_stock":false},{"title":"135 - Rose","offer_id":37819400814771,"sku":"2967","price":24.1,"currency_code":"EUR","in_stock":false},{"title":"145 - Rose","offer_id":37819400847539,"sku":"2968","price":26.0,"currency_code":"EUR","in_stock":false},{"title":"150 - Noir","offer_id":37819400880307,"sku":"2969","price":29.0,"currency_code":"EUR","in_stock":false},{"title":"150 - Rose","offer_id":37819400913075,"sku":"2970","price":29.0,"currency_code":"EUR","in_stock":false},{"title":"155 - Rouge","offer_id":37819400945843,"sku":"2971","price":31.1,"currency_code":"EUR","in_stock":false},{"title":"155 - Blanc","offer_id":37819400978611,"sku":"2972","price":31.1,"currency_code":"EUR","in_stock":false},{"title":"160 - Noir","offer_id":37819401011379,"sku":"2973","price":33.1,"currency_code":"EUR","in_stock":false},{"title":"160 - Rose","offer_id":37819401044147,"sku":"2974","price":33.1,"currency_code":"EUR","in_stock":false},{"title":"160 - Blanc","offer_id":37819401076915,"sku":"2975","price":33.1,"currency_code":"EUR","in_stock":false},{"title":"160 - Rouge","offer_id":37819401109683,"sku":"2976","price":33.1,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/231.jpg?v=1612799447"},{"product_id":"pulseur-black-2-moteurs-artero","title":"ARTERO BLACK 2M (flow rate 100 L\/s)","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\u003c\/p\u003e  \u003c!-- FAQ Schema.org – Google Rich Snippet --\u003e  \u003cp\u003e  \u003c\/p\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003eL'\u003cstrong\u003eARTERO BLACK 2 MOTORS\u003c\/strong\u003e is a \u003cstrong\u003eprofessional blower-dryer\u003c\/strong\u003e Designed for salons seeking performance, robustness, and ease of use. Its \u003cstrong\u003etwo synchronized 3000W motors\u003c\/strong\u003e deliver an airflow of \u003cstrong\u003e320 CFM\u003c\/strong\u003e — one of the highest in the catalogue — with precise flow and temperature regulation up to 52 °C. Compatible with wall mount and mobile stand. \u003cstrong\u003e72 dB\u003c\/strong\u003e For a tool of this power — excellent value for money in professional grooming equipment.\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 2: ADVANTAGES --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eBenefits \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 20px;\"\u003eDesigned for intensive daily use, the Artero Black combines the power of two synchronized motors with careful ergonomics. Its thermal stability, low noise level for its class, and washable filters make it a lasting investment for any professional salon.\u003c\/p\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003e320 CFM airflow\u003c\/strong\u003e — one of the highest flow rates available, to tackle even the thickest or densest coats.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePrecise adjustment via dial:\u003c\/strong\u003e Adjust flow and temperature continuously according to breed, coat type or season.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003e72 dB\u003c\/strong\u003e — controlled noise level for a 3000W device.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRemovable and washable filters\u003c\/strong\u003e — simple maintenance, maximum engine lifespan.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eWall mount and mobile stand compatible\u003c\/strong\u003e (accessories sold separately) — integrates into any living room layout.\u003c\/li\u003e  \u003cli\u003e✅  \u003cstrong\u003eCompact structure (6.7 kg)\u003c\/strong\u003e and durable materials — designed for heavy-duty use in a professional salon.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 3: USAGE --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eUse\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eBoth motors activate together via a single switch — no individual motor adjustments are required; the airflow is consistent from the moment it's switched on. The dial then allows for precise adjustment of the airflow power and heat output, depending on the animal and the stage of the drying process.\u003c\/p\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThe extendable hose (70 cm to 2 m) offers great freedom of movement around the table. The three included nozzles allow for targeted work depending on the area or volume required.\u003c\/p\u003e  \u003cdiv style=\"background: #f0f7ff; border-left: 3px solid #4a90d9; padding: 12px 15px; font-size: 13px;\"\u003e💡  \u003cstrong\u003eInterview :\u003c\/strong\u003e Remove and clean the removable filters regularly to maintain performance. Also remember to replace the motor brushes regularly.\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: TECHNICAL INFORMATION --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eTechnical Information\u003c\/h2\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; width: 40%;\"\u003e\u003cstrong\u003eKind\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eProfessional blower\/dryer with 2 synchronized motors\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eTotal power\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e3000 W\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eAirflow\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e320 CFM maximum\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eMaximum temperature\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e52 °C\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eSetting\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eDial for adjusting flow rate and temperature\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eNoise level\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e72 dB\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eExpandable hose\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e70 cm to 2 m\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eNozzles included\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e3 interchangeable nozzles\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eFilters\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eRemovable and washable\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eDimensions\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eH 26 cm × W 34 cm × L 38 cm\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eWeight\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e6.7 kg\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9;\"\u003e\u003cstrong\u003eOptional accessories\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9;\"\u003eWall mount (ref. A576) · Mobile stand with 4 wheels + rigid arm (ref.A587)\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 5: RANGE COMPARISON --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eChoosing your blower: flow rate \u0026amp; noise levels compared\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003eChoosing a blower is not limited to its power: the \u003cstrong\u003eair flow rate in L\/s\u003c\/strong\u003e is the key indicator for optimal efficiency. Noise level also deserves attention — a few decibels less can make a real difference to everyday listening comfort.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600;\"\u003eReference\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eNoise level\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eAirflow\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eProduct\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eATLAS\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e70 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e66 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/pulseur-sechoir-master-blow-nouvelle-generation\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eVOLCANO\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e74 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e118 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/pulseur-sechoir-volcano-options-murale-sur-pied\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eFORCETEK\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e82 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e146 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/forcetek-pulseur-sechoir-grosse-puissance-gros-chiens\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eMASTER BLOW\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e70 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e91 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/masterblow-pulseur-sechoir\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e2-FORCE\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e85 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e132 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/pulseur-sechoir-2-force-debit-132-l-s\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eSUPAJET\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e69 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e75 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/supajet-sechoir-toilettage\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eDRY MASTER\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e69 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e85 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/dry-master-sechoir-ultra-performant\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9;\"\u003eTORNADO\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9; text-align: center;\"\u003e78 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9; text-align: center;\"\u003e128 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/tornado-pulseur-sechoir\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv style=\"margin-top: 15px; padding: 14px 16px; background: #f9f9f9; border: 1px solid #e5e5e5; font-size: 13px;\"\u003e  \u003cstrong\u003e📌 Note:\u003c\/strong\u003e The Artero Black is not included in this table because it is an Artero brand (outside the Ibáñez range). With \u003cstrong\u003e320 CFM\u003c\/strong\u003e,  It ranks among the highest speeds available on petdesign.fr.\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 6: FAQ --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eFrequently Asked Questions\u003c\/h2\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/FAQPage\" itemscope=\"\"\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eCan the two motors be used independently?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eNo, both motors operate simultaneously via a single switch to ensure a consistent and optimal airflow.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eIs the Artero Black suitable for sensitive or small dogs?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eYes, thanks to the flow and temperature adjustment dial, it is easy to adapt the power according to the breed, coat type or sensitivity of the animal.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eWhat kind of maintenance is required?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eRegular cleaning of the removable and washable filters is sufficient to maintain performance. Remember to also regularly replace the motor brushes.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eIs the Artero Black compatible with a wall mount or a mobile stand?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eYes, it can be mounted on a wall bracket (ref. A576) or installed on a 4-wheel mobile stand with rigid arm (ref. A587), both sold separately.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eWhat is the noise level of the Artero Black 2 Motors?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003e72 dB maximum — an acceptable range for everyday professional use at this power (3000 W, 320 CFM).\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 7: 5 SIGNS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003e5 signs that might encourage you to choose the Artero Black 2 Motors\u003c\/h2\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ You want a \u003cstrong\u003ehigh-performance blower-dryer (320 CFM, 3000 W)\u003c\/strong\u003e to significantly reduce drying time in the salon.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ You need a \u003cstrong\u003epowerful and adjustable airflow via dial\u003c\/strong\u003e to work on all types of coats, from the finest to the thickest.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ Are you looking for equipment? \u003cstrong\u003ereliable and easy to maintain\u003c\/strong\u003e — washable filters and accessible carbon for long-lasting intensive use.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ You wish \u003cstrong\u003eintegrate the device into your workspace\u003c\/strong\u003e via wall mount (ref. A576) or mobile stand with 4 wheels (ref. A587).\u003c\/li\u003e  \u003cli\u003e✅ You are waiting for a \u003cstrong\u003eexcellent value for money\u003c\/strong\u003e In a recognized brand of professional grooming — 72 dB for 3000 W, that's rare.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003e2 Synchronized Motors | 320 CFM | 52°C | 72 dB | 3000 W | 2 m Hose | Wall Mount \u0026amp; Mobile stand available\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"ARTERO","offers":[{"title":"BLACK 2M pulser","offer_id":56374094004569,"sku":"S267","price":319.0,"currency_code":"EUR","in_stock":true},{"title":"Foot + Tube for BLACK 2M Pulser","offer_id":56374094037337,"sku":"A587","price":201.0,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/572.jpg?v=1616497214"},{"product_id":"pulseur-mural-extrem-2m-artero-technics","title":"ARTERO TECHNICS EXTREME 2M","description":"\u003cp\u003eArtero Technics extreme blower 2m\u003c\/p\u003e  \u003cp\u003e\u003cbr\u003e2 high-pressure turbine ejectors for dog grooming, with independent motor control. \u003cbr data-mce-fragment=\"1\"\u003e\u003cbr data-mce-fragment=\"1\"\u003eAvoid using a towel. \u003cbr data-mce-fragment=\"1\"\u003eReduces drying time. \u003cbr data-mce-fragment=\"1\"\u003eIt adds volume to the coat. \u003cbr data-mce-fragment=\"1\"\u003e\u003cbr data-mce-fragment=\"1\"\u003eFeatures : \u003cbr data-mce-fragment=\"1\"\u003eHose not included. Sturdy, lightweight and very flexible with the nozzle. \u003cbr data-mce-fragment=\"1\"\u003eChoose the pipe according to the meters below in the related products. \u003cbr data-mce-fragment=\"1\"\u003eAirflow: 126 liters\/second (CFM 272). \u003cbr data-mce-fragment=\"1\"\u003eRemovable nozzle to increase air pressure. \u003cbr data-mce-fragment=\"1\"\u003eWeight: 12.5 kg \u003cbr data-mce-fragment=\"1\"\u003eNominal voltage: 230 V. \u003cbr data-mce-fragment=\"1\"\u003eNominal power consumption: 50Hz. \u003cbr data-mce-fragment=\"1\"\u003eNetwork frequency: 2000W. \u003cbr\u003e\u003c\/p\u003e","brand":"ARTERO","offers":[{"title":"Default Title","offer_id":37819424833715,"sku":"S314","price":384.23,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/301.jpg?v=1614082648"},{"product_id":"ciseaux-courbes-toiletteur-microdenture-specifique-par-special-one","title":"Satin 7,5\" - Special One Curved Scissors","description":"\u003ch3\u003eSatin Curved Scissors Special One\u003c\/h3\u003e  \u003ch4\u003eBenefits\u003c\/h4\u003e  \u003cp\u003eThe Satin Special One curved scissors embody the pinnacle of precision and performance for experienced groomers. Forged from the highest quality Japanese Hitachi 440C steel, these scissors are both robust and incredibly sharp. Their satin finish reduces glare during cutting, ensuring optimal control. Featuring an extremely precise blade with single-sided micro-sharpening, these scissors guarantee a clean cut on all coat textures.\u003c\/p\u003e  \u003ch4\u003eUse\u003c\/h4\u003e  \u003cp\u003eThe curved shape of these scissors allows for exceptional precision in shaping cuts and curved lines, ideal for sculpting facial contours or paws. Featuring a tension adjustment screw and an asymmetrical handle with an integrated finger rest, they offer superior comfort and maneuverability for effortless grooming sessions.\u003c\/p\u003e  \u003ch4\u003eTechnical information\u003c\/h4\u003e  \u003cul\u003e  \u003cli\u003eProduct Code: SO-SC7.5\u003c\/li\u003e  \u003cli\u003eEAN: 5902194246989\u003c\/li\u003e  \u003cli\u003eBrand: Special One\u003c\/li\u003e  \u003cli\u003eOrientation: Right-handed\u003c\/li\u003e  \u003cli\u003eScissors type: Curved\u003c\/li\u003e  \u003cli\u003eSize: 7.5 inches\u003c\/li\u003e  \u003cli\u003eWeight (net): 78 g\u003c\/li\u003e  \u003cli\u003eLength without hook: 19 cm\u003c\/li\u003e  \u003cli\u003eLength of the usable part: 9.9 cm\u003c\/li\u003e  \u003c\/ul\u003e  \u003ch4\u003eAdditional Questions and Answers\u003c\/h4\u003e  \u003cp\u003e\u003cstrong\u003e1. What is the quality of the steel used in these scissors?\u003c\/strong\u003e The scissors are made from Japanese Hitachi 440C steel, renowned for its durability and sharpness.\u003c\/p\u003e  \u003cp\u003e\u003cstrong\u003e2. Are these scissors suitable for left-handed people?\u003c\/strong\u003e The scissors are specially designed for right-handed people.\u003c\/p\u003e  \u003cp\u003e\u003cstrong\u003e\u003c\/strong\u003e5 signs that may encourage you to use Satin Special One curved scissors:\u003c\/p\u003e  \u003col\u003e  \u003cli\u003eProfessional-grade scissors are needed for precise grooming.\u003c\/li\u003e  \u003cli\u003eLooking for ergonomic scissors offering optimal comfort.\u003c\/li\u003e  \u003cli\u003eInterest in scissors with a curved blade for sculpting precise cuts.\u003c\/li\u003e  \u003cli\u003eDesire to invest in durable scissors made from high-quality steel.\u003c\/li\u003e  \u003cli\u003eNeed for versatile scissors suitable for various hair textures and cuts.\u003c\/li\u003e  \u003c\/ol\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819439808691,"sku":null,"price":209.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/dsc_6826-edit.jpg?v=1708009250"},{"product_id":"ciseaux-special-one","title":"AQUTUS 7.5 \"Sculpting Scissors by Special One","description":"\u003cp\u003eExceptional grooming scissors: one full blade \/ 1 serrated blade: 24 teeth.\u003c\/p\u003e\n\u003cbr\u003e\n\u003ch1 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\u003cspan style=\"color: #000000;\"\u003e\u003cstrong\u003e\u003cem\u003eSpecial One Professional Sculptor Scissors \u003c\/em\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003c\/h1\u003e\n\u003cdiv style=\"height: 40px;\" data-mce-style=\"height: 40px;\"\u003e\u003cspan style=\"color: #000000;\"\u003e,\u003c\/span\u003e\u003c\/div\u003e\n\u003ch2 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\u003cspan style=\"color: #000000;\" data-mce-style=\"color: #923a6c;\"\u003e\u003cem\u003eExceptional Scissors for Groomers\u003c\/em\u003e\u003c\/span\u003e\u003c\/h2\u003e\n\u003ch2 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\u003cspan style=\"color: #000000;\" data-mce-style=\"color: #923a6c;\"\u003e\u003cem\u003e(dog and cat grooming)\u003c\/em\u003e\u003c\/span\u003e\u003c\/h2\u003e\n\u003ch3 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\u003c\/h3\u003e\n\u003ch3 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\u003c\/h3\u003e\n\u003ccenter\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/logo-special-one-petdesign--1_480x480.jpg?v=1638977825\" alt=\"\" width=\"111\" height=\"78\" data-mce-fragment=\"1\" data-mce-src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/logo-special-one-petdesign--1_480x480.jpg?v=1638977825\"\u003e\u003c\/center\u003e\n\u003cp style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e \u003c\/p\u003e\n\u003cdiv style=\"height: 40px;\" data-mce-style=\"height: 40px;\"\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003ctable cellspacing=\"1\" cellpadding=\"1\" border=\"0\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd bgcolor=\"303030\" pixels=\"\"\u003e\n\u003cdiv style=\"padding-left: 30px;\" data-mce-style=\"padding-left: 30px;\"\u003e\u003cstrong\u003e\u003cspan style=\"color: #ffffff;\" data-mce-style=\"color: #ffffff;\"\u003eDescription\u003c\/span\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: left;\" data-mce-style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"height: 40px;\" data-mce-style=\"height: 40px;\"\u003e\u003cstrong\u003e\u003c\/strong\u003e\u003c\/div\u003e\n\u003cdiv style=\"height: 40px;\" data-mce-style=\"height: 40px;\"\u003e\u003cstrong\u003eVery elegant scissors, handcrafted, very technical, handmade, as you can see in each of its elements.\u003c\/strong\u003e\u003c\/div\u003e\n\u003cp\u003eIts strengths: featherweight and the sharpest finish possible for results of unequaled precision.\u003c\/p\u003e\n\u003ccenter\u003e\u003c\/center\u003e\n\u003cp\u003e\u003cstrong\u003eSlender and light blade, precision work right down to the tip.\u003c\/strong\u003e The models are equipped with a silencer and a tightening screw allowing ultra-fine adjustment of the movement of the blades.\u003ct1 \u003e\n\u003cdiv style=\"height: 20px;\" data-mce-style=\"height: 20px;\"\u003e\u003c\/div\u003e\n\u003cp\u003eAll of our \u003cstrong\u003eSpecial One \u003c\/strong\u003e\u003cspan\u003e\u003cstrong\u003escissors are handcrafted\u003c\/strong\u003e, using techniques that combine modernity and traditional know-how.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cdiv style=\"height: 20px;\" data-mce-style=\"height: 20px;\"\u003e\u003c\/div\u003e\n\u003ccenter\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_10411093_729793530402034_5404194601836358594_n.jpg?v=1608721026\" width=\"300\" height=\"299\" alt=\"10411093_729793530402034_540419460183635\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_1378129_729793547068699_2136039326406895470_n.jpg?v=1608721028\" alt=\"\" width=\"300\" height=\"301\"\u003e\u003ccenter\u003e\u003c\/center\u003e\n\u003c\/center\u003e\n\u003cdiv style=\"height: 20px;\" data-mce-style=\"height: 20px;\"\u003e\u003c\/div\u003e\n\u003cp\u003e\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"autre","offers":[{"title":"Default Title","offer_id":37819439874227,"sku":null,"price":269.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Sanstitre-16_a8b4e0aa-bdd8-4102-98a9-4f8b50b1e013.png?v=1632322674"},{"product_id":"couteaux-a-epiler-extra-fin-par-special-one-stripping-knife","title":"Hair removal knives - by Special One - Stripping Knife","description":"\u003cp\u003eA unique grooming knife: ergonomic, grippy, high-performing, and fatigue-free. The result of over thirty years of experience grooming all breeds of dogs.\u003c\/p\u003e\u003cbr\u003e\u003ch2 style=\"text-align:center;\"\u003e\u003cstrong\u003e\u003cspan style=\"color:#923a6c;\"\u003e\u003cem\u003etweezers\u003c\/em\u003e\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h2\u003e\u003cdiv style=\"height:40px;\"\u003e\u003c\/div\u003e\u003ch2 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#923a6c;\"\u003e\u003cem\u003eTechnical range: the result of 33 years of experience in hair removal\u003c\/em\u003e\u003c\/span\u003e\u003c\/h2\u003e\u003ch2 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#923a6c;\"\u003e\u003cem\u003e(dog and cat grooming)\u003c\/em\u003e\u003c\/span\u003e\u003c\/h2\u003e\u003ch3 style=\"text-align:center;\"\u003e\u003c\/h3\u003e\u003ch3 style=\"text-align:center;\"\u003e\u003c\/h3\u003e\u003ccenter\u003e  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_special_2.png?v=1608721015\" alt=\"\" width=\"192\" height=\"84\"\u003e\u003ccenter\u003e\u003c\/center\u003e  \u003c\/center\u003e\u003cp style=\"text-align:center;\"\u003e\u003c\/p\u003e\u003cdiv style=\"height:40px;\"\u003e\u003c\/div\u003e\u003ctable width=\"316\" style=\"height:45px;margin-left:auto;margin-right:auto;\"\u003e\u003ctbody\u003e\u003ctr bgcolor=\"#923a6c\"\u003e\u003ctd\u003e  \u003cp\u003e\u003c\/p\u003e  \u003ch3 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#ffffff;\"\u003eDescription\u003c\/span\u003e\u003c\/h3\u003e  \u003ch3\u003e\u003c\/h3\u003e  \u003c\/td\u003e\u003c\/tr\u003e\u003c\/tbody\u003e\u003c\/table\u003e\u003cp style=\"text-align:justify;\"\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003eA specific range made of extremely hard metal ensuring high-precision hair removal.\u003c\/p\u003e\u003cp\u003eIntentionally oxidizable, the wear on this metal further improves the knife's grip and therefore the effectiveness of hair removal. Your work is thus made easier and faster, and hair removal immediately becomes child's play!\u003c\/p\u003e\u003cp\u003eBecause this knife has a rather narrow spacing between each tooth, it excels for grooming on coats that are not too thick.\u003c\/p\u003e\u003cp\u003eErgonomic, anti-fatigue, wooden handle.\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"K001 - Extra Fine","offer_id":37819440562355,"sku":"2312","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"K002 - End","offer_id":37819440595123,"sku":"2313","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"K003 - Medium","offer_id":37819440627891,"sku":"2314","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"K004 - Large","offer_id":37819440660659,"sku":"2315","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"K005 - Extra Large","offer_id":37819440693427,"sku":"2316","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"Spider (toothless)","offer_id":37819440726195,"sku":"-248","price":109.0,"currency_code":"EUR","in_stock":true},{"title":"Left-handed","offer_id":37819440758963,"sku":"6643","price":109.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Sanstitre-9_6e5f74cd-275d-4beb-a222-5e29c1e51acf.png?v=1632324320"},{"product_id":"pulseur-sechoir-master-blow-nouvelle-generation","title":"ATLAS Dryer Pulser (flow rate 66L\/s)","description":"\u003cp\u003e\u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta content=\"width=device-width, initial-scale=1.0\" name=\"viewport\"\u003e\u003c\/p\u003e  \u003c!-- FAQ Schema.org – Google Rich Snippet --\u003e  \u003cp\u003e  \u003c\/p\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- BLOCK 1: INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003eTHE \u003cstrong\u003eATLAS PULL-OUT DRYER\u003c\/strong\u003e is a \u003cstrong\u003e2-in-1 professional hair dryer\u003c\/strong\u003e — blower and dryer in one compact and lightweight unitger.Avec only \u003cstrong\u003e69 dB\u003c\/strong\u003e and with a consumption of 1200 to 1800 W, it is the quietest and most economical blower in the range — perfect for everyday use, at home, in exhibitions or in moderately active salons.\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 2: ADVANTAGES --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eBenefits \u0026amp; Results\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 20px;\"\u003eCompact, lightweight, and robust, the Atlas combines the versatility of a 2-in-1 with the comfort of a remarkably low noise level. Its ergonomic and stable design makes it easy to transport and use in all grooming environments.\u003c\/p\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eThe quietest in the range: 69 dB\u003c\/strong\u003e — comfortable drying for both the animal and the groomer over time.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003e2-in-1 blower \u0026amp; dryer :\u003c\/strong\u003e Full speed without heat + narrow nozzle = blower. Variable speed + temperature + appropriate nozzles = dryer.\u003cbr\u003e  \u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eEconomic consumption:\u003c\/strong\u003e 1200 to 1800 W — ideal for everyday or home use without electrical overload.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eUnheated handle:\u003c\/strong\u003e Neoprene handle for safe and comfortable handling during long sessions.\u003c\/li\u003e  \u003cli\u003e✅  \u003cstrong\u003eLightweight, compact and stable\u003c\/strong\u003e — easy to transport to exhibitions, in vans or at home.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 3: USAGE --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eUse\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThe Atlas can be used in two ways. \u003cstrong\u003eblower mode\u003c\/strong\u003e :  Full speed, no heat, with a narrow nozzle to quickly expel water from the coat. \u003cstrong\u003edryer mode\u003c\/strong\u003e :  Adjust the speed, activate one of the two heat levels and choose the nozzle suitable for the type of coat.\u003c\/p\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 0;\"\u003eThe extendable hose (90 to 200 cm) offers excellent freedom of movement. The three interchangeable nozzles cover all needs—exhaust, wide drying, and finishing. The hose and filter are easily removable for daily cleaning.\u003c\/p\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 4: TECHNICAL INFORMATION --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eTechnical Information\u003c\/h2\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; width: 40%;\"\u003e\u003cstrong\u003eConsumption\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e1200 W (min.) to 1800 W (max.)\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eMaximum speed\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e80 m\/s\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eAirflow\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eUp to 140 CFM\/66 l\/s\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eHeat control\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e2 levels — maximum increase of 38°C\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eExpandable hose\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e90 to 200 cm — diameter 4.5 cm\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e\u003cstrong\u003eNozzles included\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e3 interchangeable nozzles\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e\u003cstrong\u003eNoise level\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003e69 dB\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9;\"\u003e\u003cstrong\u003eSleeve\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #f9f9f9;\"\u003eUnheated — neoprene handle\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 5: RANGE COMPARISON --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eChoosing your blower: flow rate \u0026amp; noise levels compared\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003eChoosing a blower is not limited to its power: the \u003cstrong\u003eair flow rate in L\/s\u003c\/strong\u003e is the key indicator for optimal efficiency. Noise level also deserves attention — a few decibels less can make a real difference to everyday listening comfort.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600;\"\u003eReference\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eNoise level\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eAirflow\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #1a1a1a; color: #fff; font-weight: 600; text-align: center;\"\u003eProduct\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/thead\u003e  \u003ctbody\u003e  \u003ctr style=\"background: #fff8e1;\"\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff8e1;\"\u003e\u003cstrong\u003eATLAS ← You are here\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff8e1; text-align: center;\"\u003e\u003cstrong\u003e69 dB\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff8e1; text-align: center;\"\u003e\u003cstrong\u003e66 L\/s\u003c\/strong\u003e\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff8e1; text-align: center;\"\u003e—\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eVOLCANO\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e74 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e118 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/pulseur-sechoir-volcano-options-murale-sur-pied\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eFORCETEK\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e82 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e146 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/forcetek-pulseur-sechoir-grosse-puissance-gros-chiens\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eMASTER BLOW\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e70 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e91 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/masterblow-pulseur-sechoir\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003e2-FORCE\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e85 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e132 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/pulseur-sechoir-2-force-debit-132-l-s\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff;\"\u003eSUPAJET\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e69 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e75 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/supajet-sechoir-toilettage\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9;\"\u003eDRY MASTER\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e69 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e85 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; border-bottom: 1px solid #eee; background: #f9f9f9; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/dry-master-sechoir-ultra-performant\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 12px; background: #fff;\"\u003eTORNADO\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #fff; text-align: center;\"\u003e78 dB\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #fff; text-align: center;\"\u003e128 L\/s\u003c\/td\u003e  \u003ctd style=\"padding: 10px 12px; background: #fff; text-align: center;\"\u003e\u003ca style=\"color: #1a1a1a;\" href=\"https:\/\/petdesign.fr\/products\/tornado-pulseur-sechoir\" target=\"_blank\"\u003eSee\u003c\/a\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 6: FAQ --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003eFrequently Asked Questions\u003c\/h2\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/FAQPage\" itemscope=\"\"\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eCan it be used solely as a blower, without heat?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eYes. At full speed, without heat and with the narrow nozzle, it functions as an expulsive blower. By adjusting the speed, temperature, and nozzles, it becomes a complete dryer suitable for every coat type.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eIs the Atlas Pulseur suitable for all coat types?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eYes, thanks to its adjustable speed and temperature settings and its three interchangeable nozzles, it is suitable for all types of coats, from the finest to the thickest.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-bottom: 12px;\" itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eHow do I maintain the Atlas Blower Dryer?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eThe hose and filter are easy to remove, clean and replace for simple and efficient daily maintenance.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Question\" itemprop=\"mainEntity\" itemscope=\"\"\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; margin: 0 0 4px 0;\" itemprop=\"name\"\u003eWhat is the difference between the Atlas Pulseur and the Volcano Pulseur?\u003c\/h3\u003e  \u003cdiv itemtype=\"https:\/\/schema.org\/Answer\" itemprop=\"acceptedAnswer\" itemscope=\"\"\u003e  \u003cp style=\"font-size: 13px; margin: 0;\" itemprop=\"text\"\u003eThe Atlas is more compact and energy-efficient (1200-1800 W, 66 L\/s, 69 dB) — ideal for everyday use or in moderately busy salons. The Volcano is more powerful (2200-2800 W, 118 L\/s) and designed for high-volume salons.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOCK 7: 5 SIGNS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin: 0 0 15px 0;\"\u003e5 signs that may encourage you to choose the Atlas Blow Dryer\u003c\/h2\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ Are you looking for the \u003cstrong\u003equietest blower in the range (69 dB)\u003c\/strong\u003e to preserve the comfort of the animal and your hearing.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ You want a device \u003cstrong\u003e2-in-1 compact and lightweight\u003c\/strong\u003e,  easy to transport to exhibitions, in vans or at home.\u003cbr\u003e  \u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅ Your usage is \u003cstrong\u003edaily or slightly professional\u003c\/strong\u003e — the Atlas is sized for this type of use without excessive electricity consumption.\u003c\/li\u003e  \u003cli\u003e✅ Are you looking for a good \u003cstrong\u003eentry point into the Ibáñez range\u003c\/strong\u003e with all the essential features at a controlled price.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003e2-in-1 Blower \u0026amp; Dryer | Integrated Ionizer | 69 dB | 80 m\/s — 66 L\/s | Compact \u0026amp; Light\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Setter Bakio S.L.","offers":[{"title":"Pulser Only","offer_id":37819442397363,"sku":"SH0000 (82)","price":119.0,"currency_code":"EUR","in_stock":true},{"title":"Wall Mount (without blower)","offer_id":37819442430131,"sku":"SH0011","price":36.0,"currency_code":"EUR","in_stock":true},{"title":"Foot + Tube (without pulser)","offer_id":37819442462899,"sku":"SH0010","price":115.5,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/7121.jpg?v=1616496887"},{"product_id":"aquarosa-pro","title":"AQUAROSA PRO","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eAQUAROSA PRO\u003c\/strong\u003e is the Special One professional shampoo dedicated to coats in dire need of nourishment. Ultra-concentrated, rich in vitamins and moisturizing agents, it will give the \u003cstrong\u003ethe best version of your pet's coat, whatever its breed\u003c\/strong\u003e :  The most intense hydration and nutrition possible, with integrated conditioner.     \u003c\/div\u003e            \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find it of real interest — from professional grooming salons to individuals.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eIts ultra-concentrated formula allows it to \u003cstrong\u003eto catch the most dehydrated furs\u003c\/strong\u003e,  With a particularly intense action on dry and sensitive skin. Natural vitamins and amino acids give it remarkable softness while providing lasting shine and radiance. Even with very frequent use, it remains gentle on skin and hair.\u003c\/p\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3 C8 9 6 13 6 16 a6 6 0 0 0 12 0 c0-3-2-7-6-13Z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eGentle bath\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSuitable for dogs and cats of all ages, from babies to seniors.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"9\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"3\" fill=\"currentColor\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eDeep cleaning\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCleans, sanitizes and gives shine to all hair types.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M3 8 Q9 5 15 8 T21 8\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 12 Q9 9 15 12 T21 12\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 16 Q9 13 15 16 T21 16\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-knot\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eMakes detangling and brushing easier, and limits the return of knots.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M13 2 L4 14 L11 14 L11 22 L20 10 L13 10 Z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eImmediate nutrition\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eIntense and visible action from the first shampoo.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3 L20 6 L20 12 Q20 18 12 22 Q4 18 4 12 L4 6 Z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eKeratin protection\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases natural defenses to protect the hair structure.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3 L12 21\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 12 L21 12\"\u003e\u003c\/path\u003e\u003ccircle cx=\"6\" cy=\"9\" r=\"1.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"15\" r=\"1.5\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eOily skin\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eTreats excess sebum while preserving the hydrolipidic film.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 12 A9 9 0 0 1 18 6 L21 6\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 12 A9 9 0 0 1 6 18 L3 18\"\u003e\u003c\/path\u003e\u003cpath d=\"M18 3 L21 6 L18 9\"\u003e\u003c\/path\u003e\u003cpath d=\"M6 21 L3 18 L6 15\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eFrequent baths\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eNo risk to skin and hair, even with intensive use.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 7;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"9\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"1.5\" fill=\"currentColor\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eUniversal\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eHairs with volume will retain their natural volume; silky, heavy hairs will remain as they are — and even more beautiful.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of AQUAROSA PRO\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Hydratation\", value: 4 }, { label: \"Brillance\", value: 4 }, { label: \"Soin peau\", value: 4 }, { label: \"Volume\", value: 3 }, { label: \"Texture\", value: 2 }, { label: \"Démêlant\", value: 4 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5); var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (with MAPPING) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eAQUAROSA PRO composition: innovation, performance and a quest for natural ingredients!\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA natural formula rich in antioxidants, vitamins and purifying agents — \u003cstrong\u003eSLS-free\u003c\/strong\u003e,  Paraben-free, silicone-free.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée d'AQUAROSA PRO\" src=\"data:image\/webp;base64,UklGRuaIAABXRUJQVlA4WAoAAAAQAAAA8wEAZAQAQUxQSBggAAAB\/yckSPD\/eGtEpO4jbttIcqTpmvGuL\/+Adb9+L6L\/E1A3t4\/vcoWblB2y15gzpsKGUKfsFK6smxA8GbmmQoT49Ph22NWOtB7p2IC1tXarFoXJ8eZ4OjmmFPwWiN35aMTunBh\/gJmMNDOdqslQHLeN5EhS5Z\/1Wa17R8QE+O\/FZC6GbDGd2WIzKjDbtYGnW8sNeG3AWjOeDuDme\/wSFeVFEZQPWE52crPzm2E1stysN3v+Zgcn85+zZndvdn4zsutXPP8iXPw\/m7Yk6f+Ptc+5StvOvJ1GV94sVzrL5oe3s227H2292bZ7jEfbtpk65+wdEYPsvdeKQc596oiYAF\/Yth2bI\/\/fcV33\/b4VY+Zj27Zt214cLn6spbFtNMdt26yubOmkk7aiqThVKbzPfZ0Lz\/081ahU3vfDiJgAb9j2GZLk\/9\/9iojs6u7ptd7+2LZt2\/58Htq2vbYO29asbQ8Wo8YOG1OtqojX6+OHs3u9VRExAYzfk3\/Fzcf\/zV\/mJtBTe9\/pHmJd8t\/UWm9ihTTR\/kJ1Yn5apHv8yicOx9Lss3LOGi79gciKhw+zwMx8k+SlpUfVDSmL9PgNDHvevTltQ1Eu7j9i45H8LOVGWcPFD+Ri8nyxXJBb3vZkAdWxW6YSZbIjdyZBpKWzVRpkxe9\/IgXmZaOloRgP2\/GkA0lxlpJDhl99KgRetvfMxbjighNZYKVdq1wZM33B61QGEIMDn68kxr15H80QQI+\/3yBLox\/eOFoHEOnP1AlyfzUNgPLnv1mZMR99\/1fGsGInlIS462v+HVG19xpk1vw+Jbfku+6CzGPz74fTHg0vsSLEFRcqUkvD+Z0kxFLz8xvkVPxqmRFG8Z+KVAm\/lCzC0+iNi80UbeVHihXCBN\/+\/YhqpH1PpwYwweI3E6kiLxemgLDqbESmbuUe0gQsyYGLTaIe6dOb0mjyVZi5Ipv9H9E29VPwBW\/Bsv73KHtOSVV8+7H9Fvq\/tG1BgVf47veY9P8Y\/JmJ75I+vtfF\/1nzXc+Y46XYt5\/evu2gCe9U3raEuqLsuUB8l3z1PV7odt24uTS6pMW3iZ6RZ89Zd\/H9zOOplw6+bHiVPH2tNf3+KZLoDn34sEcfDV5rojvs3o8p6FnztS+VRpf8xiNZPaIsnLjmgjvs8jlE31h8Q4EXv3qwX7PTlzNd4ss\/CZU2trJbWXBTz0L7aNm6R5fTEC76qmOW0DKSzlcOuKR+CNou360yENu05beDaOXb1Dlcqb6j1l6rrLNsKLapC58NQ9tmpyg5XKKPwKpWXu40g4tY8nwn2ur4cyVVsV2lZ9ZateLgHKVgi1h5EobWsvqihdiu8DLXXitNNx2RGluU5T\/nRMfNKs5WwnNdq1bW+9MXrAptpoW\/aIKOfzOwYKvCs3zUb2fyQZWGFnX5M6yv\/3eUhYUQ29I8Acf\/3\/NTB0tFS3Tjbc4Oye8X3KL3qqYOZqfDxXr1LVC0b\/mWw40t4e3DZqxdpIULlIIs6tQTMLRv3SvLqQktexqs6pDqo70UZIkte8DIDrKNKk5WVd+Fuo\/2Xh46IVWRXWPGEzqGvamCluiRnWCHKP1rrQktfwa06iAtzQntNJxZZxU61nJS6QZkAZtqR8fIK7uUBTZt\/BGodPDulW1lnazU3O7NGDqaP61kZDk2w9hpeJpFkGVLnoceOq8f3TeBXdWvg0mX2l03kSpYabhzxgQdo8zcrhxgYexhaOqUFvbKBbZPHUf3sGt6uYKV6sN\/66mT1rapc65oi++HdvLuuem0Lq5Fl1yFhM6+TTnIwumLzk5mf24usHt2DHXVxe2lo0W2cMdq76FrHbtK3YAsvAiaukR5e5dcXBM7b\/CEbjtfRSuNfdo0g99SHCxpDiw3Z4UR1b9FWVzTziJsRV7nv8kSV2yuWarGioZxtrK4Fm5B7StyX\/waS2CZP+IVK27+2gcFVtKHa80wjL9VEdeiJ1DLyurST1rmSup1m7WPFUdsURLX1OdDpRvtnxJYtOlrrELG+ByBVY3uRpO6Fbvz+GRcaX8ziO5hf68srFNzbLmnbpH3fWVKXMFv87rXDWtOEFe0BRtd0F3sPtaMK78T2stygYqwdn+NJWS0OimuRXf+GyyD5xduSA2rJM9G088QmtlnQZWMds94he6R2j+FuPbpkSOjeU5kLXgUJhlauvMVc6pSfXKoPWQM27zUBVWQDVBkjDx7mlVBLfWK+1yymL+poMo54JjnkD9WuBK9pdFeDk8XVRPUtKlnQZHR08vbUnB1L6yXo6XnNxlW8JdrQs7UVouoFpv5c3iOyMsXV6xSfR2aXhbt2m0BlclnvpUUOV1XvFmcqn981T8ky2I63ER1+p03D+BZtDYdAZX5d\/6Ajpyet5+nClXiOXBkNU24qHb7oFieiFMHCSpL635VNJM9EwbVgD83eJbQzgVRnf3fUo2sNd\/3YmlMGV92qud58vpjJqidX2yIrJH2XxUNqjR1tSyPNDhcxlTmNxca5G06cTo7Uym9Ws9VyGVC2th853Pl5Y1nzJly+5EnIzLZ7HNY6Q2oe1kiDS93Mc1myR5PyJzfqIkpcOoYJE\/YrgMKplI9q0i57nq+NKRE91zvhtyTMiGdRkdQj+WJNP9XqkzpvKNWIa\/Z+HYFUtRFh5Db\/R4zIS326NBSppYuqpkpYhqN5PH86ubkSKXhoRXWR6a06TULpIBNI0PmvHp9CqTo1aNoJJO1l91EtDSnx5px5A1tH1ogZXg1HJmbbt2SnSix++Epk+cDL5qL6MofMUWu2Ha0kJbmKbspufB\/mchI0R6YtlxS\/Kg6omjTs07k9sVvVyEq+akNKrki32pZQNMX7K+I\/BtVkNJF90Oy+eJ3KBEF3NRzZrN8lIwo4s4pRW4xAxUmULAZnKMioCu95n6tcikfPG6JKE+74cgdefc+M6LUXouUDZotSAlvnACz2fLHKAK65\/cuapBf82SgKGv3uxSIJKKkecNIPJun2x7MIjp9oDFkD1k\/IeXfT022SGt3WSPK1v9spdlkK9dFAJWaw3AUtCkBTe1fk7TEeBAF14eT5wttWzegxB89Z8jv+vc9JYDS4xgVCPUENG2CaPJ5t+W21HiS0ZGNivyh6Z3mPAH1hHo+adLCePL+rAtKzoUFUM218AK2\/o8K4Uxs+2OXAspNQFejO9BUBWzVgaLO3+dE\/qGd83JxnmzZaUoBqbl4Jk4vUhawNlTwBFw1acjfyraLgKJNTYIFTHWZKJ9+WKsCUjMZTi7XCVEw4qK54jjBXoSiYX030Sx+zQJjgUi7XrCGU4X7VxTa8nhynCzBiaLrSThLs3MWUiL5n3ngBNg4UTLSQQEtd1Reotkd+1LgJLipbywRdyxmnFJzdJ8LCpp9wEI0E0vXKgtEnr0jHCdLm50okd5+0IImsUVnWUSanxTOztEARaOdvpyCJvFn7FUpIavimZgSQ0lbrwqaqAuugpRo6Zb7s+Pki+6yVCI0XDPhXD3LUTxoquzx15uUiLLvRJ6cmxxlY2IgmkW3PkoWcXtw2gImcnazSpGI++cLTj4ljjJ2tGimrd7rLBK5\/5A5TttPeCqTtt5pDSawGqL0sUkwk\/7qMS91u+NkS9eChfxk0Zz80V21FErH4QTURFm313YpYPK0AizTdOv2AhOb9a9FKmM2phDNaiirvONCnIRnx51lLM+LZvphGsro0aUULNHn9x2F445FmpLeccpSGdmxZqL5Qk0UVZp7MZwl6oLZnpcJe\/W+3FgCfD0KG0eWEMvE9AJnGXhmKJjFr9+uKCrKFymzRF10EoUgfT1N8JW3oLDs6c+0BBP+aVCq2DnqxDJ5x4QXgu1Gk\/jDtEI+2q3CUtJr97uUUdr3XhPL4tMrlGUgD2QsGZY7UVY82ZhQpq58AaVQ8LomswSowgvBEJwW91DaluYnTYkvXKNSpkmfuzaJZfolOkpnJszSHDjjqZDFSYQSgTfub1hG6fj7w1ASO3NDXaF0XRPNWxaApWJygiXq5Gu8h8KhF6YtSALSUnopt43TxVnqOQL2TCgnvmlSWc6DJfokMdcuuuMAGCDDZDv3WbEoO05WJQmYUBQPDfYoSNL5z03OUpJ3YpljKG86SijTewSLuc4cJpISHj7YSLHQ7c1IAqd6KG86Qiz7eQSMVmUg0Sb3gMVqueHB1FBa+xikWGjJc4DkaC6ivMkVAlnwvJXKYmX+DDWSwHVwlA4tT8tIoo8CSONTIjk1B2\/Rqljorb6CI2q1d7mzWNOFezNH5IqPvdcqFLfIMmEstuHBxURA64nkdFQV5SPvfMqcI\/ejE85yblufBImYRxARe+PiWOz0rZpCdBEcAQJHxHhzaCQRESMNLlxPJA1CKHrj4pg6\/ipIBO3Zb4ER0N8CBvB00xOlYeS8NETMzsRx8udusBgRIAn3UBnCRbJfQMjQOEhSb7rVUoSk3QqMiE07IAEi9f9JDSNgZPAAUu2L5JEgpkvBkRwFGGLcxLH3n0TQzUOQMPiHGFX\/OMwY0Xeuc0aQijhOft82C2IgEX\/vCGltnSPa5F6GaOWhjalhpOvvhUQIzS+aUQRcuAiPIHUW4njrAmeE3D87FBQRDy3XEBpOy4QxAUfI3qRA9gFCNrvqpewUUTcc9RQhNLtsgRG2HjSJoCgmkAeOmDYVJCWGiDR\/lwIjx5vAGHs2yjEC1yNonhLH9EtRSnBEWz3fQ4RO3F+CogovWa8SQTHjAvlfEDNsShjTJjaBEcLmp0HSHY+6RPD86MZcKQLqhojZJRPHa5IH2enCmPKsecYIef1v1TACE4J6iGPqIEovc8Rmx05nhNB9C4aR4PBBlQhFVy3moAi4qETIOFIhjk0Q00IY06bOkhEib7rFgiL42DRCyvbuDI5w\/nwM6HrCWPDoTpUYCsOI2DFpiOkKjIDzjpA2OudgDox6SxgD1mSCWJrNL\/JeCA1+dbwaRMCoQkxvvvwnlDB6lgcxjR8riolb6DFATlGl9212xojBKzcpGCLWLdQgYv+sQQTUIKJO9kIUX0LcuaExRJ84HsaWL1jOwVCz73ZnEFISw\/RDn1roEmVuRUEQyXdtV0HM4tfenxtBgLkRYZcGJoKTn9jjEmeTGKYfXG6MYuUOBULARUdU+dxH5QwxMQywXhD7BQQeiiE2y56PFEXMLjEEnzoARim86VAXCEHPI64WoTilQLZxYjSyMEqH7jNHiJjueZTwnbd6Q0jw4nFjEHipyxACBoira4NgiFUcX\/4ok2IfxdFg+4SIunYjGCTstd0KhJJfd61KkGq3vFUYAuqGCGrqIgSxElGz\/9IPtoSQYzHCWhzzh5IBRF0wW3kUKQaCWCYR1+JEKRByi9R\/XRBLilPtkjezM3RxEEfqrwlh4uhOkzhTouipy5RRbHUTRMDQEdXzjqvlDNEYRiqTMoKoK1+MKo6FIJ5YA8ZZqQqGQhE2dPZcRxHjSIMQxFMeKEwMJ14zbnFsDCLYCo8S6eUbUoWoQdiw3TMWDLnHkTaYII6lSHuCoVS+8ZuNUUy\/p0DI9dPfbBJFCjEs5kXENYggGebgg7l3sWnyZuUlr4BzbZC3Mhdfz8WpBwoFQ8SK8Tg1XTmbgqCE2bUqUVzPrmaEHD06opo2KMSwIXIWxYwTpf+MAiIPZJtvM2eIKY7UbQgRnJq9j6KKk0IE09MzliuihmarEQToZngYtbNWUwBEbFjtEieJYdqxpzaBAiLQDXPu4v8ikZIhxHrqhUiBVgcEiaz71kmTMC3ffnduAOnMsYYIGxoOhfA\/1QmRkxHk1ZHkjOQi2CYfEEfkjBDsEiKbKkOUSJGWzo0gKLi1t4UwGUrKDKnGyokgYl4fDBTLawQlv+dAI3GaXfpGcX6AiT5CL7mJYMVcPIP1gLPBLEQWyfOOc23ID5u1z0eKI9UqgIneEsQ2AwjwJliIYQYzhhyxIwKhirFKTwA7\/q2JZPrg10fmR3DfCmOc0MyTqfFDHK0MkdeXQgQP4aGSGUIJsQchhJtgfy2Ex+cHe4Wg1Fx\/n\/ZC\/SxBgLgh9K8wBDLWPEMDzMFzU7QjCNL+m5BinU8QMETwaxEiox2N0MiCxRAgYuc8j2UJoArPWqUM1NK9W1PgA5wHEdj1\/D6Eegg+ZSGAh9FqCF\/qwt2xTEn8iu065RIoyp4rAQKaARFJS28pAHrOsoaBpDIufEVvvM0SQofzQyxaqYxFsMsuF8ROhg9t\/IWMttLwAbxGbNfZu4rjAwaTWgh400doJ869Oc\/X4YIfwZGlzmCFn+RPLFSEtrUFBT3AyD2U5+cuS40fIYJH6CO0ORdHDdcAMp8Cgx2e8El68EFNwR6u+ABTC4nIMl3ihg8veSxCY8LXfT89luT40Fe9EmAsD3yS37u5EYS2VPAB+mOILe3cb4HPBQQvds2m4vDY5AwkFjLRK7b6FjCW6ZM2uLEDNAN4rOw\/8Pkt0UNBcCnpUNJqwnZmY4\/\/gZOrl5VVyrJaEbXOli3GWlYx79Oga+6nqPl\/B6uZ\/JcGl+UKI0A7fGyYLme9Ry4anJyDXND4gv8dXC0HrESl\/\/H1NVvY2I\/t69ez8jZWxLusqdUnHxwRtBM3NPJfNkyi7UPrHzpHFy0CKdB4wj2cL2TaAYivAHz51\/9oKatlcNMk2v\/uYx5dZctFH9mmgMvfDRE1uti2WeBLP\/dEI7QVh9HetY07wPQzf39qdmQ4ZRxBidbk97BtKRm\/8LUlL3zrb8gwZXo3bOUVKxy5A5a+950pu5xVv\/dTYtksvu8Hwlu+\/PKvB0wZl214GV6ObEMgzClx7dtvY55kBY0X6I+uU4nlfO2P\/mUCgsR6MABFHyHam\/q5kXH4i+LZYJEVy\/4LBYUlJViY1qdmbgFyM1YA1laG2Inf+iOsNQIs8yJVa1MRBZ1RV7bKC7q4wbEbH\/3gvtNJEGspsz6umneIF9cI8b0IIGdWS7cS+LDrRakANxbu+sg5gFtoLWQZWYk+z3W2SokXh\/w3MGdtXcyMux98X7q3kKxZq5gB1ioA+auWrSP95fZoXfz8OXoLf4p6qqklrWJrcIU5hXM\/NX0AM2JNYYA7NKLzG39tIS\/\/8C8ueod\/PfW\/PictlD88m0SZumF3rT7ocs1HetVcuBICBaa0+Phnnjx\/EU8RWhskCGEC+Cb3+N6XN9585Tew0kYVVsj67OMm4e\/a4SF\/uHSVdMdwzUmvroSqTTKY3vWWB8BccSYTCgMK+Hpb\/qmfstE3\/IXR2RhgfZy6dVAt0fuS+4dRsb\/+SOV5aIsO\/87diwFeMSHJHN55ZOYiyCJ0JuoBqAEk6ae\/IP7uayhfvxFAgAAzXtBSxVpyev66IK9z2CwCnLiyDsxoLv7kE\/cJt3ImEdAAB4D1K2L0I79xmt\/cRHUEloxVsFGXJOQmfHXNHq68RxrCgRtunJmWy2PVczBzQPFfq9f0YfdsWY6tA1CAgRmrsGUDxMZwZS5FJk5f8uHrgeyrWDIiqE+vGrzohvP9rQDgRgRkzszElbuKm80ffM9tOyHl1cYNEATAV3v5gj\/ZEoPffSntInBDZozlQ54l3TZ98f2QKC8+a+XWCGDKtPk3ti9\/9y+ZNn4BQMEMjLF\/KCIz+6HHrjxYkjd68SRA0ap++TeFvuePYMt3Uh8B2ZggVg3g4ZkPXQOk8gKhdFmYwArAOrfyxa\/cKI+f+VbqEZgDxuRRxRJc+Nj7DjSWinIxsUXjXWQB\/PLmYP0\/bRNT22kXa8mciWagxNGHX3\/dKUs\/KBlEdLXvzyxby+MXfqgx0O84nUWAGxiTUBVLcM0FFyyly3gaAWwtFfqC2aXGy7DZfnLkLdM2qhGAG2BMWqXI3HSBCgEx+v6vauKn\/\/ZEqtjEKrR1oy0rqmQmukWZV0Dg\/rIf+q3N9DfjDyLpNCbDjb1jVit+6HXrGLnMexBz2eFPW2XxJ1OLUwMm6H7oKfYzf6EpY5LO0T\/iG7c3mYm6T1zLZTFht7EHaTZpA845E\/iEkf8\/YjiQK8BZzBhvafkC503hIj4R507c5Bhv4Xduyrg1+fV9iTbxwqWp0tbkv3s+hQdrJX3FhlBnrIX\/3Hiz56eLkyZ632zpuYs8SKM56msj2Y39hJr09Z9erTOxHp95XPhPbnDWNKj6tp9KCTYz3XhcGGySJsIEu2XJRHtblon2mPhi8e5jP5p4k2oQZyI+kMvGW14503lTnRPwNkacArmR\/0f+H7HTHbiYGOct7NE3DLhnZzNu7gMT7WEz50Xj7aJtJQasRdp1VnL9lippsidmzNUX6l5+9GtbUWHNeOlvT7iCNVxffaSbYJetNAGfRH1Grq+AzRw+UwZbM4I\/U0GN\/sW\/jmexTt30Y7jBBnAKiffE\/wXXJnINhlvS73\/3CDfyRRnelb\/beLOJO7\/MGzAE8X0l7iJ4F+wlcM2uRbwBXhNHNuCAjNzjcuD+g7jqcOHu\/BfnTXCdeE94CXCAITfy\/8j\/H0nZkMvANZ0KXOgh4KTDkWvIFd4iL+\/jrdnDt\/JmejFwU5q9yHErduWmghsyE\/GB3Mj\/I\/9\/DOIgLgw4s8Kb0tz5ctxY26mgDWxMxAdyI\/+P\/D\/y\/8j\/I\/9\/bP0I4jojbseBHLxtfMgab+oEfARxI\/+P\/D\/y\/8j\/I\/+P\/P\/RyFsQd0Qh7p6lFLQFD60m0Z7442Or0RacuCcHbWK3TO8cI94dgaJ3kmbvlsQ7iFB\/8d2Sd5KuOy5SpS3rW35CmTbp6BNkvCk08v\/I\/yP\/j\/z\/MSOdxM3J2z8v4M3rr9+koA1+YUL2rowf0v2\/rfWI81ur8aaH+wm4wzoBP1xz3spLd+WGm6+e9qYct+7xv8+g1dJSLddcak5btP7P3ZzaIZjk45hWoqVSfvZLIh2CjWmrDTCkfMX5HzI75JKd2PctPn5psfUz1pD1kz9UXIfeskMP\/kwav9T8S3Mu\/EtOTpYOwca0TS9NWED0FKZDcsnHLq5XP\/ErTKCQCfLwTZ\/4BdMBaFWUh9Y++LmzattPTjpkUv23WdWWvqQEZl7KZKmsiPNoemUltRJoiu7pG8KYtJudIp+4NT2MTdzAcyK+Qs6QG0uBm+jMd7dCG33qOAHv68QxEfdD\/4\/8P\/L\/yP8j\/39YYkJunbg4eTnzphUX8Fkj\/49wrkacTcloi\/TsM3LaZDufL402SCbgFcT9v\/9H\/h\/5f+T\/kf8\/Dn0hNwQuLb9SDbfIv6WEG75ZvMvgnXLcwKUivkaOyP3Q\/yP\/j\/w\/8v\/HnRjEpY64lf3AlReusoqblDTy\/8fFGsgV5FbCcGs6fWd22qR1F\/AWpEXXBGnrvBV5\/hwFZQ3v3e8CpcGLFTPx0KIBquneJ0qDDDZSjXwwxHnU5HaLDLNuj1NftYBM0RF5eIpVyGx9hzyuv7BrhCkdvB\/VIu07e16Ehz9zs3Wodk\/enhtgcHsxuqv9+eOp4RV6+oOLqCvythPN+cqX7UpBz5qv+9tuyJaW82f\/KRV6e5w70zlZiuEFf3wiWKFw7aWGc1MKMJ8\/71VLviKIXb1NOYckgRVAyaE58mc3mAUrt\/nXI80FFbUs0fPm9OybPv90CvEc0gYOm8goWvKKGdXZQgzO22UazH4aIBWeW1JHmKhGqQ2onrZWXHwyKQZPnrds4c\/STiCJ5368j08mVIuW3GvdJ+914YfekwU0t9A3OaCG55ekE5MFBWCimqgvuSB8+v1TAZF23e3CRkE1WUvREi9I0\/mCaYwnqxV1JKPv8s0nXLFx5rXrC2Bzi9TNQGa1wgufnhtcY7imllnx8o5hxNSdVwHyk9eywlxT0FbtxRnDu0+lsZgqRQYoee2ItSJdd9fGAijvuDmH0lFRdQcsoiZWT3F6+2liHKVKdKVK9\/VHkmSzbx4IUHpqnk4T4F5rWL2HXFIYK6u0zCvWNTsycfotz+QAn79xRH9LHSqGTKz+AjNinKOaopapzguUpu8bCGRzb5kDYpHOhCHUEZyBhYGPWVQpag1q3cdvmlIMpq8iIO06TP9kqoQ48wcLH8U0HomKTBg47bkTLmQ7zh0UUH7knhz4IvVBR6PWWnPXHMR4QpVABihZpfOSfUNJH949CORzI+pJgNVCHWvTjJPGC1Eqlivd87sGsmZ4\/l0ewC30Nq8pWDOXSA\/fi53VSTXVEvXDi4bso8eSQOv2XJIC2RJVGwgoqog1ebl5iUZnWWqFKpkVPnXFVCA\/euEpl+lhOl0AZpUQa\/5EaRieJSlqCZBRPTnrUPLMa7YUUHrmYXpnMJBF4WxTDO6ao5ydREXIWsrUTyXFuntuMhGDT9\/PClOHWsHZa+HAvZDPJtTULFc6ZbN3h1C+9eocMXz0GFWTtawjOs5+bYry7EJoLSf1czofdIh091UpgBg+eo8HWKE6qJTgbD0KD5T1xdZSUVGHMv0X3zYywI59IAmlI3S70RZgocpZvQZxN2viiFqu9FyaEaClt+wdBLb4GP3drBbBmDFG+4THWqTUrObUnylGDO+73gPQ8PGL6J+sVkxgEmNLT3lJaW2gSkRLKdVoANmj1+QAP\/WhBjR4doFOx1qqBWNTxejKRyk6g4Uq5pXuu0yA3vNIFvKnnqG35Q41jGvlPOHkOIMoKlZTor4UEFM3f24YKB37KCtMFYuK1DHOldE8ctzOAGpqySulorxj7yCIqZ0fFMgPLlJ1WS+pMl4We18\/DWUVUtTc6KuZQqRznkkCYsOtT9F\/UFGhqtp4OjIPlEBaDSTAJIEpWY1FD3\/inAah\/Ph1AXaU7lxR1FQZkxf1vvMeLF5EEbVk9L51waCkD9+6vvjxI\/TOXRGV8XySrrrtGNE0z1ModTW1VDPqy\/tNZdPNl+SC0tHL6J06oqWuMX92+\/gTDLI1K1Lpk2k63GtLSw6RZu41gdINd5rIsyOq7pVQSx2TxXAd+cBlV5DySvo\/OPcjHVxZAPkHDiSIwe6j9LbUMhVVJpoS+9\/3ex\/7p1P9ZPv+fkq1yNct\/GbjlZMXBYAF9VxTtMTYHlZQOCCoaAAAMHsCnQEq9AFlBD49Ho1EoiGho6ORShhwB4lpbsS6eOA55Vm548\/nedbzDbWoD0KOe2k5fYn8VffP06\/LX0Z\/I\/vH97+XHO2iufNfyl+6\/xHJnwGvy3+wf8D15\/m\/+z\/ev895hNwvQR9+\/sP\/B\/y\/7uf6z4PvrP+z6efaL\/xfcZ9gn86\/pH+h\/uH71\/4T2uvI2+2f8f\/e+4J\/I\/7J\/sv8F+5n+H\/\/\/0zf8v+z\/zP\/d\/2HwQ\/Ov9V\/1v9l+Tn2F\/yv+of7b+7\/6f\/2\/5\/\/\/\/\/L7vvZ5+3nsRfqz99ZBsYJPYKF2n\/XP5ONGegPjnUgDFl83jzZ6J1GOg5cKG1xgk9goXaf9azBwkG3QXEazQ+FG1OS9ZFXaf9c\/lBy4UNrjBJ7BPO4korL9Wv1TLIMjS1fXP5QcuFDa4wSewULs+W\/w2V8UIteggt3c52Cxgk9goXaf9c\/lBy4UNMmcbW3I7kmE9lyg\/dIceITXiF2n\/XP5QcuFDa4wSeu9bjfBfXxU0zE65z0vGChdp\/1z+UHLhQ2uL9jULyC9GDXUoqp9Ve02q4KF2n\/XP5QcuFDa4wSeuwS8ZX7\/Fkud9xP52QHT+jYtBJ7BQu0\/65\/KDlwobW5v1+fPCISaY7XVmPs89nW43cyufyg5cKG1xgk9goXadHqhQnVMoOh8uIMFsY5fY6uwULtP+ufyg5cKG1xf0FTVnKYoKA+tK+G57jnkFWIUbnYKF2n\/XP5QcuFDa4v1VtoxLJF94HOea9FO3tQC3NcYJPYKF2n\/XP5QcuFBXwS1TJp54DVafuegsKf7EsrsV7BJ7BQu0\/65\/KDlwoaYrtRXeXj09Ze+IXtpfKDlwobXGCT2Chdp\/zplbMAWUZu4qPQplQrs8XNRffShdp\/1z+UHLhQ2uMEnlTog4zvxjtHlt\/jiq4e2Lx6Ha4wSewULtP+ufyg5cJFf38tP2XEEP8lUh4DjC7RwuA9aewULtP+ufyg5cKG1uSutD\/Px0cCLAZ9HhTVHMl6z1eO8c0NrjBJ7BQu0\/65\/KDh05VURks8BP\/4iuQvErPg\/W8MxtcYJPYKF2n\/XP5Qcr2javQ3iHSv2zf0\/V62G5ILab2mUNp+6F2n\/XP5QcuFDa4wSX\/mlAIs6EhpQYimOUYNVkA+oUVqy6PO0\/65\/KDlwobXGCT2Bufsuwsv2lWmgleWSD6VJwmdpQJrjm5lBy4UNrjBJ7BQu0\/604m7\/yN+XmWjqp7dCWC6qmaYDNyHoT+ufyg5cKG1xgk9goXQ8fUIdudSf9XHE9Y0VkF7BR04PJMMiZ9P+ufyg5cKG1xgk9gdrGZrHmujALheOFlm5QC9\/HgSpa6vrn8oOXChtcYJPYKFzuNiuancc7MCwp71xxf1Aj\/FNKOyOFDa4wSewULtP+ufycXhK69NyyU6nathOWejh\/0QG8GUOxMfhQ2uMEnsFC7T\/rn8oJqlW2yp+1mNXippygrE6FFEsSpHpD\/qcJPYKF2n\/XP5QcuFDaZDKOHH2KTvcZ+G3WnkzjDYPgONk4bfT\/rn8oOXChtcYJPXYQi66SN7fEcowAwmMPUip52wj76f9c\/lBy4UNrjBJ68S+x7kEM7sQ6dc\/6gSIR0Q0WgIRPQbYBfspL\/0b4se058V2uHibhvYuImzT2ChTrKlLIBEDD7+komU14F+8sQibDCq2BQbMJdpZBJMJaWt6\/AIN7lU\/Ho1J0wrVUDHsVjX3LYAjcn\/qSu6mZLT8wuvVnoLKDN8rtySC2cicbJiB+7QjdVQDyObbatxhSo6Y+ACWKQZ86+InsZIsofcg0nVUrkKjSENctfPbsf7AnmZyP55+a8rWKYWD2a0PqrNpmWvz7K6\/TFCpa3GcBchdlLR522GoYVlvprlfKoUgEln\/Xc+BPouG4qta6yNnZVaQOyvff+2o5pABWcCAF1jj3kPhmWb\/+W4QVURs1xqAXYdDW5crAziYFvKj6h9GQsq7yFvN0aiLFsKEvdCsKtSEW6j3Bl\/j7PL2b3owqHlPBiH5uRbR3bdaq1nGWnsvFNURV2dy\/cLwLY38xe6WIRdxRBMiexGnO19i2rOsuo6JX\/\/rYD3UK9mDMiCnEgWmJH3KyZVJxn5UY3tO5v0Vcxf3x0nSjZEB3Qe\/BXOdwyNp65N9EHgF3RfYs2Wz6c0BAdEbp8JSQ4fKNSNe3GLrLc91dJL1cZZCTPJrZ6igLojQiWXDjD1u23uHDzl1\/ng+mWv7apXNDnT6NWcg+lGHXo+CJdjHzM8PieFNrYLFS0LtLZkLmEc+rxIonCN0WXTPouj+WlO+jgzo3IygFF+TuPhWXNjtZBgFb1EPN0XR+Z8nrib8kgvRcPYmytBgUaRxHNp3ycdB6y3yNAkBha8x\/Hp3WpW4EA5js7\/3A1dTd3mrJC7TxGks+rl1+DcqEEA60FdYbG5rDOip2BYTCIt7TKE8ylSJMoFNBGUhy9XlnyXVYBU8lOR9tKf8IdJapolKTcsnJAqCbIvTcxYXAy2wRIh9LbKM6EsKhJjACtWVgBlDkVls5JbXySABC190w5u\/ujLFKaWYByx7HFDsAi3Mp7mJlP7cHrTHjoAzT0f1QQpe3vtZGO+HG8knz4GOrK5aj98eSl6Jtm5uB4GBFW8qwl2a\/W1FjIZV6Qsg25voszrWP8XV8hDVwhSmyYigzrFImUNHoOnTWniysb2fdjoTTMoQ728UpGAUqs8OrPuwXFDv2kiJ1Z4esC400cg63aZwgmrKRiQYAtTG52KJWL4Xo9F\/GCJGpIhM4K6uBlRzK2VuTu\/55JeGi60xwxUe25k9XzTZX0ZPyjp8iHWXBRQoviFlyA\/PTiRS4NJutQF7Ddtf1O1uczk7gJ99qpiVwAFArm9fBFAdh5QKm2BU+ArJKVo+uZ3XEpq6aj18kMX9zYZ324arR\/zFHHl1RyikMB+J0JpVab2ohcHYUhNALYeblr3i9jdaiNbV3iesShp9fDU8jf\/HP9m2nz7WKyQ5Dfvk80OwB2xiTdB91HwxXseeklF5+UsZ6XmlpCv1cs0\/yF\/9wp3\/hBkPFA+gBGfN+lVgZqZTuZEKQd0FbosBlr1ILRTPp8MX+\/idV5gvfGFHe+PqTiXb0SIlzr409eOSYHhI0HLSQnJuyScMAw9blYrutvBgDaPiIFOzyKapeWvjPcb9CNidcz0az0NNGc9l\/LEQ9k4EvmnoNxp3923q1JLy3vAsUAjnQD36wWmAd34dJTesvIKvtJ7BCj+QwGKwMZbDgW8Ap4R0I1KrbKbVzQS10cpzr2\/Zp8ipPAZHT9qI8M7mk0eetHJtMJ4qPZwpo7x\/x06CBAzUJjFGTEc3qgxvSwi0Nmu1rhAbgROBCVsp1\/o3bJT2Z3WlRqdP3aQKq+IoF4QuqJHLZr\/A7tM\/PPRlG+8rSdBTwlj9f1zHqncz86BHPK\/LW9j9rE0Lrp5d8gIAs7kckN0dLsQi3Yso\/lJe343rvxFtNvUrbhIeyx3R+ia\/qfewBC32SpREODVzH107lYMBu6Nt1aEubXgbtd7PzjQa+HS\/0vEgfVOk2QVmxRFTgl83g3yp5bYNnIZaCBl75PkKS47v9Ne6K96MaVS+YjheTY+WSOT4QEwkFX8xAnaQYHnP70Ptk+png2gcvUP4ex9wd3vPkpx9Vm0mfkNJg+3efv0RmicuL4bgrDrEqStKcD+8wrzyL\/DeNeo99tkHpQg97DX5FL1e3vCKEAJ74NBio2jGECE6Qs+a3OP7DUs3AD6PDqiSriIRaC+gGMEkdARFf\/Fef9DGmrwSLIU6mEM+vkUnNuUNAmlP\/5P4cgQIH9R+X19rz0EsawH3QjvIGMJrmO8L6YpOzTgYXqFTTOCrJHuJcT2efJWgPar7c1zDvGs6oLCI1rBgR\/875VZmdMOPjJb7vKXQkUCmb39B+7C9eKLRxT6CXtTGjFr2IgSwdFg91MiS6UMp6Kyc1ZnUhb\/1rlMGJkmpwnw2qfvLaxXiRf4P6Lp\/8p5pQo3p9IEffSGTqiD9\/8m8ITMwalidNjeCR1Fe58ABNJMx7qUS1Xi5lZF7flL7dOXS1W7ZGO9w51vsjVVcKwHijgphaczD9BURTFbf7qUmB11RFaqf21YHj7dpMLROMtO1sGI45w6Shy\/\/Me8r2p8LMp7H8rEe48Y\/5EPxONwZQQK5JbXhFnfIIZYXxCNwL4gpeJkIF361CxHaJCnM0KnoS4yUx8vU0RyArGk6p0snD5S+oC5mRdqULIpjmT2YOH3pnQrFATRouVFBIoQtqbvmW3rgZpn4E4o0lHOf8cC\/37hmxyoDBXkGbdq9Yq2DVwV9FV5pX+K7kTSMqFJRNZ3h76GYENIXsM+UJKsFlETwBGp4+w+JyuHdVXqzQiuomnuQhguKHSUMWJgqAtuxXTSKZWQhYrX8AzoYp6rGmeAbthpf6wrWSA65XSm0xRZSdVCTx5LtbmrD0CfNPMC0r5GjTHryoTQTZEs\/FWkeG\/x7wa60J1KwkL\/vwD0w89WTjkHrt35AsOZrauxTwqFBkOjXfx\/a4G7pJaCCZq6u+QxRwEaPh2yLf07VGkidxE+4fB\/CZ544iv5AUARZpbXVvqDpYltvGfzse8CpUKzR3Wlp8B665MkXBFKVuYuLKafRs9D9nKdL76gCuiMFpEYBS+4iK15zt2hCD27HoASpncBAyGMG3XRbnXwPFC+MZQTNm2uH9cJgLWaCnk0W5ReK4PXWVURhhNwRxOPE2hOih3lykUwICufvMYDOB5QgEW8uSxh\/JUaAjVOFVBNo1DUb1KxlEo7GdNXtB5w1+AGWHIyiPkTFVyyNhDMygitBw+piLpgRrF3gUPY\/LMNtZBBmbcG6XGpTL8Q7X5puJceGSpMNC9Khb01rwxLocN\/SOFxp0IB+RKNfaqbjsFLJsxhlaLJV\/IIpJ8RrQ8HSKarcv5NPcVD3kiyl\/N8hzXCXUIIArr4SXAl7NRtiJy7Au30VyO2ZJtMAlEWD3doUdM0PKDZLkMA+MO8dIdcQONpMI3mWwsTtQc2TnWYzcvAij70vi6162eiBDvE\/PVFXoDNeovw5RSjnO0wzOhk\/66pe99+MxPNMpYS1RotgpoJc\/Xd33w8fYq\/0giYcWkWbb2NSk1Mlg14Gc59I3eeZsY92Voogmk0sJFKxArRYQrMvWDI2JQRusEZVNXh9CUMbgUaXr1ypLFSldtdRWhr75kbi0WYH92eOWNSFgB1hOiWewWnG\/yeliPQmg3PbpZJpaJwsZF6T7V+m99\/Z1JvYPP2RqSHz9rTbvU3WYrH9C1rcNhHe4jyK4krU5pSkqFgHrsajk61\/2MMfTPJR9zINGR99aMk6OKzTSwxIpoTjFKBOgnxy\/o40iAHvWvg0CXESbSK3Z29\/IREn2x7dOfpuMbIbVy4diyFAtk0B6K2afaPl3qn6cSebgkop2iiuHv8HBVooNMnTSCtUZkNubGnlE5RrOOp23S3B8MCnFafi9n42QwL5qNE7jBQu4BJGlnXycqyHBdto\/icMcwjgiwQ4OZrP2rjfrdVNLjggBBhjFbDwZE5TsOcDRRvxyW8CY1zjYHbhQ2uPbhq8rCvP6H3wHyr9VMN4wbVB6vBUM0ed1vMbo04cv2ffTUiam9NCXIa2rznBcg3hz\/0fstxQzv1J3V3JuSdLP99xX26seIuEEONbvaxPM2AxeRR6RhnqLKm\/+2djtr0R3HMLsdaa5VlEaHEgjHIZ\/3cyvOdty1qymiMXAOjpipXjBRyUJDM6\/hir\/FCM5MMWiPIxvIPecO0MnaIEss9Plblw43lWMe\/PEAxQa4vJAxvd8sevaBngTNEJQUgvMP3fz+AbIU52KlTUMr7u9x1vA6AG42pWRBQ1EHLOm0ZXu2iKa\/4CZ1o5TZTk+sl\/j1WRNnTceyqX4zpsaFUYQomy\/u586Of\/ad1ND8lbU8aR1GAVpOkPIandPG7dPu5kjxmaRhtGECMumVacpijn8qsQe3gC4Uw\/9228NXMXJ8TY2qv36fFgIsC7puywgAK6SA+UyEyHZlXOFesbVfwRqJANFSWR3kbbH\/fX+JRKp200otGsgErBn0omBOb+ysPemwGN55\/PdcNCZoHJm3CrjlevtZxmErKyKwKQ6eJHTm3Ic4V8fkiVT8HvBzlrcTLhiwBjCMpao36nDXJ3wDYv8rAu7Qhx5DSsbcaPFh1kkXlNG6b4bRhJhFVamUKUvytvnEWN\/kbNLPedP8T2ei32kPgj7qz8FwE7lTqXAXrO1hvckrGKBRznWsABHRi93jIq9HrJQruBvcug48VI2SCCD\/mrfpQlaDExT35nPPmBGYJNa3xtdGfbeMTKXc4WQCYi4jMSWSinRxMhbNDs\/t8tp5SRB1LSvwG5Xm1n14QnzCyM2rLU6yrXJ4d5fsYXYvCRekb844rsLSCOvIXQBN32UEMtSH73CZ0KFYi7Lf9twC4Q6YX3zNfRc8Y7ZC3exbYQRDt4K0nPASjj8AdBzDZbMWG+fhiAfrOlvpQViCyvlgNQ4ORZ1w4OBIokYpdETFNjjG9NYpqu5bV0LoTn\/FYLBu98yH0lVX\/Xt3Jh1J\/kYQvy83mOSkz84byCXniMwLXM5M4cucW1dfVAUq2IF3z+pVbjeGHzyUTpBAdj2GIGg+Dt43RCmz5Bb5CJmqyOFOSwcQmkGKGuEbsvp5p6ozFTyivAyDHOQ+9fuYDM22JuRe8Cg6\/3FajNumoT8mXAkv4AR80kMUBb9c4VzKHeQHIDnwZY9qT1UGwk1s\/5nEOdT8hnOwCROvo1uq1PzHPyKUBKAmGwULtP+ufxQAA\/vR+AgNCu0OylPfEN5s8E+N52nGWpQmriscesDnCAHQqj0FEXYf8Kpuod+5FJPrgCdTYHeY5ct+G9ieUaewRnNfx2qUFd\/Td7QPfal1oZCRKw\/joLDz+x6C810w8OVv\/mxmJ5cl\/jPBKzbF+2J6+DdQyIBuxURSfRl+n9VCwzzRSB\/DFcUVkPWLzF54nVwmnFHm7EkwooAVPIQABE33ANP9pwFCBW554Pu\/VkDs2Bn2Xwtbi364UuRv3nS2p7zCCEmddGVy6XJX5Fy2nIWUYaY8Pw1zPWZ3075hdvWPIFdsxW+swB94VKJ6ajZXJR7s86B0WkPOcKtHhRlN3SF7mzfr+nIu58WDu5RkjNRihO1em4+C50NnwxNAAQyyB9du+YYoRah4Id0XpjQh6UIGHeSCfROJnGmA9gNm3erdTow4DVn2Rxg4R1wow833GbXgZrKC9iIbGCitag9OuDajH4HOBmqrS\/wuCnaE6pcXWiQKwTc0uwz2Crs6RNdsHHxtQYN6f6ZDdKcbg4CoYqYTha4AiqTTWaB4BraCAWOFFy5UwD8ZNbWegZ7Z\/GbhdzB738\/+03MA9TBA6R4XMs4Zni3xsOWVY7QJmpObI1TNOS\/VuCI5EOalAHTi0+8XyJla21d5F2bgnk5Jl8tI\/z7eAOwKDEbAD6eyADfd+LyJakSjL5I5prtvf63BGcSl8aO3E8SJ++XkZxOBw+G6Dgx8adqiMYwo9vwN\/5LYYCCyoRmxMuJjKbVk5relvaWAgEqRFsu7gtGCUDJnFvFk9dAoUg\/K83GVT9NeFdSiMaHWRiFPQDXQcdF\/lTUNIlDTsiTzpN0JJqndOx+DXSvExQEmiOIP+xQfhMRSwmxKCv6qa7yrLN9tO5aHkkdOpK\/e4rs437v32gcfZ+yuQXv2jt1S8BkXzgcSUlBruAAX0l69ohHN3ME\/HNzxTnu3GrvJgd1THFT2xMAHsUC21rOfyjrOJRd1RmzPCNYk8iS9+9Q2FeaJb6JNdwUJiBcwK\/dWPXlR8KVDt8Slr8kFV6QW86GckjEBrSvVB39cD4O\/agzQLOUdDMbPqLlCqeofH7ESQgcqnO+rctekkPmBb5uOR5xU\/HM\/aJ2KAARtYOglXe4tCEEfWzNn4GqVkqkvckiu4TYmVx3TtF44rsPWv+WV6rnrLLFyaeCardIf+kIlOqBeUdxNf8U37tC4LW3AfoEmz6Z75QJ1jvE1epHdEXsWLM7axLyecYejyG0UupGzu57eoUYdD8QHAwGJ\/xkaTrJoNzRkyrIV+4G+9FruYh0XlPKGqYxzJKOBSSv3EkFgBJeOFv4qqZwkSa4xJGnvysM9KKkajwPd9nC\/xM49Iu0uTNWAhGC\/dVGyDrTbrjhk0Zgylfx\/i+KImgeTCQO62p7YulMdsPSCwd4kyJFr2ofMeKVc\/3ucihHzCnJyc8W\/7uke4qPXL+tmrkO7OaIveSyrM6RZAbE\/25nOR33LZ+Ak0PA02ALvdQkpvgf7dXpAjdSRLMlLgAz\/vAza\/yzfvvmQJhMJqV2beUawg8+t25IUIABv0kElxr617RY3naYFpHc6KCdFS9MFvuZy\/zRV06STuM1fxwlKCYd\/A0KGYlItOXYbhptV\/nOnTaGNiqBQdIGM2qNozGurkxLqpT6D3JtLkMtf8c71DvuPChpYGZl22RfvTzKXidF4HugKT1kzTctshHX1cI297vOy71zVQda0IDFTCjS\/ualq+oAdY6HEo6eIEwfh7oXbqDsmw+sU9VA2DToCSWGN5WRvlALj7YUy424TxNAaBDUWJ4WfSQ0TnFwVy4oGe6Zdl2mFv0lvOFJxjHfy0x8irCScIW+XAy4e9xsOZ4m3Xhi70tiPPgC32l08PzdvwZJnpYib1sgq+f+i14B7jC1BJ4yaCoAaer0doZwCenpSIQSPks+6NxQSTN7UEwOl1U6Abu45cIcd7DfPSzZgAP98Jy1BNHX493wrqpNqu6gSo\/T1Yw\/gbOHRv9bcTY\/Mo+pfqgZYESAnLwSvArKIGbmtWTDMDui3hWIeq4YguDJYzzDPbHIdLMGan3vrqQOCFzmBe9BKKFYz66OaeQuuVyH7A0vqEE2LQdaTl2AOtfHj2jJKDpNj0Qkq1jcuo9EwMnfveNDEaJjR1LPN4SG8Mfw\/5qW8JsANVUrVl3s9p+hUWGMiCIRvXYwMHxdfRyzkTErB4MSc9pCO51f\/R9Xlqo\/tFS\/Z1rLanBnRtWZDf\/3e4RU27I8NHnnmKDbNMtgMM+4z7oeVKyisE2mBQT5YYf8SKiQJyskz+o6AvAPP\/hfQBKhmA7aB2jd72TsTvzhX0Lir+Qk5J1tEMB3gU5zG3lHqH+D016Kw7ZyaIFDj8wk2XzDJ4jfzMS\/aKTcp9Lg0meilO9swDXnvTU6fQmPm5tYhKsgpHo0bWOnwYTZVEUAjfh90ittqlllpkTZZLYj50XbVvmuwGx6h5EYIuYMqwXa+fA0oozSdP0Iaxec2TvxuuEr49wKRpsG3sh16JBm4AAsrLMjEnNl35Wb+8gWP4ZKvUCgIRbTKjWXf7l6\/3dP2pzmfB1zSHE4Q4pRHjz6k4GhJHAy\/P5zcTlzIuNKOf+09H8KMLfRGApeCN\/H9uZqiLlzewtjxoYAE+x92cd5iEy013pQcT3y5w5RdzgWOblWv5wbHL9\/JsLV65nNH\/xoRNvO4naOWsE31Qd4Tp\/zgzrFqMF5RZha5z+h3i9Uq6avdeRRHH+YTFozX7r0L4eER37AC985MdVPd4V+t\/7Bw8EaHLyUrhUQJOS1MnFiGd6QXIqsSo1zhbjd2aBmKXrEDTVp9v0xl11qC0bt7\/ybnoaiqFMdwDRz4pxcYWZDwrQPOC7lBD2Jojrqww6N8J8j9GjxzIc6sXp8aHj4S0vTGnw8e8UErHYO807\/Pfn3lrlzMabeyq1fKipCHzH3fs8qNJ5w+rOcpfbLTArnHOLwkJrFGH\/1N0guBRdcxExswAVBzeoCkSzSSPvtwgmczldfo6GzZWABfKrCsO3vCd\/+Zq98AdfRn7aPF9\/M7Qt\/QCWUqhigERGm5\/n8rCcf42D\/Er6BK9VWjpTVuBYoXYUztWQQoKNwQDWjlx3\/lkuibiP1Oqgb6GzRxK5W94Az+tcuaIEimpAfd12snYR+LAYjhdgdFt2tYoWfH1t0NN0H99CcGltnY1zrsa88ABHO7xwoyK72EF28m2LofCxHb6T8F+14P2xtZ+43\/8fiHxiMX\/7fOniXEBj3SvxvQQftML20GeIahiZ3pnOnf2\/Q0EeiqVBENQ34f1U\/pLIw52I2XoD6ZmtjsMPj8JPLue+KJrQNX7pePbYAqdJfx2GeroS9DGf6R6MFxGh7e9\/IP0dl4VuKxjKYrC9eiuvvjZxtH\/Gv4vYYoE\/bYZVjv2d3WKp6\/en5q2AD3KSaaZEJqh6S8x4vIqRrq3zAKYvLnNMH2bMy8X1i0x75bdniCZnRoIKZBmXCdIqzArnGNWR4ULAvpVl+VPmwiQA99E7wNeJyHpRikRgakl+gpAgAXSW9QPkXi7do72vPMGNKAL6dzHvPbFhfEzn9dmWmC7GBIF7Sq1Lwo9sCXKr+8vqJC2knfrGZkBdMrO5dOS28tgzMJLCAQOJFBBK7yJuITB9k7ZIYfoACZC61\/iiY65aaBtTAYEfng8Z2\/J6HaQph1h+uVo7qdbqaubPWpej3Vbk+dSz88nBzyorxFX4wPKR+Z9s2sNwdj04v72vwpiEPw0iOoMPjeOhyAq+Fma1KRBYNVOKypXD5CChn8nR44gRNXXjDwvvDQ9xKL9IFg2DobOdD+yuBz5+r\/Tmwh+wGad\/FnW0gfjzJu8ebe2EqCZ714UTmfsiZ3MjUPcZTVrC19FVDlOR99zGR16uu6iAPC7th2JsunN5PQ65l\/zG\/crW5OUIsgK+ga98bIexyd5Z3C5kjHJEeAw6NzCOEMuCtOrcLp1KRuc+liS8kCV1YD\/ysHsyljRbx8B01WQp+EnIFiPtcV+tEw7P+w5rs1lmSnw9yNmvlXozTn27t+1pCPiKvmRXTEzvhW6KAlDqHbrV8dHftv8ZWkGKFliUfCFi29P0\/ST8juGiCe\/VoOuP34iJi3KdPuR4etvTqYvsuI\/KmoxyFlQBUJzzjhQll4SgLzcDb8AyXCuuGRxyQFYK0\/ukBdcZERFyvozh75FgpRCr\/MykzRjqb9fYi6OwYWoK6LkF9wEYw8IAeEkTk4fvok8NVfIFBP0OqLCNWNGmDxNw6kZQy+cnVpW1+oIzk1U3pDZ0exUiXWmDK+AGMRRvMBRIBVuKTXMVHVeeN9S8IsReZY1IJiuhUB97GEH4e7NntGwtO7h+ZTIaCzYo1geyCbt6XhQK3sI+LOhw7VLx7LAsFzUp8Uq09FtlaYKGzswTGX0HPsjGzk3WRiCYa5F5IOX1RWytTRZTgNCFigAhTQP9dcSFUQ0SOICwvTB88P5jCtPbdTkJqh4N\/C6SlBlN0sqJj68vsVwy6\/mLiudNGBSoLUuJ4AU0LyB8ior3ta2WJup5Vtkrma9dic4WN+WRCD4qbmKSW9ACATBGH0iQpVd2HVcEwIPxQeEf2CmAE21rjL4Lefu4p9fXwGiWYckHwIbje2+3QAEttmySoq\/WLrtByOHHF4rQ2Ividi7oFclook2vnjOjr\/ykFsiXxNoxgSz\/HYfrdyxCNS5CBPz2dx7Pf23FUeKREme3m9AibX0las3jekAZuEo4EJ\/50+PZk6GctVYmeMJ2kV+7mRWirmCYgMtOmMIgqhzNpk6AMzuDuJxxNw9alf3DwaHv8PgL6d6MFY+wNTMJOmM2PtmOwDLKTd0UCBGWwoEuF5xSZ4FhG\/OjpKhfKJpF9rwhqN9mxb5X1bysGVHHrgXfzoqf7jkAKPNBL2OTs2Z0jyn9I6gFlT\/XSnJ23fOpkdo04txgRfSif1LZ5nG71z0NJfiMfxVFeEAheVkMXfZlvYljv3QFJFLPBZ9i5ypESzAYOF2EhY8JWvISXtqF68xCusiZSnJRmj6z+d\/1PaAnaroHJno4b55ezomcTilh4Vks6rc\/lM2CwgOfBK9ee501zbzg67PaoMw7DWDDbkmGW9wPGoW7VgBhBZxy0c4CD3Fe6A064P4I9rG59+mAyElmLN7DkxT0iL7eONw9IOQmgLBDsIm9GulQ2C7VHdTtIzyQo1c8qptFWWtlR9nTb08yNFoqtJD\/taAate04hvuxaZ\/XQJehNeonbZ9C3+Nid+urf3RkuYl1W44WbN1A8EwedVBm7Tf\/FPupzPJUGMhXXIjoH2+z0BpzR89bG6wzKW038BFGEE05RPCC+8fWAEd+OBNDpGqBWIpYE69zoUH6GlrHAy2igvOCydqgdeQyfdz8hGmOYL+eVGDx64+0XUoSG0SSoEzBDMtcjRN9fhfXyHviftLDJnNQiA9e7uK8\/F+W12M7mnhqmbnJlZptVLCTI1bGUSHZCiKzqIQq3ZmJ1NOd1\/2qzIIxwihtqYLzBpWep3y8WX8y9ddXAWQ+kDABAIv+uKGIpTB\/rr7KIbCBQp2ws2prZX1vfmeNq3wYAMWpG\/nkjqnUSYSC61ySbEmQPejWfgkewbagq\/1N3gFFcEbq\/85W4ZqoN\/Qf5yFxC3QtDUvZa5mcVEZ2GEC2PMa1d\/X4AEIKBryZLFfz66Ttq4\/077DYQgqSBQ2kv7TVeKbFpCAH9X8+qjMH6L7P2qO\/jgr8xxYv0VFo1dMtGX9oP7mCHcxrMXALPDkifHLlAih9QBILpwA4r9YAU0A9MHJJhiqPVTZOXAJYpMYrqRw6dyL12p\/OFEhPMny3zHSrwTpUCUf6zyTlmm\/tLXyeX7JA2mGhlQHF5UrBgW5xKW5uc4W6ZGqghSyiYV8GVAvidBUmqW\/nBhKzgdN4qGg7c3apfrKaUN9twDFKxh+SLHDOxmbPFZVvHu6wydC5zp8un02fCkq510OGgONCcALbyKLSE5YXR3XPAeZ1YA6fMvpcXSCrM9RaOiRunTdN937kroJC57TJfcHLSIeACSPcrZe29ivJY58HtQMu7TvVD5mlICfyjeGueQbjmxG5YTC4NRLou+KJwP7kVJ4MekVm09MThB2NwFR\/5+EPzN2yeM6Y8J2Zk1oQz82sQusmOXxlwycdWprpyel705stjkkaf55zJPCmafPbWSw3GA3vmXq9DboQmUML6WlAwRhAqxlv7MTqVmr6sOjy1019w1nVT10tNv4MUmiAlsxJqJDsFVu+ZbbOfSm4IRpP7ze5ZqZbxzgTmHXECfWtviJObNafrpsZrKxrrJhHOzQ\/92JmUSzTh6abBrpIVGpra8DP3a8U\/jU6\/a5JSIwFmw7B\/17X7Rzc8UMUAVIrCX8RxSrH9mZC+Dr7MLJkImBGl1uUAXGOUav3xZH5fQEFEdI46fUf4RfGQUt5SXCKET2mGx4Cx0Yymdl1v240Zzfwyduis2UuYk4PtH0n2l9D\/X80+TuWm6XSmZaIpPCEu8oDHhY2GxtANd\/NkedQkxfuICUUgl82SRZvfk99PRqMFdBteqOoVqjnmcmSI5wFu8\/vpxLDM98ai0Ly9o5ShKzDYmpjrZ0UWFlYm5gUfH1rnlf0I8KZzmeoM7xYvfeT1BwO9guqO9phUcOcp8C5ALVvbQmoWa29suXCYY64Ln7Fhffuu2eA8DWZ933Lnvr0LtQdP04u+h55KyFA7FdKXOHOtP8llndyszdjP5yQDgu1QhTCNqn4CwOoCf1332hTQw0dcG8TruuMKLLhUA1CB+Begfo4dDTr\/lZ8W0W4YvTlLgwO\/hXn\/A8bMQEBkc6ELYNO6K1N9A7yxwaSSHp41Gsvg5sn1x55ydS0s2Ez2tWA7ffHDwRo30iVm6ZNcZxOV6+IaPZ6Md9A2iBvL5ryfumkWcarsT3Ai\/OXJHW\/4tv\/\/f9xdQR+sl1XMP9H0ru\/DFMqx+w7HvkRH2+ndQ2I2Y\/sAte3J5BIoFg4R1NL9fCBksvyrrEjZ7myMKiXd8s2OnqqU8miiyj\/3f3P+aHE4Rx+1s3lfCNwlLwTogwm4I7mqxv\/9J9rmBfTH\/dDih\/gNjdPjiVcVJJcPXXaixLFQ3vHuvHowt1oQ3XfDEaT5QDw5wnR0OyJXcNiYuRQMch+bAWcbgh7PfoKQzqhTjy3HRWr5WyUAuI15l5+6Ynzs9aj5H8OHtVLZBQbgmrPx6ChOY7cewhNzBClTtEXslMljqA1HgXoPsk1jzx1DSUSm4k+SDSOK+igz6YDmxgyZ3+gCKNNz\/dNrMf81SaJMm\/5vpTMtt0TjCsMQbliymzHXoyXyBOWh\/XNwwSkLCXwIzBl76Tkteo4+34jHhHTyfwbY1D9eVOUuBV4Kb02HUu+1k7R1aPTH1AODk4rPzR88269yQJYQOvdFrkJjKo1Dq9bQvFoCb\/9ytR5JJ3q57paZR3wSPEBIdzL8fHUNWzuEXF1XcjK1QAoD2swf8UGtphx27\/aDypf2vZb1mTvT7vlU3y3dxmFPha3AJRjwHjf8YxnHaB9DgHMmRXLuNpWJHxtJvm2mbJ3Ut1TT9qyZlOuhewUcRu\/yZkfJeFJKW9WcFW18PL6RCT4IRXkukZWEnHgb3b5CsokVF+S3r8sX+xNqAWKQj3XLCG3HfvPAaUtCTnaIKGCtWbG\/B0lDiym+BuvkrCWMKBnzSPOMDxnD\/\/eA6hlwr0t5qc757TiWYCMXEKbiC7QkSTJx2kzMke6zyitCF3P65\/DMLb2Fxs\/9dJvk5fjskjWj1q6WfWS1P7yf8rLhWSoMekLJq26DnjOFWcA3TTaasJ28d8qmkUZv8d6T2YzFlUOxyBQIMWsQWouKVNqbvIFs3J1Ea+xNj5jnwwlrxMX2ymcFpVkbzwqLx2Au4LL8l\/s4kzosKqCVTwTaeym86TG85OPX4N8nufJCXvOHpX9MEGl3URAJJJ6LL2qK1VmI18Yv9kuvR7DseBW\/8KThfvmzrUKR2VSt5N6eQdDFBCylxC0KJf6GXHU1ZN8hVMmMxHhw9qM7zbeveQ14sXIyklLoqYQnwp+B44GiH4424027iL5aeI0tNzi7+O+EzkyKIf87pV8vCaf5OE0lsvXDZ0MsgDzrVxPTewAMovcKPA6SUMz\/ruN25RPEXc9t680xoVOXHei7BG+N\/lEbEeBY2ZNfzr2lNP120De7\/69\/3\/kyA19r+gOXiyroRU+jXyAohXagr8OsugItxX0AjIADwDq8BifFpjxfcNPn9nZfEnvmpn90MmZ4j8pbDT8IHgIVb1wEdC3RAdRYqlOeUbczjMi02nAfAXn\/5FYy\/wQlJWMn+dphDckIJHMIP1vtV6Po8XVZakADZ3ggymKu20u9fHQtD4aishXeQcfGZtakP4jNYcCoOH5xviTKyRhgT9EdHCRqBEUREcNHwMHboMGZrNrjZiejtVoxAT0sW7upqQpkwwDuTHT9dH20ZR4rQlZtt40Rab3CPbOMhQEp47p4DAu5xJKukb4WhEXtPPulw3gH2PV1L3ciY2k7b+XEmuqj54Gu\/nAxI7W+58T9L9fnvb5c9r6WMXErNEO9D\/hoB4kq7287D+NtIdUsQrewMqcnUtoLicQDF\/6v357QZuTJkCScmCQZ1zKM8buWu19hidXRx5wjITgxbEcdU7Jkf\/zT5LmqcGNcWl9DwlW7DLCHwf316wn\/Gx9D\/NKK0iAhSrzAdZt\/8mqlb846Z9vZ8+TC1Jr0dt2YGDOGJP6g8bkpvrYwVmD7FQajZqrB0uqNhzkifbaoyPuaNzMUxzGBqS+CrU7JakFdd\/dz41nYvb4FJvWVkrNlnqQO6hJCdUdeHq8gFgLtxu9xHrCUGJ\/gXMWa1gDYEQlqr6OlWVOFVOdiTWWiPpFG496a0RS7sOeIRbRJf3PbhLhkVWksbJNfn4DqPjU+0GGg9GuzcAp3AeZVHK4MsWlAH5SPhFWvRtoX3rF2bUX7fFbftfAYTpP4leZZFWC+MlcP4iQ4SD0P\/TfPESQcD2r7FGhJS\/kU1ab10558Sa+dgnia8fJWzbhlSLJCPe3hmUdT1Nc9DOGbtQn0Rv1J8vAG2twfxM2C7Z5xbaYagp7ApzfpdlwE5I0pxGhn5LdVEV\/ct4XZC2gDCVR6a\/AntMXlSVmVR6rjcLmS5Kdd9rnbLFcsTn5KGnXPk4cd0m+wofIQdHxaSfgU1NwTFR78qZmRFkQBgDa6F6b25vZS8JvhU+aQoJZixtiZ1zhPekbCPYDTAd96u4qc5Q7lg569bY9DqNt+DW+61fcNXK\/3j4cmAJswrp4fUlBniIvlheQHx9IZezAPZ8sXrbOtQX\/7bmDzw72k8n5xGOAi5sJbsWKAECqmKcbTXuKhP24Debo3im7GoRQohsknDLc47KIGg2jtEna8bQSbB5ognQE0xRVvibQYyWJ7EfJ74I\/4OiwXzq2\/t+\/n88eCgqSpRn6TGLMXamG9koOKUHvwiGjaiSazEqBDjChv3ASwfiBRRi4VyuMlnUR9u4PRU3XMGLIIQqVziw8+e1RDpzAmAPBprKKcX8BO8bZhaY\/5r76cshJFCZTmfRIdIUPS+9nfl9yBVFD\/zCbBl30M\/vwmshtxL3lKcpnA8CMFIaYQ7SdaaFkPInLI6ux88a7JgbrbicLKnGGTCiHAKw7FHsP0GqBT+BrBLeNPsnBWSem6awNxr4WvQboPNUZ2mDrW5Lzt\/NwVnOm58ZLYUv8cjt1ojZLeG0SE98lvyxE4rPD8lbSTN4Osos\/\/Po2tgaNrnbyqYVZ6Y\/VBiRtEZFMvLpYjy6nQh5gTohAh7srvcYZaiyHAtpy\/Nj6wPvEop\/c2+1uBO3WwovxVultaU4FNiRmELBmqSPvNQRDIMg96PGQ8miYB0hM5\/60czyHowWvBWioViPdzYxwDQLP1UD\/hd56EtcdBizjYfL11\/EAC4D4dE9ccYEiYE6JifAz0M2ArsPhGEqLrj2gzXn9x6EAR\/5Z\/RdUJSYb9xdU7ZZhMzybwEZ7yYI2XVAlsTkx598mNIQgRJSXTUsTPD1OZoU70YG3t09dzSEvhPfFSd68sizxz2hasG914QPuRLtVdtj9wE+Rxq49CQhmpGXa43v2SnsTxlTGTlLQdj70Rw7gIrGrEmu3q16\/MT3QGJntxLiFmYOTNDO9RaWzLD1W\/tEtC5x2+WWaFCiNvFt3UOtGlHCFjZc+NLovIC3k4QIPl2RnpL0usLkWLbVnad9qswIZEA6nLgnXpQGjA2EOs\/Psk7BrJMGUQR7VIyA9gI20c67Zcp8ke0evYK7foFGunXuGm8MuHLXkU9dKcEjMvL1vuHltD9MMQNvXzIAqEBXqB6kDShNh\/c9B+3hoBrfFQKZcsGUN2IWhNPoqhgFo3w5WvkjbWNBHbZzbMV85xEzeGy6wJyZG1VdmeyjEEnFDKZb+VlvlPBwn7AwCtnSjfxlF2gTw4lG8JLRtt6tbcflbj+MPeqJJ60iwGq6Xwh9PIdh3qvDoxsa083NiTT6lGXPH9D5SUBF5TPibXltyGI6IGljyrwry1bNLKlchIPyrWdswwtUnbApj+OInNQxvFNicyHflwE9pR9bNHqzz0K8fg+XlQ6xqoQHBX6Hf6XcBmNrHLsZpnNxTmSkBOz5TZ6eLoHUdHkG1C7rdnNe1YaVe91BfIh5U8eluUBMbLb65XtzuNSwb3NDYcCBLBjSS\/rcH1XKe3Usx149o1n1P7DCjjjRHbZ8hg8X6OzSYIllMESeOyjQhwnOO4gT1N9HZzKpm1NP1U5arE1VOSukZhEeSuAzjkFu0sVbUfsr0\/vL2QZksIXqwC4FzBmkgTRMhn6wAt3lbZB5LKhC86qvRBP4DHPo\/7QybgUu0KqGUkyuzmCS\/Wthh91RrT+M\/cqK7e4DWd764uT3vPlCHPEJVmZgOu0xK95ZHvu2Aq9j4wK43kU\/rAcMZ3OQYenNZdor7mrBycpLzlAe5JI7Jrgb6XdA9OgH7JkJlWy1FEQFIVvme0663naTvnaOV0xikDmyXEnrVHkDCs936XX\/6nX2nxxS\/71Exa+L9ZvwSijWQ+HWNB1qNqXf9I+keakLcJGjc+L+cz7PQMd9d2qBgdiv8JB7yXO0bIzjAaR5rz2yS2HZ4Ox83XJ5sDP3gbGk70mdCLjNn62j9HO8xs\/XEvI3NbQJSitzPDkmWcnQWd8Ox2g3hFD9BYshLHSk0LnW8kYKZyXW8I5V3nzZcBpJ4WHQpAu4C8\/3KbMWpYhI+I9YuAKcEAAESnzbRWkoyl\/7xl+vcrO1yS4An\/plDwoxmlyukzv6RYyYrwTO1pFfnSNtTD2FQ\/y5FfeU3dqx9VsCMHTTnW+EQ\/AvmBhFfy0xBkYVLoGXNK7nrxEEjukcnYMBw37\/8eDTqt3IiNrMToslB72NpklrdimlIBRXjSbpQOhS5twH5V9SQv2b3DACuww2raoxMGB1FG1NY4KU9fPvhz7fkKOsG0LbuhskTNd8Io\/dQc9dI80Til1MRju2GfKzYccTNgI7TAlQyFpZ0lVuJ+wqd1BG+HmQaa6t18dm+aB0+xeYjy6e2A6yKzF0RLZRmntq3xO3\/hLulvX4tmr7+iMYbZdFY0iGmprXwjiJrXYsNw2v6fY8WSHHo0lhK3NzECybk+De1mupmg1ZU3gH0wUKI6hehVb0uHF3nqsOwAkVde\/10HV71DXeVw6WaCU7aT7tw1hmKcbLPkUusRnhJAlaxR6AcJMSoOypZ3PMCOSk\/tErkJNYkMNaOr1+gkSt2MCLQKt\/wFuB4DTMHOJoYpBa0NE67jdNNLDqF5d7X573t3YxwK3j76mPFIGgo8j5VbmUBH88AOc7nIARIJnK7fMrdLW4Q89ZGt6wPSpzfLfphnfrXxBFTWPD1uaPPnFT7Ztg48OZaCjX8qlhuVLvZJS7k0KzKXStgLxy3RZPbfzcXtc0a+sYqDZFzCdqBtLtlBqWieqU0s2m\/OGfW0zPMkIvJqOEEY51OUfr0MTKlEpo6fi7vo1XAwEOTpfyp65yp9KTQZCFjRnzuYr88GKmbwzg99saapDaxELJXUyffowNXRaIW7bRyYEa3jU9fBB50L4tnBH8O1khO6AoVRV1L0Hrf1h+H4oVWN13iGJuXSyegb1P7atVzE+GxyxG38hm84rx004TbBNhsSK1N0m\/qqM72mS0uGXEVvVF\/CpSJONxgqi0HKXUUXYslDY9yqNPNSrJWz+xFWz\/zKutXlB+8Bm+oCyeisNkuhkzA0NOEJM6JIHW5VOQKgRxbhY0GRsUC7sSf7oSOSNhXVgiL+eMtkVF5b1j8tut4eFa42NIX2tDsCSH6agIgm41kw9E1MUqXZzYtHgl5PLNpd4pbSc7hp4NBenhFVWBydpButMflwvIbyGDZVM2Q7ECLDwJd9gk2CJZwWDus5ihON9HGyTk\/Nw7ZdhQpLfeSCzOpcTUkIXV3s+kMDTIcX\/XCpDrA\/ZLEP1QdiTsexTwHt5me\/kgDG8IBUfpWO0YJlD4krf6gJ12pLtw8+NjVnoADykasRfe4Ll8eR+fKoMssVsmEKVkK4wgVJbUNZEjImELiKfLUt85qfdJ3mIzuDTBEoTI0iemN0FaN4SteJ3h3WkSJppN4k3Pis6aEsrKs\/whr9jJXiPHRVpfVRBs5hOhr3YRGlYwu8XxXwLW3cOQPTQKtiwxOjtLYd+3S3UiUPkCwu7oHamOwefrb\/xKua4y6HGP6+q8POF6mBQ94Du1Lfycoe1JMN9dkt8OyIr1QkI2gyy1PtiODKrdNPi6liAIDtNGVm+cRtmxTUAv6luTYQs1OBnr9HT1hqGQ1ChHCm5LqVj8SngEszcPpiOvsDzIp833E6kt4rc6E9FfpNkrx1c7mgy8aPLDwgEvq2Dx9DwMMlHLnW96vRoqQX1jkZhDrm1flUjFrxuwxXFjihrrqS66uP0sMuJtZAM48QgXCsdyGqlQ+5lsilH\/zsmm8LU5NcsgMXPrsZU5bhlXLbTHlXADFA6HQbQmtwNP2ZXCG9SNFgTv5zd26Kjzk3XoQpF8f6JAgQBrccOA67snxKaCCxFCNZ7M8pJK1Aw1K472qLBq\/FmRKJRKZLMinv33MJW+5ydSmTScCV5BC\/nD3C64lh6RlZ82SKHcZ75NTCwDGb6jRrPRemO1W\/TryEUte3SYojqL5HFZIwhyQ8vwco3VehsgzVraLqhSDVXBrawCoNdwUhVqFyd\/aV7oGGz1zBKdx8y67VA0jkqJQSS5v7uWOrilUvi9jeyQ+cnf6ce3L2H\/hxZAJUtYhzCu1ngJ0fyOXO\/aXUfjChRM0fipTmo9jRxAem1VhqcfvCktYcXayONCdz8v\/qJLd\/wA3zB1WOMaC7AnCZ0kY4YuP627ZhmzCMnGW1yD8N4ZwO5SU3VTL6eZjUTWjkUpDz4L8YLOrA6qho+BKSfJWQoC8Nxr8+QSUMBgUY\/2e34ceOqfiOJ4yk88HMEMDDJHOzeqZ2VOUsCnnR79tbOpol5ZtswWh2WFYRTK6uV\/\/31EYQMPEI2WCmZx0vHUZeXp9WsxBfij2CG\/nXJbLNqwpDUK+7FtTlfKOzDxzZujFEpKT0qrm+kKnhKgi5WuhIda9\/oNtSyr9o3uA+97mKA1nCE2EI7azaxiiv6GU6xm+qMKn4dAQEh6cVvzeUbQ1tGpArMlGHRZGWs7sNowEEPNLzJzlRib39DSrDpUVDw94nMCIiVqQyL6s9Cfk7FJxz2h7yjEev\/ktrXt4FpvJY1hazxG2ckBcwpYBkRlQmaCQV5MYdeY2Bn6\/QLVQmrVIIeyyDmz26ZLGAULeNQoQuzN0Q0Gq4+EwT58Cv1pceTkhhaD56R95plcYbAGbHsKkYJ2qxQ1lS7YuPWIGfHN54WzxX\/teazYLNv4EDqVO8Op\/4mMrnT2LltqcHeMzHNLtg32PlP5wqtY3dJAcUSekyXnQRRDahkbe97vS1rvdMCTDyC4iV5NNzZ6D4kQj8b8zLY+EotQbjAKWymzJJLs6DGGH7oIrz961kk7wXCpr4JhOCTlHSKFxYqK41D381ZADMYeYzWEYJf\/D\/I8KpJz+twLPmQFrskcjrYCV2T4rSJjaoDt0W8jf+rZMaKQEQPU1PNMn1Ojmb20IXseKS4hxsNjuQI8yGWOIvLhP\/YmL2lqFH1AmOe8e0GnBia+t4UYfSSamrqq+QO0vU6ANchpLFyEtGfqjAbl+FxbzZEmZhYLdnqVlxH35HAEm3C4gEoWYV1m2Y1BzXdteTB6vYoGHG94MxWwp2NduvqrxoIHJSD3zxNyAye+BRe15UxQvw4c4f05WKaSTb0cRHixxj2AZs1O82q4G+3cNwfvfFhHm9hZ8qwcz43bwzkaiaDM49WPPaXfiuNJJOjHLuV8s+fAAlqEAT38Juiw6hWd+Y5ENE7wIYV9miHksE7M3Xyrbcvm5C9dM8ItidHxVDoZLCausdxG\/DggY+XDdX+nlyoShI3k9Nn\/Yzt5kEsjdmiAeyLb4BISQIcoL02GdlEC2\/HPVjxcMaec4hIbI8voEknu7vlISa0i93KCWQUdIRMBWJnQgjGkn+uzYqoGY5gXU10HUvYoeF16Nmfe6JNZ1QrsVo2Sfqt34pfBC\/UPTp0RXmCIs6dOtCZ4E1xiJLq76kSlIlItKc2JdwAmISlhGbyqq+93gEOp1GJIIlXkhOrxZ3aRJCPWH5SZA3a0wv78BPcX9F\/WuXD+ahb4AX+mQf8yI1J71kjUaG\/y42ZYxYfXM24arP8XECI2zQh5\/gKlKisX8ev357JEjU9suMjPMVBLrjZUGy2kDngCwD1RRkmoZ6dORDhpIERbSBroRfFZ3P3Tmco7Wyu2rSgydWp3hUvTyaciohRVJ8+5wKGRV7jwPkNVSiMQVO6ubbeejZr+HCb02zxIm7G\/wDsyT\/bCh9n8Is6pKy5uf6NHB8UseSMQ9PpUL974koqqjFR9QFewXO\/IQVbLTckiniuFwFPgt3AKOB60d+tun0bA44XmKYrqQRZov7dkJZif2+Mcc\/Rolrw78qmw7yilqKNYSXj6V+KTN+Fn26h5OKxBLVUIu5LXTLTuDgkT2mqZlTOdFJKf5pNpTDlUf5nQoptccsVqXkQzu3pgezyGrsqp+qot1t+IjWQLQ+EYWMq1YaaEzBGuPAolRCnvTok96PvQwaA\/a\/evz191zDzy9mweh4zJZ9SWFna9ltFTiuwWeQ38YWUOaoQ1VDC5uzQyPLrlLsOeWi3MKhBwHTN09aQyi\/wDax+Knh3i\/V\/lVNvOUIY1dWPF95+L+t4jlb86LAwybWJFeCqnOU+KUhExxZ8MXIoxpkRtudr+Mdw+YEKRdQ16bCr1OqBgxci7Er0i9ly2MvOCHYEQhvz7eN6OO5L3y89d2X\/NRzcZaQ2hMBcQlD6LZxRjKE1Was0T+NmvRFte6WmA0tpPcbNYyD2ElP4tzpTxRA8zrYtFBbfhcOfr\/Crc0XzyZEPl5kpoBbPCW0MtcOXnqROuIUlqvmtfFAq5lwg8R1BxrzihfEE8lpO7bBsSMdOEG+5caaXaIYjKmFxW1KjkHFWIFu0a9icBxz2CjiHl1U7mXraZTs\/w9Bf+vv5rPLX4SkKLcb+fuB02d\/+0bcm+76g65n3zU+O\/+RgCp6oKORdG7tiW+OuMYRD6OUxCuhXe2iDywSKVQGRpLR1eepnRb4ysOIHTOwtQRlP5YVUFRXab4eXkjXZ6svt47YyLhWaLw\/SC1WqdaInhi\/BYySI7URdHHb1Ts53Q61AgR+DeJrTlmD65SfTMWvVhWH8DvWa\/wkEgySR947AqgSbfLOKUl8HW5t\/5et+cve9wVJj8Rkqizdy\/a0nDkjUd9Zli6NFPj6LoVTG9Ti5cB+ZvN04vG+XbY2BFcT0C5gjEdE5gOkdL8bJBTV1YwD4r6BUUy9X6bPwtehbItMTalvAbZ7694Jh9XzY6SR4O5TypaQ\/qZb2M0ZylWnL3n48Au\/GDZLBVT57AMC3FDb7fL35VDrESsubcqU1FziscZf9cGmQVDZ\/d4aypUnkkLWr6dzxkH5V0881mOlh3b04BgDgNo8FyfBF9VjZIwHXHn4ngSEtVYcZDRogC3sauyoB\/HKIK\/jalcXNoNLO9ZruS8aoaieczu+VF7\/InHwBoHPnAmo26gckkDN\/AHoUNCzya+jP0Ux2RBqKwgablgXCgOXx88M7LegZWUJvx+uctmLC6dzgSG\/Q3qAnBkiWaByJEsDTeJCu9urGc1RW9Lnz\/\/XC43TYZbHldcepeifSK2iHbgOZYs4KtlibjovzqdCf79VbDbbgGZOp744x+Jy8JIsSQEbhAjvpgGwqeQVKtqHWhWrAld8W5WxoomwmTIPqYNo2vSRmuYqHPgWFsSA2imXVaxriGaQKwlK+JbZIMpyo5B6coEFyJreKFQ9xKZvOqfOa25MLZ\/3GxYEW22ez\/3VgAy+05WGuT3cavFTGHYT67E\/B255r+0In7jOlLmNh+pQ1TWKyBaXb1mR\/y\/S9FLAXJeclkpyr7zNpXE4zQ+2PRqFJbklLvcijM7d4rTLclJb2Bfbu3J03UxOoavuFuqNOOnu8CwvDZsjeuPWeds3x0ch10M7uUJ9LnIeAdZD8kjrpeA94UqCSS9XXMv9NuANlHGrOhE95yMHxZDGI50MZbXlDOlJ2xNQG0pC6hMImFmih68HAH8F30yH5GEiNDEWq\/EmAZ2GaYWOmCyZhVK62ZXNjegY+2Gp+tVI8Rtb0JNMl96Xtf0NMzRbvoujfILKnkxdZDodhnxpEIUEnULFiKTj47m3cjmUpFiV4NdAZUEwGyAXoZuAhpwrpjd+9bvFOX1CvHXPKgTIjxh04oc4UZmG5bw3\/PRQ5H0A1swR1vvK9FBAO9QbkdbVRb\/XAhpdMN4ijbGOYlu7xLjNNco8WR8lffa9SAth0IHRwxyqsIdh8RGH+0Kl9WM964udeIPDy8ZK9wiUsztty7NByP7cOxE\/ID1097MPPuL\/spKDgxEQNyFP8wv\/mOiuZZlipvx3clY+aTvbnGtaERh9FOP\/Ej5dP1NBHA+AanI0sYG7rueL6mbrulDUx4UARv38pYToKoJw2bkZGd2esymVyW9lXt8mHHgWcvNZBY9WoqWWhlpon9EuMGu4IbEc4OtNZAzqHVAI+MzZrOf2KEabuoFEBFsNvzgFrYQnyM6luKc4kaI5B0CoykB43mE1tRQMbxsUWN35Xv7GyrXUMWLFxwrvET7DS92R32VP+J3oALwnwdd3eRPm6VVzmwX3td1G1Iy5s\/KyUuGVdraSlBqW8sokCznBSli\/8GItY4gu6oODV8qZMblrSh6H0Lhqu9vqBOSILZiM9IR\/zrc4bCDESvPsd6X5BEShg+hgzIwyxVrRT85xa212QLE90sTpbcv\/gVYLnjYGqa\/27uEcI3scEL745lOed+3x6E+Kk18gicGRz8fd1AVBjMLR+uKw1hW9GWJSmvNDdlM+b1A\/m0aIbV86rnuWTvMlfxFpr6RlDpczGG8xw9ruMVjaf6WucefCJ8Mm7DOqT27xvbWCfQbPW+Jk0QMaVIeyq1S+Bpiz5QbQ74HNqACIb1kpfsq2ajJhahzadcyFYDYL7dMyvJsFA5Rhn1tCJFE41QoKojBTeyXGUXapfBpQk\/bRS006XSSYkrVJnRyS\/K508nNmJVuapyiU6Rblzomvi5eIX9w0JvccHaEif4MytFFinvIjpNwjdipWUmHwCnTaj2KxS+zplD4n0Dkg1Idey88Npjeisf6HKUi6ZB3FRhQUwcJASaq12EcSJQV7GAFKI2zby8Y9w2ON9cnujZEM0AjSAZ+2hZs9k6F8dSy7s7L\/s0HJTkbpr8MKz+ZxXNbHwQlZC5Sh+Pg0z7kG4Ty\/m1hGjqXa1KL4WEXqlutbh31TARPXqdGAtjVr+LLTKNv0f3fClz39zVUqCRgx2Oa66zkTRU4JBET+pwa3mZg2nGhFylUR1ltFt3iYF7GZtRVFE+BsR8lm7VeSUnbVpvtIGECYQyLZzpkV2Q0OPi1\/UldyzCKQ9XzCWGK2Vy0oO3EnwqYbDhpNTtaImK0cAExqCw1xgjgvRONrNKy15RlV3EAH41FfPZlIgZuacHZImcIqvm\/gKqEk84OGhbhP+sMifoG8MhwYHVkJZDAuB7qXIP1tsJ5zdLOhXshpozbWlVctAEuG5LlDJYylFuGHcLY7Zv5CSut6JLXGybYRBwiyrqXKVrJIHorsUJg7\/BXUVOdznd+pKYt7su7pb54AcVyaVv1IdqdEEHc8iDdH9MKHRbBxHPNCmCBnPT\/iK5uq0zHws22HF1kY6XZSMk5onrYTWaHAou2j7spDjrT9qiMsgNuBLZvy2MTzT2g\/NAEwt0N0UonG3F3wmj\/CwSaSZjTz0fOYfh+7m\/nhQf62+grEqxit6GswJWd4ob3FVIbGM5t4YrwawCBau+ehDiWCXWHGQDvNQOC+nG2HSWFKspPkZHZfogvUYIG\/5HpYMaKPo42c2ykkty1dIP\/5FI6UYf0\/TObNhV5RAkkq832W5AhZU24VQ+n2awpy4pIdKg08i1TuSg+tv6cw0BcC+drGcvlH1h98Z105ItFpRkAVn7IgkaQ5VaBjRlupESIaqbrBA+PgdSapOjT8QcxwzNCMjOc28hcyjfNYBEYfCfJ0lj2KfKh8o11k+vrpVoYTPNbIoGKAIr8mGJd136V7s046+Tj3vIAxPMWo91XvUwV+WuMfpsKxs6f3IO2Fy2CqaDtRkaHUoE1bXwT\/Acy8YMTWAU\/jLsT7G9R8UX3pyTOYdrQXsF8FaJlF7+LNqt4akE0ZIBUO8qRzogx6B+6AtKEJZreS+MiAwTJU7fT8csbDB\/8t1WfcdWWJn+7xYUaMe4VGVucARLpmtBYf5M3NfxnLoQ3YIdjWYpWDFYZ6dviqPiZCSMSqqAeWFOoTl8MYpbXMw6caJBOcO6dqzS3Yj2FwoyHCOIh29xeAEIFeLN0W4Do6\/v3wFvZ1yvdK\/ohYTbB4K4tuv1szGnOv\/NNpW1XkKab+dT3w4C1z9OWaWMCUTSNH9XLuXzhUIw2eXT4YMYRlkYRpQEn95RkO03bieIMY+tJWFQwA\/hM5X2o0aP1YQASKMT9jmhOsnGNp9JxLYFrDvaG8Q4WZ2+jYJiKOTgV\/3DNQ1GMtB4sruq0nAH+j7J0+kpLRpym1r5pyygi7lVKn\/Q9NvtE6Of9riXSDGVCpCA45e6V31i0FdIHzcBUAT39fTvSy+2xn3PLoqbzlcrc4wbHNLKg4iFklvEVxhtGeRb9Y2uYHCT6XsEcXNW+1zoNsLbxMPi\/FBMCwajfbiV8mtPQzcoA7QBQAHswhhkAPl08VSVT54syqzNCZHIEu5GBK13jzQawbMtCjkiKZZ8jxpkIWWsjWLioShBm8okNkBJG3esyX+vc0R5XLUFMPcEFjhYjgLpIUaEWD9eHW8fCnjfXfWhnYYGb2eUwk97OVdB4+MFYjj1f04MrCloX5cmvVR22do7n5nDa0+AENNoLbw2M2rKWXHcCow3hv03shNAuaaIJLUNj5WUVWyeOf+SjXWtyE17YKJQj4LoKJZfRaxweb2DIR2I\/AkiDc3dK6ruyAEJekFU6BpsxH\/eu3qvbcaTtU41WQE\/RDI4QGGBjn8SapQ4u8ezhbHPWeHNCqrkNMRa97YNolZ+j409l91GA6xy5w0kZsP4usBjIL4agrWUr9ELdF\/02zuK8KDCV6tmKVYmM\/AKEygkVbrqILGCdQ8aSPb9sysy+kO1BYv1EE4677NxA2e4vB8M5B26U0Ow7bcgCXKmJcA8YgQ4OoKAaRzpQkXDKYgR45G5HXJQckuNJ60XFyGWft101jBS0y8lBLxr3fIlmd9t2S3WcUWrw7k6xCYqhsK0\/x+PJJ3TaypEXQArFpTS7WnUCdxs64ljgKcovcgt\/bsOOLk2a5oJdi0dwwHaKcKgWKw5hG5kGjjiId8+WD6JATuot2q+468RM8efxYxI4IggWlG7LRsx5oecy4\/Hm3Q+WOsohMbfciKXQIWqXOy7UUI1oAKN9Wgu8l+JbKKjDKKxWkGIHThI52PXyRFJ83dn6Nh+g5rsIf3rLZPjWfjnH04oF5HQP7mD5lsa5K+aNTh0IOJOLuvJYIgG18WlbTiSPsXZSbZgCKGWCWiPUiPa6BgEZviilHS7PxkYmSgSnoGnCPAhinI5IOtX5FmHS2Rz8E7B3C5W8TJbJhz4slCbNI4MMoESQGfu+GBR97BzLKytnvXcNRNnp9xmd\/45vWerI4S+Mg424Qe8XFhOPPXTbDefg28GgGGZg2s92D9+1JHAM4NPci3bcDN6Qizc4FEKux5WK6OGvJeeApIy7HuA\/eEA9k1x4Nmb3A0\/9X5Q\/brCFZiunuG5ilQNlWfzoCBHU6jG6uwJU04U+Cr8\/Q9uPjM8SCNA4ZI7SnTWANyaiWSWBxy2niwdhC64B7\/x6wMZ1zudQnSqiky1Pb8XYMO2DTXiRqbs7kpzhdP0\/iDRRAeKQOYBo0XGUwxYaR0co5\/XBsLTqxQ6FFf4o82doJfzz7hltN02o\/U+fsWOdNFgJuTn87fxNoSv9Zg3vZkcSiGl6P9SzwZ3\/cA8ppSSLirvQjux9m0+YJo9E7iPquHxUdSfgz+peSWSYn+AEKziqQbnfF8I7i5WSnvfp\/H2MQ\/\/HscB9BV\/JYCqYURs0nSfBHdPqZQF6BfH6bJgxXrXU9tw15bPLenEFZHDOhDbwC5Q12vXXF9g0ApRNbCCNBkvBjFJv1yEzMzTp2X9MlTD8JX+La7xwsKpHtBbPpeZs4qbXxq39aOhns7kmI3ivuqu4cX+4+3qfelvi7FM0Lz8KA22UW42f3WUoSuituMgym9OQnLZxGqVElbwH7TutSOQR+idvpxNBgVjWjpug94y0lgA3vORTteVLrUokPb\/Cx0JlNsbU5Oq2XuVgGja6NQb\/PbpB8DQRW\/oaPevJ3j12224P3Ee6DouTyg866mEGbC51q5nF2GzYOktJBaDtDLMGhDSbHO2gV\/fk8tls1KeI2EgB9NueUDL2nRYeNJP0QxDl6aCdF1JQJF5SWA8ZfU+SDLKsQP5AazRlz1bsEhqYd4QR9nM6SOldUlcgWrws\/aOmj2GJOJGSmHP+\/PPBsgcOvZgHE9h2+TE1pDV\/PQTe8bUpnax\/Nn4CmL3HxJNNf42l83GXLVAVXDLN+AungKEMAuaRVblDHIcSpD\/mRP+Z9n54F\/zwBV1OTxjCVpWjpG29pe0saL2Uh\/JZmCO2XF291D5IkELXS51N0hvGTalAgIGGqYuua5gT69fi4639nbPd\/f5Q\/vsAccdgpvzmhkexerSZwVOip3I2eBm4mSgXESCX20tF6b9mgVTTpsfXSfBH8YsglYnx1otvCXhGuJSn2OFLNsZILkGiITGoN\/ig1fE0fYQLbm8TD6XbYDaGe+VP3hSqEKAhedr18dYiE4UaOLELXO6UzW6ZJJtiL8BUVIVuVg18+yBs2sSyGwyy0dAsgBkytOZZJ4sORVY47c9nhWWGal1EPnEqjHEJQ2Zfo8b+CoBxAZ\/HBE\/FfcWQnvqEqU1GPhpBXSDsZRhISCUfMjcfQ58cdzClpyZiyv+mUQ8spqu2Yqe85kL3K5amu\/9ogDNhv3SyHZNzVEE173JgBGs6JJMPbIJGRlV1+ew3VVcEs0xVHAoTrO9Zfs4d1R3XIlCM9N6BlymxaZgqihpcEqHrZV+Xw5cJVRCK+Xqam3DS5vChHY\/OYIv05MuIvC12kAUke\/HMtI49KhdXEjx4zsv5wbUoPm9eOJj+SIGGXQKapycya5bWnTS64jGTU3S9pYmfDVa67PM\/jrdcNDQg7vAAbJ9wFV5zu\/CnAbmywKuEMHvdLb\/hiTK0d25EMqhFbPxLhNb0+71FknwIU6iqnn\/gDM5yiA9Bvja3W+QVPybnsKodeP1xoZMa4szQeQ690K6+5+V22h++Oz+qxa8jc0dbF+FTbKGM2YV2fOr9bYQ\/2oU013ruDJ4jIyey0q\/FcsfmjY9uIKYS48MUs6lJWLzpg8j9QVPrvn4trO0v3BIpF2HyUAVFepbeAg8jVRt+2+2wNf84jMqpp8iBu2e7gQSq4jSuzSqmWyiWh+j+Ue3\/nkE77OB86tE7ednrUH7wDyOXJD0jFUHQgMuuypcD2DU12ITfdLK\/DzVJDBxMOZfue4SoAl+DG4Qj4koD\/DwwI6rC59akKmIWq\/nqvFxa0091D\/6ffGa8AFq3P3W44r7PcWuvSYuydHcSJeM2smlp9WGd+bQeTfPm4GDtfD82WZ7DIn3jIUg3NyT4XgRSM8DqdA125G9rGf3PgIPn1OyrenpDYE2ydFQ0\/Q9TjUN5k5nSNlR8uDnIxaPUiISIf8uF0xOzlRUvR4klvbtHaFnmcckMEbJOPUKkRQgdba0ILE3aLij9wl3nKJZ6OIBQQajfa2PvCqCV1GxivWUhpdlZ2JmdubwSqerM6BAuQ2hCQiQXGL4ABljhg0Rcz03qs1JVOJoezG7DbvEFkMRKkypTEzsrzBCwOAhgiEDOYh0rUdMi\/sFvlSS35JmwvkfKq0wd\/ZYGCXG35H+XLnVxcZx0fdbJpftEzB83Box4T\/7QE2lqjedG\/HC++eGJHx4535IRhneL6P+qfd9Gy72shtotu0Ci7xOty8sYfDmY8t7AmIlBcdg1SCHq5YRW9xS7xfNWDkUjhfnSXgjNFJevNPC1y9NWBaIbwO6CnOgNMsKgHybfUKbwPkFPuNRCmkQAMq5iGOYmwB1FEL+GKwGrnyXuMP4Lx746FIIagh283UkW+uxHdQXCj3isW8N\/Df88xoYcOLmL78rPn8Ps2O7X+0Z6vQMIDm9EUiC3qCtFTYn\/uAwW2XtKkGILbPRdZ2o0Un38l4YNkCxCXMjyCyI2UtKEEeaL+a05w6c7W4y+cz1i7NyjP7TLiRFpJ3RztSqMIBt3pCo+iCdfk1rNe5BFbkrb4gJ\/zt0sFmVR753lDwg2nHrQqKRNDqObNCoI8Uvgbvd1\/xKuk8khOC68Z0V79OZPvfnaiS\/4te5A9YGuzKefOIC3E9gnjQ8FU7aVMrHVgVBQTWng2kp83Cz8PEGT7v\/JCluGulxbT14Xf\/ygeG+fUJ6kIMKbJ93l8PuDwFWD\/mcyZ1EmyEyt+cxSrUHNmDW\/8zIztA3950fJ20erEMEb8eJj0RLuA4EzZ0jsBbSPG4mTaLtgBm8D7\/t9\/FWszmnlEm3k8Uaci3OKa2362XR6syfI7I\/xbDky6XWO8y0AzysTbzzhr6RMtOiej6Zv6q+mwBm\/07p+DX8VbXHd1VqQohTXEDKHIBnT1B20mS9iQFOKyCDcf2CB4tw\/vYh8WKkZZ2CBBAi+pwTegB\/5Jo9LJZJhnYAGfPndYNIeZ4FKYDsrnShpvx9sPzZ0aLK8VFss\/ZNyNRHG\/iJC998FcHRNqLfZLolVXwZyGsc4i7xRWFQi\/MTEXixL9b0u1lH18dywH3p53TXr62nQ8n5GKuGVhI3F5CM4442M1M2wjw57w3GJwzg3RS3\/17lO+kNUXjgAtbTcfDsfl9BWrBPCGu5SVkmZnW3di+1cLoMxitE2HdSwU3aFeeCBLCjFnT6Y6O10nNfKr46Y3UFEWRxb4bf9fBkD6pwsGiU9RIRC0npuIjVrzegK1bIbpahdbnxJxgAAHUF\/5zWHoXM1QB8LdI4O2DBxe0+DR6dW0tLdYOxm50xUAeaisdueWpsZyxqp5LmpVi6CVdlSy4krdCMqR8yHDbsEBiz078A3naSrwmcEi4NpUrG\/mVOi6XNBJRKTEiJ9TmVLm7\/BvakI7cE\/6eKQPn7kO55eyPDk2dzMTgJJiGZIbB1i+Bq7hVKuYAe789xqv83iWCu3c4WoCR1in+WpaY5oVaIKRl4vkN2NiJvW16LwSBnkUDHZGqcT47adV2EldVS+YV0HhPvbcIdh07twPIfcAz+qTdPSQkfTnjcTB6BDcydc8MHkKa7s81CMAs7NLVCtjgXAmzv+K4cfeXVPFo5FZuw5l9LfB7bY9DFaI81F\/\/6DsRJSkl6ZRkF38U9UaS3Q\/IAlGceKiOZXZieydglbqDmvodC\/XwA4CtuZ4y7t6eIK5L6LIsjj3O7j5TUWQdds+4l7j6odKdmzj11J9H4dXok6\/tJCLLJwR6TvVmcG2lKC9rCaDbF1JgVK0CckkZS5YbT\/HIF92Hg78oe30FY+QSHvNtGE8leSt1ubDpNEiVmCdTeP+FX4N0qIWGi7POEfzXnLcRA\/L849e5C3L38Lqc9T5cDmlRE1v0VSHesl41UJYhMcPsezolCCFOvoUuCMsEeEiaW\/+1t4JcVyqtoTAMtUFFjVTjfvZrRrCHMwIWcN+nQYOEQsuE9zBMmA2RV7wnR1R034QI7YPTC6nCj45sd5fn6CJoy2dwytj5dbQ7JPw9m\/8fR0pr2lOlsbEW0mTDQh0h3nx5nbZfiM\/MmG0MUb+v+KgGaMwEfE8cV41HufdJfwqdVdW2+e0i4kG7anyG0V4QEN4qwnnHVAfWHgJxiFoIkQRjorAu\/XGx1CGPLohBHjpSvBiE5l7X\/1PHaHaW6mwBDmKeNQWDIX2yxHFKz6GrFn7xo3dAZ2jMo6MCIJM\/SZgPYm8LSdIQewC4dnZbOUj8o4lbatBagSvNmNTjUm3lwCLdDJAsF0710mgp6buY0kSKMT7koclaQRncbo0M4QWYgNxj0r4D0+DEjbtho6imUsYYw1+0uKm3jOhFxOjjQ4QrYNExgTA\/hMS5Z8bkaJRGDjAxCxbs1sfmwVTHPJw1fOyYvF5AJSr1jj7shGJruXyImb\/w4k9v5nQl8qjvYb90v8fCvVF2QhUJRFaHsQEEZNBFnrG02XpE2IJkoTIA\/5GtCYlw1PVJsu+itcuXRYeEuUJe16zA2wXq3Bgt7o6424rqMTi4\/sFV0VpntDcTxHnIXySsVGKFIeDn3LaIL1WVUgICT9rMQIiMc3EXyThZ3wHgn1fSBue\/wxRGMSoQ3izt2gVijry+judwhxW\/Gje631rK8ZisRkN\/O1FWWPWTcQ7Ezd+ltLJphbrFvP4qMEOCOMUbEyx7EV68zWFjlEcyB89rmG\/S4xNYLsnyEeBdD1MHgG\/idpkujktBjWigkX6eQryeRVvtxqZm1SE58D1x6UdyxR4Ez0cEDqUbGGuJ4busjrGVSOcxzcOV3EyEJJZhnz1FubLg\/cv7hgoAGQVQ4SN33HsPLsdY408jsylWWkcM8rnfLMke2diRFXwhXlPhu\/n3sKl9hTGUFQSrbOkmpsvJbknBkMAJrW+QZwe4pxb5IERv14S7Zn5OOuHc4Ym1pF4J38GBXjlpOUKcR3HSS\/E6MiHbCAgKjq+UGFj6J3LkgwS46Jlk+8tCya1ZLbTMK\/j2FhpsgrjOLAMbLz2lrnI+qOhyYTdN1sDZfRoJ1BqmcJDt1ko59DntnSUWCJCsRMlHLMvuPLAQC6utOqsQx3CVutF7fq1OMQFTAjbSwqNSeEpBZrOCnkK3Z4HZZQnMpWaYQZmWJMeanI0K5SpeCY8365v64XhXZqZjSecG7mgxNA1xdGNzoAiLHYLRVONUa3307x0vPK2R5uLRo84QS+kG\/I1vRX+gcDvw6sLMOF4gR0n+wk2vh9ozrssY2VXs5y7+WFUQtG6onr5txsyMUkErbbDEVvM96RQQuekqL5tQLP7k\/hm38Pi3DIihXzml9pwo8L9O3prutN1SPrnLfF45H+Ybbb64RVyIL16FG0IGmfrgRPA1tCGas6i9\/sxjOOQ2+Py7sEHubqpa8t7BAn\/pveiBxSTByb9RqcTdzOyQWjbXeT2tFHPBeRUNZYhfAokDAchfY\/E7ZzkT5IIcoGLNOJ7Dzbbgs+9ESjPTX0fIQQ5sp0cOuohV26fOE9V+EQNlViZrSxi+irlZwHtYRZXbcV5ZlNzbDCqYw9S81N8PdOSPI+fNYJhWbQbMWDFE3pz6UYBqgARYp\/drDXBU\/aBMkJCuGUSsNDmqOE4VXA0\/cpXRXbWTNA0fYZBnNZnNl0rZD6oRI8n\/roZ\/\/\/qv2qKPBTmDESRvqnRENQzhJQoH4qcpHycd\/Gbxd6X8x\/2QIoaKtxXfrfLogPxsZ\/1Sjg+VJigsut4fvXlYwdt2zcfwBajpBeui8jML3MSilzZclLAvmMxC7Eq2\/DxeWL4Po4vQwaDCdLZ4U1Qscz1H0DE5OfO8JswAjrotMmXgUtrcKPXrKCBhc2YbvnriUuakGKaSYCn3zwVIOeGdIMYaQ3DOznm6NrHOdGeal7haiDJNW1ZmPYb6zSSP8uBXzyzsftTZzPU4GCfOhX7Tg0Vx2Vl8crYCdQJqplnrozXCbg+IrukDYLfBc87Hg55sV0DEzQNjnSBtG1TqfMfv+IMfMe9dUowOu2pQbJkPfS4OsDlziLAQWoY6Z7K0UQRdmOs1gyPO48H0Ga55jFs7AfTEBDSy\/kw76oE97d4wR8ycPWJRPDaSBSiBIyaBnOddK6mgcR1cYXf9JgJe3Iz4EjOr6BqRBgvNlIr\/Jb\/NYPT6Kvhju12uZQU1xTi\/cprJA0OmaF8YoX603E3H\/OylwGUIs9v7o6VlujbZLf4pD6UnGLEl\/CmylXMKco1g28UAFBVLPmnE5+pFxkEcIaC6iYvz+DtME322OoQbqd4a7SrIc05uittTUpBx9gz8UM60xevlYIvHxwgMaMT6YDT5Bl+RiT21KCEOpLSJoBsv0WN8J4h0OlNjatIvnYutfqJZV6lw8oxwH6cgH8dpTrYfGxHhCK2HnAa6WupX0pxCuwpqm67pauPDTb4zQkj7eG\/k4O0Tn0sbgwIU3NDZvUP+7WF15tWwaN0ywowcGYU\/MRCZOhDTXi7E3f9h7qqDo8sAiTySZgM53oShUfohHp7V2tcFyt\/1Pjs+ON2CQfk0Q4dK\/kyUDiO34jpxnFURYX\/K44JUhKEbiwrRo2dsdYEHc5uSw913SjQgCHCQwfybmPER8GQCf5\/T64W21gIQBqeVmgI0iJDlymxNQ2VeE9hudIF9qoo3C7290ID52vwbavA3msXluBesgADm3NXiqn2AmVy3CoW+HMyX9d\/WNLXH3Ti7b1dtd14RLxLRnpXHE7NH9uOj9CTaEs42b64Oh1EjjW4E8eDNd0q0nASDcw1Y7\/XepEv2po2b51\/h4pR2Mb9FeesaM0veNA+v5fBf58wXo9nGE8V4xKtG4TNWHVA3kKNiFOtR50sn6I+e+R1sV\/7zINK21A7HQLOy2J0jSxT2A7bzNPBVSZ8Y06U0xLR73WXJzNJZmw5x\/VGp4DOD4dUn89NPOxZ8PZZRTHpCyXQ8NOg\/NDYD2Pa7Q5p8JKjTDVtyR1jJkfSQ\/WDbvA2G7R2\/LN3amHVMqiHGuSLfYAQJnbimrDSbssPCaB6buyHVCjpsSlj+k91ExGmd1\/n6yKhvXT1oVlL7N71Sdp81PzEIA5e4bI\/yt\/qWpaU+G3nN6ErK259OSzGI9GHIPVwmNGuvDLXzkHBp5vOY30RODAggL02SJnMSm1EfIZVhbwl5vQL+iV\/\/E4c\/vIbMeoSePHnU8\/UWul3hjMIdS6\/PIAFtrnqZ7\/hZSP1TvAVGjz4fKAgLiddn+paEHM++ybGjDyfJhVzDMMQGpzoAf4Jo8B6RChrenHBzbJzk9hiYPvBWhg2vxLINu7RUbBml7vn8QUbyd80MCtuZoduJlx4n9F5shYuiCW+uTfCXnD49Clob8Y3zxZ0EL0twJE2VYd2+7S9aJCKcNOMn7hbviXKlPseVxfyirTycfdaFAojx+OiT3OnFeKzSirIDTLugN5plu8XtvqoKfWqrYvSLxzVfWO8XFuZ0N\/28bQRvBORir4HLf1rjIHZuO+OO8YocQ0gv8WDkNbpA8K6RIp+vyWZBGu1mBKXrH\/MSf3VTwbDGbtbr4EFuqf1jwpt9ONuFkoessDbhC+Uem49ZwnPXhLGfqZs9spnZKCfU6fd3KM1Py8yOUoWmhsuNnDnb6\/Wu5y9YCZ3q\/5H1tio1\/LYeW\/aNtlG2DooZehdLd3X6T\/fjw9Q4EBxznuewE+K70wm5LlGPpggXkrS7DyB\/wOotrg34OjqKiUOVJeLjo8JyvuTCs6ZjfjKPOF69Rrwm4Mv8geTavhP47rR5iaWgQiJDn3\/4l0EBuqg8UHG5aIpmf8shq+BfJUEKwSoicf7Rry4ZRk3MOqUEJDHcdmI8TVn0jDzXkbrRNavHkqyP5IzQxuRg02EDEvNqjfmg4XzhPpE16wSMAWPTPV+gBI1YEspMmKyhr8p4gjv7O+YFNsNUryirDkrGBe+JRpCNlLDxh5hsXJjH8TlecDiXAtPicau\/GbDYNlWeYcq5h0bCjCpbTkz7A+WGAgbgNf0W5Ct\/Cm5ebYzVpl12VH9lpMq5vMRsxVkmhlgA27YzntV+0f8wzFTY6YJujV17QOkWPLbl50mUQN87WCfvk2pXpCfluyF58l6F6t\/auBuuAA1oaf4bjUBM9IIdjSU\/krxRfa40iSiLT51AXmtE0ZoizDTIWpmtSIv+vO72XB6jsKVKX7i\/Y\/9gNUklFvySw128nxYW9Utw6dzQZ86Zj56\/SCkn2A+gYAAAAtSAAkinSNSzU2lviZm89TxYPzVycFb4Z2UL3XfceBI5Owm3+z+BSfjnyJzgU\/GC6Sef3nbbPKMGEC0kMAjfLN43Wtk+HNp2gADbfgNsL4na9fc4AnZl39a4HbUmy3IDvPVCY4o9YVe\/PHwi7vkf6H8P3Yb2CbOOpGJtHonL1po36maLtyn\/D3Pv+Vo5Yr+s7vBFjJNQex92ZJWwse+3JB1ZO8WqNLyclx3IPm4vsL8DwiBEktvyMlQeVOxzXHjIugHK8W+eVQfY39Dx0kKTUV8uk+xVxMeC6dfDYM\/psCWDzP+M9HNcAfZISTtXkQmsgAAAAAAA=\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'rose', label:'Rose Sauvage \u0026 Mauve', latin:'Rosa canina + Malva sylvestris', family:'botanic',\n          desc:\"Macérat floral hautement concentré en bioflavonoïdes, provitamine A (caroténoïdes) et acides gras polyinsaturés (oméga-3, oméga-6). Reconnu pour son action anti-inflammatoire et restructurante.\",\n          targets: [\n            { anchor:'epiderme', action:\"Action anti-inflammatoire\", benefit:\"Apaise les rougeurs, calme les démangeaisons et restaure le confort cutané dès les premières applications.\" },\n            { anchor:'tige_poil', action:\"Révèle l'éclat naturel\", benefit:\"Les acides gras essentiels gainent la fibre et restaurent sa réflectance lumineuse.\" }\n          ]\n        },\n        {\n          id:'flav', label:'Flavonoïdes \u0026 Vitamine C', latin:'Polyphénols actifs', family:'botanic',\n          desc:\"Antioxydants végétaux puissants qui neutralisent les radicaux libres et activent les fibroblastes pour la production de collagène et d'élastine.\",\n          targets: [\n            { anchor:'derme', action:\"Stimule le collagène\", benefit:\"Renforce la matrice dermique et améliore la tonicité de la peau dès l'application.\" },\n            { anchor:'epiderme', action:\"Bouclier anti-radicaux libres\", benefit:\"Protège les kératinocytes du stress oxydatif lié à la pollution et aux UV.\" }\n          ]\n        },\n        {\n          id:'chlor', label:'Chlorella', latin:'Chlorella vulgaris', family:'botanic',\n          desc:\"Micro-algue d'eau douce parmi les plus riches en chlorophylle, contenant 60% de protéines complètes, vitamines B et C, fer et magnésium chélatés.\",\n          targets: [\n            { anchor:'epiderme', action:\"Détoxifie en profondeur\", benefit:\"La chlorophylle capte les métaux lourds et résidus chimiques accumulés sur l'épiderme.\" },\n            { anchor:'tige_poil', action:\"Hydratation cellulaire\", benefit:\"Restaure le taux d'humidité optimal de la fibre (12-15%) pour une souplesse durable.\" }\n          ]\n        },\n        {\n          id:'mer', label:'Eau de Mer', latin:'Complexe minéral marin', family:'aqua',\n          desc:\"Eau de mer pure micronisée, source naturelle de 92 oligo-éléments et minéraux biodisponibles dont magnésium, calcium, zinc, cuivre et sélénium.\",\n          targets: [\n            { anchor:'glande_seb', action:\"Régule la séborrhée\", benefit:\"Le zinc équilibre l'activité des glandes sébacées et limite l'excès de sébum sans dessécher.\" },\n            { anchor:'cuticule', action:\"Reminéralise la fibre\", benefit:\"Les oligo-éléments comblent les déficits minéraux du poil et renforcent les ponts disulfures.\" }\n          ]\n        },\n        {\n          id:'aa', label:'Acides Aminés Naturels', latin:'Précurseurs de kératine', family:'bio',\n          desc:\"Cocktail d'acides aminés essentiels (cystéine, méthionine, arginine, lysine) constituant 95% de la kératine du poil. Pénétration intra-cellulaire prouvée.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Reconstruit la kératine\", benefit:\"Comble les zones de la fibre où les chaînes peptidiques sont rompues. Effet structurel durable.\" },\n            { anchor:'cuticule', action:\"Resserre les écailles\", benefit:\"La cuticule lissée réfléchit la lumière uniformément : brillance maximale et toucher soyeux.\" }\n          ]\n        },\n        {\n          id:'vit', label:'Complexe Vitaminé', latin:'Matrice B-C-E-F', family:'bio',\n          desc:\"Synergie de vitamines B5 (panthénol), B7 (biotine), C (ascorbate) et E (tocophérol) pour une nutrition complète du follicule jusqu'à la pointe.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Préserve la barrière cutanée\", benefit:\"La vitamine E protège les lipides du film hydrolipidique de l'oxydation et du lessivage.\" },\n            { anchor:'bulbe', action:\"Active la matrice germinative\", benefit:\"La biotine et la B5 stimulent les cellules souches du bulbe responsables de la croissance du poil.\" }\n          ]\n        },\n        {\n          id:'gly', label:'Glycérine \u0026 Urée', latin:'Humectants naturels', family:'cond',\n          desc:\"Couple humectant captant l'humidité atmosphérique pour la fixer durablement dans la fibre capillaire et la couche cornée de la peau.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Retient l'humidité\", benefit:\"L'urée à 2% maintient le taux d'eau de la fibre, la rendant souple, élastique et anti-casse.\" },\n            { anchor:'derme', action:\"Restaure le NMF cutané\", benefit:\"Reconstitue le Facteur Naturel d'Hydratation, garant de l'élasticité et de la souplesse cutanée.\" }\n          ]\n        },\n        {\n          id:'cond', label:'Complexe Conditionneur', latin:'Smoothing complex', family:'cond',\n          desc:\"Agents lissants cationiques de dernière génération qui se déposent sélectivement sur les zones endommagées de la fibre par attraction électrostatique.\",\n          targets: [\n            { anchor:'cuticule', action:\"Démêle instantanément\", benefit:\"Réduit le coefficient de friction inter-fibres de 65% pour un peigne sans résistance.\" },\n            { anchor:'tige_poil', action:\"Effet anti-nœuds prolongé\", benefit:\"Le film protecteur persiste après rinçage et limite le retour rapide des feutrages.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      });\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      function start() { setTimeout(function() { focusIngredient(0); }, 200); }\n      if (schemaImg.complete) start();\n      else schemaImg.addEventListener('load', start);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e        \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eA portion of shampoo\u003cbr\u003efor 20 parts water\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e500 mL\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e25\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e25\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e1.5\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoon\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e1\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressure\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 500 mL \/ 1 L \/ 2 L\n      var cycles = [\n        { target: '500 mL', ml: '25',  g: '25',  spoon: '1,5', pump: '1' },\n        { target: '1 L',    ml: '50',  g: '50',  spoon: '3',   pump: '2' },\n        { target: '2 L',    ml: '100', g: '100', spoon: '6',   pump: '4' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e              \u003cdetails class=\"aqr-proto-acc\" open\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eQuick, economical grooming \u0026amp; effective\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eThe basic bath — for regular salon use\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst passage\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eStart the bath directly with the diluted Aquarosa Pro, on the previously wetted hair. Rinse.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply a second shampoo, rinse again.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinal care\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with the appropriate conditioner: \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e, \u003cstrong\u003eBombastic\u003c\/strong\u003e Or \u003cstrong\u003eAqua Dolce\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e              \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eUltra-intense action — Salon, Emergency or Expo\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eTo detangle, repair damaged fur, or enhance show grooming\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePre-bath mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAttack with a \u003cstrong\u003epre-bath mask\u003c\/strong\u003e based on \u003cstrong\u003eBio Energy\u003c\/strong\u003e Or \u003cstrong\u003eBombastic\u003c\/strong\u003e.  Add to that some \u003cstrong\u003e4 Elements Oils\u003c\/strong\u003e or of the\u003cstrong\u003eHydrating Cream\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eAquarosa on mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply the\u003cstrong\u003eApply Aquarosa Pro directly after the mask, without rinsing in between.\u003c\/strong\u003e.  For increased efficiency, concentrate more and combine with \u003cstrong\u003eBombastic\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eApplication and double shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eLeave on for a few moments and massage if possible. \u003cstrong\u003eTwo shampoos are recommended.\u003c\/strong\u003e  \u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinalization\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with a conditioner or mask as needed.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e              \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eIntegration Boosters — Nutrition \u0026amp; Volume\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eTwo variations to amplify the effect as needed\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eNutrition Boost\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFor an even more nourishing effect, add directly \u003cstrong\u003ea spoonful of Aqua Dolce\u003c\/strong\u003e in your Aquarosa Pro mixture. Apply, leave on for a few moments and rinse thoroughly with lukewarm water.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eVolume Boost\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMix the Aquarosa Pro with the foam \u003cstrong\u003eAqua Vita\u003c\/strong\u003e.  Its effervescent effect adds volume and enhances cleansing power. Ideal for furs that lack lightness after bathing.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePerfect drying\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eIn both cases, finish drying by brushing with \u003cstrong\u003eAqua Beauty\u003c\/strong\u003e Or \u003cstrong\u003ePink Mix\u003c\/strong\u003e for an even softer and shinier coat.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Aquarosa at its core + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003eThe entire Special One range is compatible. \u003cstrong\u003eTo be combined freely\u003c\/strong\u003e depending on the need at the time:\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-bath mask is recommended…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBio Energy\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eYou combine it with another shampoo…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e4Poodle · Bain Pro · Aquapure Pro\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final mask is needed…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream · Bombastic · Aqua Dolce\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA finishing touch is needed…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAbsolute 4Poodle · Mix Pink · Style 360\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003ePerfectly calibrated for demanding textures:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐾 All the dogs in the living room \u003cspan\u003e(limits the return of nodes)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly Furs \u003cspan\u003e(Poodles, Bichons, Kerry Blue...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🇬🇧 Cockers \u0026amp; Spaniels \u003cspan\u003e(English, Americans, Cavaliers...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🏔️ Tibetan cloaks \u003cspan\u003e(Shih Tzu, Lhasa Apso...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✨ Silky Textures \u003cspan\u003e(Yorkshire Terriers, Afghan Hounds...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 Terriers \u003cspan\u003e(Scottish, Westie, Welsh...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 All Cats\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eNon-exhaustive list — Aquarosa Pro is suitable for all coats requiring intense nutrition.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLS, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250 mL","offer_id":37819444494515,"sku":"WAQ-AQRO250 (96)","price":19.9,"currency_code":"EUR","in_stock":true},{"title":"5 Liters","offer_id":37819444461747,"sku":"WAQ-AQRO5000 (98)","price":127.5,"currency_code":"EUR","in_stock":true},{"title":"10 Litres","offer_id":57582899233113,"sku":"WAQ-AQRO10000 (250)","price":218.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Aquarosa_b416a6e2-3b73-4c01-b49a-928e3e6e9050.png?v=1680188855"},{"product_id":"knot-knot-outil-special-crepage","title":"Knot-Knot: special creping tool","description":"\u003cp\u003e The tool that looks like a pair of scissors ... but doesn't cut! Special creping and top knots! \u003c\/p\u003e \u003cbr\u003e \u003cp\u003e \u003c\/p\u003e \u003ch1 style=\"text-align:center;\"\u003e \u003cstrong\u003e \u003cspan style=\"color:#923a6c;\"\u003e \u003cem\u003e Knot-Knot \u003c\/em\u003e \u003c\/span\u003e \u003c\/strong\u003e \u003c\/h1\u003e \u003ct0 \u003e \u003cstrong\u003e \u003cspan style=\"color:#923a6c;\"\u003e \u003cem\u003e Top-Knot Scissors \u003c\/em\u003e \u003c\/span\u003e \u003c\/strong\u003e \u003c\/h1\u003e \u003cdiv style=\"height:40px;\"\u003e \u003c\/div\u003e \u003ch2 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#923a6c;\"\u003e \u003cem\u003e Pro Line for Groomers \u003c\/em\u003e \u003c\/span\u003e \u003c\/h2\u003e \u003ch2 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#923a6c;\"\u003e \u003cem\u003e (dog and cat grooming) \u003c\/em\u003e \u003c\/span\u003e \u003c\/h2\u003e \u003ch3 style=\"text-align:center;\"\u003e \u003c\/h3\u003e \u003ch3 style=\"text-align:center;\"\u003e \u003c\/h3\u003e \u003ccenter\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_special_2.png?v=1608721015\" alt=\"\" width=\"192\" height=\"84\"\u003e \u003ccenter\u003e \u003c\/center\u003e\n\u003c\/center\u003e \u003cp style=\"text-align:center;\"\u003e \u003c\/p\u003e \u003cdiv style=\"height:40px;\"\u003e \u003c\/div\u003e \u003ctable width=\"316\" style=\"height:45px;margin-left:auto;margin-right:auto;\"\u003e \u003ctbody\u003e \u003ctr bgcolor = \"# 923a6c\"\u003e \u003ctd\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch3 style=\"text-align:center;\"\u003e \u003cspan style=\"color:#ffffff;\"\u003e Description \u003c\/span\u003e \u003c\/h3\u003e\n\u003ch3\u003e \u003c\/h3\u003e\n\u003c\/td\u003e \u003c\/tr\u003e \u003c\/tbody\u003e \u003c\/table\u003e \u003cp style=\"text-align:justify;\"\u003e \u003c\/p\u003e \u003cp\u003e Limited series! Professional range, special creping \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e \u003cp\u003e \u003c\/p\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819456618675,"sku":null,"price":73.1,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/436.jpg?v=1614083022"},{"product_id":"laque-brillance-final-fix-soft-ecologique","title":"FINAL FIX SOFT Ecological Shine Lacquer","description":"\u003cp\u003eLight hold hairspray to provide hold and texture without any stiffness. Residue-free and safe for the hair.\u003c\/p\u003e  \u003cbr\u003e  \u003cdiv\u003eFINAL FIX SOFT ECOLOGIC is an eco-friendly, gas-free hairspray that will give shine, hold and texture to the hair, without ever having the unpleasant \u0026quot;sticky\u0026quot; effect of some hairsprays.\u003c\/div\u003e  \u003cp\u003eHighly appreciated by show and competition dogs.\u003c\/p\u003e  \u003cp\u003eRemoves with just a few brush strokes, leaves no residue. Latest generation hairspray, completely safe for the coat.\u003c\/p\u003e  \u003cp\u003eThis grooming lacquer helps condition fine textures and those with little structure, especially when scissor-cut in the following dog breeds: Poodle, Bichon Frise, Kerry blue terrier, Bedlington terrier. \u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e  \u003cp\u003eSpray the product from a distance of approximately 20-30 cm directly onto the clean and combed coat, then finish shaping with a comb.\u003cbr\u003eFor professional use only. Avoid contact with the animal's eyes.\u003cbr\u003eIf the dispenser becomes blocked, clean it using only hot water.\u003cbr\u003eContains the latest generation of non-damaging resins for the hair of animals.\u003cbr\u003e  \u003cbr\u003e  \u003cspan style=\"background-color: #ffffff;\"\u003e\u003c\/span\u003ePerfectly completes grooming for bulky breeds. Ideal after using products like Platynum Pro, Extra Body Cream and Multifix.\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"200mL","offer_id":37819466350771,"sku":"WEX-FSOE200 (13)","price":27.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/laquebrillantFinalFixSoft.png?v=1675852089"},{"product_id":"laque-final-fix-strong-ecologique","title":"FINAL FIX STRONG Ecological Lacquer","description":"\u003cp\u003eStrong hold hairspray to lock in fur. Residue-free, safe for the hair.\u003c\/p\u003e  \u003cbr\u003e  \u003cdiv\u003eFINAL FIX STRONG ECOLOGIC: Strong and fast hold, dries quickly, easy to remove with a brush, leaves no residue. Ideal for applying all tops in Shih Tzu, Maltese, Yorkshire Terrier, Poodle, and for artistic Asian Style creations, for example.\u003cbr\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003cp\u003eSpray the product onto the tip of the comb and shape the top by securing the hair for a perfect final result.\u003c\/p\u003e  \u003cdiv\u003eThen spray directly onto the fur from a distance of approximately 20-30 cm.\u003c\/div\u003e  \u003cdiv\u003e  \u003cbr\u003eFor professional use only. Avoid contact with the animal's eyes.\u003cbr\u003eIf the dispenser is blocked, clean it with hot water.\u003cbr\u003eContains natural resins that are not damaging to animal fur.\u003cbr\u003e\u003cbr\u003e  \u003c\/div\u003e  \u003cp\u003e\u003cbr\u003ePerfectly completes grooming for bulky breeds. Ideal after using products like Platynum Pro, Extra Body Cream and Multifix. \u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"200mL","offer_id":37819466383539,"sku":"WEX-FSTE200 (120)","price":30.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/laquefinalFixStrong.png?v=1675852213"},{"product_id":"laque-final-fix-strong-gaz","title":"FINAL FIX STRONG Gas Lacquer","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e  \u003c!-- INTRO --\u003e  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e  \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e  \u003cstrong\u003eAEROSOL LACQUER\u003c\/strong\u003e is the Special One professional lacquer \u003cstrong\u003estrong fixing\u003c\/strong\u003e and micro-fine diffusion for an invisible result. Maximum volume, maximum hold — without weighing hair down, without residue. The essential product for setting and shaping fur in competitions.\u003c\/div\u003e  \u003cdiv style=\"background: #fffbe6; border: 1px solid #f0e040; padding: 14px 18px; margin-bottom: 20px; font-size: 13px; border-radius: 2px;\"\u003e⚠️  \u003cstrong\u003eProduct intended for professional use only.\u003c\/strong\u003e Avoid contact with the animal's eyes.\u003c\/div\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e  \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eThe benchmark finishing product for professionals and competitors.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e  \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e  \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- EXPERTISE \u0026  RESULTS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e  \u003cp style=\"font-size: 14px;\"\u003eThanks to its technology \u003cstrong\u003emicro-fine diffusion\u003c\/strong\u003e and to its \u003cstrong\u003enon-damaging natural resins\u003c\/strong\u003e,  Special One Aerosol Hairspray settles invisibly on the coat, fixing its structure without weighing it down. It dries quickly and is easily brushed out, leaving no residue.\u003c\/p\u003e  \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e  \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eStrong Fixation:\u003c\/strong\u003e It locks in the fur and maintains the volume over time.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eMicro-Fine Diffusion:\u003c\/strong\u003e Invisible result, with no sticky effect or visible residue.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eQuick Drying:\u003c\/strong\u003e Immediate grip for smooth work in exhibitions.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eEasy to Remove:\u003c\/strong\u003e It can be easily removed with a brush, without the need for further washing.\u003c\/li\u003e  \u003cli\u003e✅  \u003cstrong\u003eNatural Resins:\u003c\/strong\u003e Non-damaging formula for all types of fur.\u003c\/li\u003e  \u003c\/ul\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- COMPOSITION --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eComposition: Focus on Natural Ingredients\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA professional formula combining maximum hold and respect for the hair.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e  \u003cstrong\u003e🍀 Natural Resins\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eNaturally derived fixing agents, not damaging to the hair fiber — offer strong hold and invisible finish.\u003c\/span\u003e  \u003c\/td\u003e  \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e  \u003cstrong\u003e🍀 Micro-Fine Technology\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eUltra-fine diffusion for a homogeneous and light deposit — maximum volume without heavy effect or residue.\u003c\/span\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c\/div\u003e  \u003c!-- PROTOCOLS --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for Use\u003c\/span\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 1 🔥 Fixing \u0026amp; Volume — Classic Application\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eOn clean, combed fur:\u003cbr\u003e\u003cbr\u003e1. Spray the hairspray from a distance of approximately \u003cstrong\u003e20 to 30 cm\u003c\/strong\u003e of the fur.\u003cbr\u003e2. Work \u003cstrong\u003esection by section\u003c\/strong\u003e for a homogeneous deposit.\u003cbr\u003e3. Shape using combs and brushes to achieve the desired final result.\u003cbr\u003e4. Allow to dry for a few moments — it sets quickly.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e  \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\u003cspan\u003eExample 2 🔥 Top-Knot modeling (Poodle, bulky breeds)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eTargeted application to the tuft and volume areas:\u003cbr\u003e\u003cbr\u003e1. After preparing the top knot (blow-drying, adding volume), spray with \u003cstrong\u003e20-30 cm\u003c\/strong\u003e.\u003cbr\u003e2. Set the structure by lightly holding the hair with your fingers or a fine comb while setting.\u003cbr\u003e3. Rework with a brush if necessary — the lacquer can be easily repositioned before it dries completely.\u003cbr\u003e4. ⚠️ If the nozzle is clogged: clean the diffuser with\u003cstrong\u003ehot water\u003c\/strong\u003e.\u003c\/div\u003e  \u003c\/details\u003e  \u003cdiv style=\"margin-top: 20px; padding: 20px; background: #fff; border: 1px dashed #1a1a1a;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; margin-bottom: 10px;\"\u003e🛠️ HOW TO USE AEROSOL HAIRSPRAY PROPERLY:\u003c\/span\u003e  \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e1️⃣ Always apply to hair \u003cstrong\u003eclean, dry and combed\u003c\/strong\u003e.\u003cbr\u003e2️⃣ Keep the spray at \u003cstrong\u003e20-30 cm\u003c\/strong\u003e of the peel for a homogeneous micro-fine diffusion.\u003cbr\u003e3️⃣ Work in zones and shape \u003cstrong\u003ebefore completely drying\u003c\/strong\u003e to adjust.\u003cbr\u003e4️⃣ Remove with a brush at the end of the session — \u003cstrong\u003eNo rewashing required\u003c\/strong\u003e.\u003cbr\u003e5️⃣ If the nozzle is clogged: clean with\u003cstrong\u003ehot water\u003c\/strong\u003e.\u003cbr\u003e6️⃣  \u003cstrong\u003eFor professional use only\u003c\/strong\u003e — avoid contact with the animal's eyes.\u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- ASSOCIATIONS \u0026  RACES --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003e🤝 Perfectly completes grooming for large breeds. Ideal as a final step after... \u003cstrong\u003ePlatynum Pro\u003c\/strong\u003e, \u003cstrong\u003eExtra Body Cream\u003c\/strong\u003e And \u003cstrong\u003eMultifix\u003c\/strong\u003e.\u003c\/p\u003e  \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px;\"\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Poodles — modeling and holding the top knot in show and grooming competition.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Bichons, Maltese — volume and maintenance of coat structure, top knot\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Wire-haired Terriers (West Highland, Scottish, Welsh…) — fixing the trimmed silhouette and\/or mounting the head\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Shih-Tzu, Yorkshire — top knot on display.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0;\"\u003e✔️ All breeds with volume presented in competition — invisible professional finish.\u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e  \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eNatural Resins | Professional Use | Recyclable HDPE02\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"500mL","offer_id":37819478212787,"sku":"WEX-FESTG500 (121)","price":25.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Nouvelleversiontailleproduits-43.png?v=1651841359"},{"product_id":"icepet-serviette-rafraichissante-sechage-pour-chien-special-one","title":"IcePet SPECIAL ONE QUICK-DRY Cooling Towel for Dogs","description":"\u003ch2 data-section-id=\"2vd47b\" data-start=\"66\" data-end=\"157\"\u003eICEPET Cooling Towel for Dogs by Special One – Fast Cooling and Accelerated Drying\u003c\/h2\u003e  \u003ch3 data-section-id=\"80teps\" data-start=\"159\" data-end=\"225\"\u003eDual purpose: instant freshness and ultra-fast drying\u003c\/h3\u003e  \u003cp data-start=\"226\" data-end=\"404\"\u003eThe ICEPET cooling towel is designed to help your dog better cope with the heat while providing quick drying after bathing or outdoor activities.\u003c\/p\u003e  \u003cp data-start=\"406\" data-end=\"575\"\u003eMade from highly absorbent PVA material, it provides effective cooling simply by immersing it in water. Activation is quick, easy, and effortless.\u003c\/p\u003e  \u003chr data-start=\"577\" data-end=\"580\"\u003e  \u003ch2 data-section-id=\"1hevikx\" data-start=\"582\" data-end=\"641\"\u003eThe benefits of the cooling dog towel\u003c\/h2\u003e  \u003cul data-start=\"643\" data-end=\"944\"\u003e  \u003cli data-section-id=\"fqetun\" data-start=\"643\" data-end=\"699\"\u003eInstant cooling in case of extreme heat\u003c\/li\u003e  \u003cli data-section-id=\"16y44wr\" data-start=\"700\" data-end=\"746\"\u003eQuick drying after swimming or walking\u003c\/li\u003e  \u003cli data-section-id=\"1uzi3kr\" data-start=\"747\" data-end=\"779\"\u003eUltra-absorbent PVA material\u003c\/li\u003e  \u003cli data-section-id=\"11avmue\" data-start=\"780\" data-end=\"815\"\u003eSimple activation with water\u003c\/li\u003e  \u003cli data-section-id=\"fisjmg\" data-start=\"816\" data-end=\"853\"\u003eLong-lasting cooling effect\u003c\/li\u003e  \u003cli data-section-id=\"t9oyl4\" data-start=\"854\" data-end=\"896\"\u003eReusable and easily reactivated\u003c\/li\u003e  \u003cli data-section-id=\"aabm6w\" data-start=\"897\" data-end=\"944\"\u003eSuitable for indoor and outdoor use\u003c\/li\u003e  \u003c\/ul\u003e  \u003chr data-start=\"946\" data-end=\"949\"\u003e  \u003ch2 data-section-id=\"1ilt2zm\" data-start=\"951\" data-end=\"981\"\u003eTechnical specifications\u003c\/h2\u003e  \u003cul data-start=\"983\" data-end=\"1132\"\u003e  \u003cli data-section-id=\"4bbc3k\" data-start=\"983\" data-end=\"1010\"\u003eDimensions: 66 x 43 cm\u003c\/li\u003e  \u003cli data-section-id=\"19r3rym\" data-start=\"1011\" data-end=\"1046\"\u003eMaterial: High-performance PVA\u003c\/li\u003e  \u003cli data-section-id=\"yf09cj\" data-start=\"1047\" data-end=\"1096\"\u003eTechnology: Evaporative cooling\u003c\/li\u003e  \u003cli data-section-id=\"1k7rkvb\" data-start=\"1097\" data-end=\"1132\"\u003eSuitable for all types of dogs\u003c\/li\u003e  \u003c\/ul\u003e  \u003chr data-start=\"1134\" data-end=\"1137\"\u003e  \u003ch2 data-section-id=\"yqp94\" data-start=\"1139\" data-end=\"1203\"\u003eWhy choose this cooling towel for dogs?\u003c\/h2\u003e  \u003cp data-start=\"1205\" data-end=\"1288\"\u003eThis towel is ideal for summer or hot weather. It allows you to:\u003c\/p\u003e  \u003cul data-start=\"1290\" data-end=\"1466\"\u003e  \u003cli data-section-id=\"22zjwc\" data-start=\"1290\" data-end=\"1336\"\u003eRegulating the dog's body temperature\u003c\/li\u003e  \u003cli data-section-id=\"18xldz0\" data-start=\"1337\" data-end=\"1378\"\u003eLimiting the risks associated with heat\u003c\/li\u003e  \u003cli data-section-id=\"gb5w8h\" data-start=\"1379\" data-end=\"1428\"\u003eTo provide an immediate feeling of freshness\u003c\/li\u003e  \u003cli data-section-id=\"17oam2q\" data-start=\"1429\" data-end=\"1466\"\u003eImproving everyday comfort\u003c\/li\u003e  \u003c\/ul\u003e  \u003cp data-start=\"1468\" data-end=\"1547\"\u003eIt's a simple and effective solution to protect your pet from the heat.\u003c\/p\u003e  \u003chr data-start=\"1549\" data-end=\"1552\"\u003e  \u003ch2 data-section-id=\"1azcm7d\" data-start=\"1554\" data-end=\"1570\"\u003eInstructions for use\u003c\/h2\u003e  \u003ch3 data-section-id=\"z14ncp\" data-start=\"1572\" data-end=\"1598\"\u003eFirst use\u003c\/h3\u003e  \u003cp data-start=\"1599\" data-end=\"1712\"\u003eSubmerge the towel in water for about a minute, then gently squeeze to remove excess water.\u003c\/p\u003e  \u003ch3 data-section-id=\"16aaxmt\" data-start=\"1714\" data-end=\"1731\"\u003eUse\u003c\/h3\u003e  \u003cul data-start=\"1732\" data-end=\"1912\"\u003e  \u003cli data-section-id=\"wg8cir\" data-start=\"1732\" data-end=\"1773\"\u003eWrap the dog with the towel\u003c\/li\u003e  \u003cli data-section-id=\"z08fyv\" data-start=\"1774\" data-end=\"1816\"\u003eOr place it directly on her body\u003c\/li\u003e  \u003cli data-section-id=\"zsgd9d\" data-start=\"1817\" data-end=\"1912\"\u003eCan also be positioned under the paws for optimal freshness distribution\u003c\/li\u003e  \u003c\/ul\u003e  \u003cp data-start=\"1914\" data-end=\"2009\"\u003eWhen the towel starts to dry, simply dip it back into the water to reactivate it.\u003c\/p\u003e  \u003chr data-start=\"2011\" data-end=\"2014\"\u003e  \u003ch2 data-section-id=\"yat78p\" data-start=\"2016\" data-end=\"2042\"\u003eAlternative use\u003c\/h2\u003e  \u003cul data-start=\"2044\" data-end=\"2117\"\u003e  \u003cli data-section-id=\"nzjtmy\" data-start=\"2044\" data-end=\"2117\"\u003eCan also be used as a dog drying towel\u003c\/li\u003e  \u003c\/ul\u003e  \u003chr data-start=\"2119\" data-end=\"2122\"\u003e  \u003ch2 data-section-id=\"atfm13\" data-start=\"2124\" data-end=\"2152\"\u003eCare and preservation\u003c\/h2\u003e  \u003ch3 data-section-id=\"1hwmkvs\" data-start=\"2154\" data-end=\"2169\"\u003eCleaning\u003c\/h3\u003e  \u003cp data-start=\"2170\" data-end=\"2226\"\u003eMachine or hand washable with mild detergent\u003c\/p\u003e  \u003ch3 data-section-id=\"zumylh\" data-start=\"2228\" data-end=\"2242\"\u003eStorage\u003c\/h3\u003e  \u003cp data-start=\"2243\" data-end=\"2305\"\u003eStore in the tube provided or keep slightly moist\u003c\/p\u003e  \u003ch3 data-section-id=\"fnklz4\" data-start=\"2307\" data-end=\"2322\"\u003eImportant\u003c\/h3\u003e  \u003cp data-start=\"2323\" data-end=\"2492\"\u003eThe towel may become stiff when drying.\u003cbr data-start=\"2367\" data-end=\"2370\"\u003eDo not fold when dry.\u003cbr data-start=\"2405\" data-end=\"2408\"\u003eTo reuse it, simply rehydrate it to restore its suppleness.\u003c\/p\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819478245555,"sku":"(T403)","price":9.5,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/570.jpg?v=1614083154"},{"product_id":"drycoat-chien-pour-toilettage-expositions-1","title":"Dry Coat special Cavalier King Charles Grooming Exhibitions","description":"\u003cp\u003e\u003cspan\u003eThe dry coat allows you to finish your blow-dry by perfectly smoothing down your dog's fur.\u003c\/span\u003e\u003c\/p\u003e\u003cbr\u003e\u003ch1 style=\"text-align:center;\"\u003e\u003cstrong\u003e\u003cspan style=\"color:#923a6c;\"\u003e\u003cem\u003eDry Dog Coat \u003c\/em\u003e\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h1\u003e\u003ch2 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#923a6c;\"\u003eSpecial Cavalier King Charles\u003c\/span\u003e\u003c\/h2\u003e\u003ch3 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#923a6c;\"\u003eMade in the United Kingdom\u003c\/span\u003e\u003c\/h3\u003e\u003cdiv style=\"height:40px;\"\u003e\u003c\/div\u003e\u003ctable width=\"316\" style=\"height:45px;margin-left:auto;margin-right:auto;\"\u003e\u003ctbody\u003e\u003ctr bgcolor=\"#923a6c\"\u003e\u003ctd\u003e  \u003cp\u003e\u003c\/p\u003e  \u003ch3 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#ffffff;\"\u003eHow does this revolutionary coat work?\u003c\/span\u003e\u003c\/h3\u003e  \u003ch3\u003e\u003c\/h3\u003e  \u003c\/td\u003e\u003c\/tr\u003e\u003c\/tbody\u003e\u003c\/table\u003e\u003cp style=\"text-align:justify;\"\u003e\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003e\u003cbr\u003eThis brand of Dry Dog Coat is particularly popular in dog shows for its many qualities.\u003c\/strong\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e\u003cstrong\u003eYour dogs' coats will stay straight, shiny, and perfectly conditioned for the show! This DryDogCoat will give you a style that no blow-dry can match.\u003c\/strong\u003e This will allow you to:\u003c\/p\u003e\u003cp\u003e• Control the volume of the neck, which will increase the elegance of the animal and improve its shoulder\u003c\/p\u003e\u003cp\u003e• To fix the coat along the entire back line, without unsightly tufts that give a bad impression and penalize the dog\u003c\/p\u003e\u003cp\u003e• to perfectly tame all unruly hairs, flyaways, or even frizzy tufts\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cdiv\u003e\u003cstrong\u003eWhen to use it?\u003c\/strong\u003e\u003c\/div\u003e\u003cdiv\u003e\u003cstrong\u003eThere's only one way to use it: DryCoat is applied after a regular grooming session. Start with a good bath and detangling. Remember to use...\u003ca href=\"https:\/\/www.google.fr\/url?sa=t\u0026amp;rct=j\u0026amp;q=\u0026amp;esrc=s\u0026amp;source=web\u0026amp;cd=\u0026amp;cad=rja\u0026amp;uact=8\u0026amp;ved=0ahUKEwi_utyJ2-LRAhUC2hoKHeSIClYQFggnMAE\u0026amp;url=https%3A%2F%2Fwww.petdesign.fr%2F13_special-one\u0026amp;usg=AFQjCNHHkio6uXfnisdjxKODQdyc7gAoUg\u0026amp;sig2=OfUqaZNf8ztf-hrIr0mYSg\u0026amp;bvm=bv.145063293,d.d2s\"\u003eexcellent cosmetic products for when you groom\u003c\/a\u003e your animals, the result will only be better and more lasting.\u003c\/strong\u003e\u003c\/div\u003e\u003cdiv\u003eAfter bathing, take extra care when applying conditioner, and be meticulous during your \u003ca href=\"https:\/\/www.google.fr\/url?sa=t\u0026amp;rct=j\u0026amp;q=\u0026amp;esrc=s\u0026amp;source=web\u0026amp;cd=\u0026amp;cad=rja\u0026amp;uact=8\u0026amp;ved=0ahUKEwjQ-MKd2-LRAhXMXhoKHTODChIQFggaMAA\u0026amp;url=https%3A%2F%2Fwamiz.com%2Fchiens%2Fguide%2Fle-sechage-du-chien-apres-son-bain-0313.html\u0026amp;usg=AFQjCNGyoY1_TEuXtjWtuMBHwGT8_OkiNA\u0026amp;sig2=wnxxF9GR5RwyhQKAJKpbyg\u0026amp;bvm=bv.145063293,d.d2s\"\u003ebrushing\u003c\/a\u003e.  Once the dog is dry, carefully and meticulously put the dry dog ​​coat on a well-conditioned coat. Make sure the position you want the coat to hold is exactly what you're looking for... Don't expect a satisfactory result if your dog's coat is messy and frizzy... The more difficult your show dog's coat is to style, the longer you should leave the coat on. This can range from 30 minutes to overnight, depending on the desired effect.\u003c\/div\u003e\u003ctable\u003e\u003ctbody\u003e\u003ctr\u003e  \u003ctd\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_COUP_DE_COEUR.png?v=1608720534\" alt=\"\" width=\"90%\" height=\"90%\"\u003e\u003c\/td\u003e  \u003ctd\u003e  \u003ch2\u003e\u003cstrong\u003e\u003cspan\u003eWhat we liked:\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h2\u003e  \u003ch6\u003e☑ Its formidable effectiveness\u003c\/h6\u003e  \u003ch6\u003e☑ Ease of use\u003c\/h6\u003e  \u003ch6\u003e☑ Made-man\u003c\/h6\u003e  \u003cp\u003e\u003c\/p\u003e  \u003c\/td\u003e  \u003c\/tr\u003e\u003c\/tbody\u003e\u003c\/table\u003e\u003cp\u003e\u003c\/p\u003e\u003cdiv style=\"height:10px;\"\u003e\u003c\/div\u003e\u003cdiv style=\"height:40px;\"\u003e\u003c\/div\u003e\u003ctable width=\"316\" style=\"margin-left:auto;margin-right:auto;\"\u003e\u003ctbody\u003e\u003ctr bgcolor=\"#923a6c\"\u003e\u003ctd\u003e  \u003cp\u003e\u003c\/p\u003e  \u003ch3 style=\"text-align:center;\"\u003e\u003cspan style=\"color:#ffffff;\"\u003eSize guide\u003c\/span\u003e\u003c\/h3\u003e  \u003c\/td\u003e\u003c\/tr\u003e\u003c\/tbody\u003e\u003c\/table\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003e\u003cbr\u003eThree sizes available:\u003cbr\u003e\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003eSmall: 22\"\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003eMedium: 23\"\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003eWide : 24\"\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003e22\" correspond to a total length (from the tail set to the eyes) of 55cm, following the back, neck and skull closely.\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003e23\" correspond to a total length of 58cm\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cspan class=\"hps\"\u003e24\" at 61cm\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/t\/3\/assets\/description_image_measure_LRG.jpg?v=1608721436\" alt=\"\" width=\"455\" height=\"468\"\u003e\u003c\/p\u003e\u003cp\u003e\u003c\/p\u003e","brand":"Endemik Sas","offers":[{"title":"Small - 22\"","offer_id":37819478409395,"sku":"2804","price":27.5,"currency_code":"EUR","in_stock":false},{"title":"Medium - 23\"","offer_id":37819478442163,"sku":"-205","price":27.5,"currency_code":"EUR","in_stock":false},{"title":"Wide - 24\"","offer_id":37819478474931,"sku":null,"price":27.5,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/588.jpg?v=1612799576"},{"product_id":"eponge-bambou-toilettage","title":"Bamboo Sponge - Optimal application of products","description":"\u003cp\u003eIdeal spray for applying your finishing products\u003c\/p\u003e\u003cbr\u003e\u003cdiv class=\"bloc_logo_marque\"\u003e  \u003ch1\u003eBamboo sponge - Made in Italy\u003c\/h1\u003e  \u003ch2\u003eA soft sponge enriched with bamboo extract, its specific texture is ideal for applying professional cosmetics to animals.\u003c\/h2\u003e  \u003cp\u003eThe active ingredients it contains help to create a moisturizing, toning and anti-irritant effect on the skin.\u003c\/p\u003e  \u003cp\u003eLatex-free. This product is made in Italy and dermatologically tested.\u003c\/p\u003e  \u003c\/div\u003e\u003cp\u003e\u003c\/p\u003e\u003cp\u003eAfter diluting the products, use this sponge for a perfect and pleasant application of cosmetics.\u003c\/p\u003e\u003cp\u003eWhether it's for pre-bath masks, shampoos, or even conditioner masks, we only use these sponges. Proven effectiveness.\u003c\/p\u003e","brand":"PetDesign shop","offers":[{"title":"Default Title","offer_id":37819484504243,"sku":"EPB1 (85)","price":5.5,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/IMG_2993.jpg?v=1612948973"},{"product_id":"snood-de-sechage-cache-oreilles-anti-bruits","title":"Drying snood - anti noise ear muffs","description":"\u003cp\u003e Ideal for avoiding the stress of drying for the dog. Anti noise, it will strongly calm any animal agitated or frightened by the noise of the kicker. \u003c\/p\u003e \u003cbr\u003e \u003cdiv class=\"bloc_logo_marque\"\u003e\n\u003ch1\u003e \u003cspan\u003e This drying snood was designed to calm dogs and reduce stress in the grooming salon, at home, in bad weather or even during fireworks. \u003c\/span\u003e \u003c\/h1\u003e\n\u003cp\u003e \u003cspan\u003e The earmuffs have been created in a comfortable, soft, stretch fabric that calms the dog by compression around the head and ears ... which isolates it from sound. \u003c\/span\u003e \u003c\/p\u003e\n\u003cp\u003e \u003cspan\u003e Can also be used to hold the ears while grooming or in other stressful situations such as cutting nails. Available in 4 sizes which are suitable for all breeds. \u003c\/span\u003e \u003c\/p\u003e\n\u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"Small (S)","offer_id":37819484635315,"sku":"2877","price":9.1,"currency_code":"EUR","in_stock":false},{"title":"Medium (M)","offer_id":37819484668083,"sku":"2878","price":10.1,"currency_code":"EUR","in_stock":false},{"title":"Large (L)","offer_id":37819484700851,"sku":"2879","price":11.0,"currency_code":"EUR","in_stock":false},{"title":"Extra Large (XL)","offer_id":37819484733619,"sku":"2880","price":12.1,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/599.jpg?v=1614083199"},{"product_id":"masque-toilettage-argile-verte","title":"DETOX THERAPY pre-bath mask with green clay","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003eDetox Therapy – Special One | Product Sheet\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e              \u003cstrong\u003eDETOX THERAPY\u003c\/strong\u003e is the Special One professional pre-bath mask formulated with green clay — \u003cem\u003ethe \u0026quot;land that heals a thousand ills\u0026quot;\u003c\/em\u003e — to act against the main skin abnormalities of dogs and cats. \u003cstrong\u003ePurifying, antiseptic, regenerating\u003c\/strong\u003e :  a natural and effective remedy from the first treatment.     \u003c\/div\u003e            \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eWho is this product for?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eEveryone will find it of real interest — as a treatment for animals with skin abnormalities, and as a preventative measure for predisposed breeds.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Groomers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Livestock farmers\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuals\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Competitors\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Handlers\u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eFormulated with\u003cstrong\u003egreen clay with controlled bacterial load\u003c\/strong\u003e,  Rich in trace elements and minerals, Detox Therapy possesses extraordinary purifying, toning, and anti-aging properties. It treats skin abnormalities. \u003cstrong\u003ewhile preserving the hydrolipidic film\u003c\/strong\u003e — without irritating the skin, even on the most sensitive animals.\u003c\/p\u003e            \u003cdiv style=\"background: #fff; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e              \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHealthy skin:\u003c\/strong\u003e Treats skin problems while preserving the hydrolipidic film, without causing irritation.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eOdor-resistant:\u003c\/strong\u003e Combating bad odors linked to skin disorders and poor sebum management.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eVersatile :\u003c\/strong\u003e Helps fight against all forms of alopecia, itching, irritation and hot spots.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDeep sanitation:\u003c\/strong\u003e Purifies and regenerates cells from the first treatment.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRebalancing:\u003c\/strong\u003e Regulates excess sebum and rebalances both oily and dehydrated skin.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eTissue oxygenation:\u003c\/strong\u003e Tones and stimulates cutaneous microcirculation, improving skin oxygenation and vitality.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAnti-dandruff:\u003c\/strong\u003e Regulates the scalp and reduces flakes.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eSoothing:\u003c\/strong\u003e Soothes irritated or reactive skin — ideal after waxing or vigorous brushing.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDetoxifying \u0026amp; refreshing:\u003c\/strong\u003e Cleans thoroughly while providing an immediate feeling of freshness.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Suitable for dogs and cats of all ages, from babies to seniors.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 3: ASSETS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergy of Natural Active Ingredients\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA 100% natural formulation, focused on cleansing, protecting and regenerating the skin — without parabens, without silicone.\u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e\u0026amp; Green Clay (Fuller's Earth)\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eWith controlled bacterial load: absorbent, antiseptic and antibacterial. Captures sebum and impurities, cleanses and regenerates the skin deep down.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Allantoin\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eSoothing and regenerating — protects the skin from redness and irritation, promotes healing of sensitive areas.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Extract of Fucus Vesiculosus seaweed\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRich in marine minerals — improves skin elasticity, gives strength and natural shine to the coat.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Hydrolyzed Collagen\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eHydrates and strengthens the skin structure — improves elasticity and overall skin health.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Potassium\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRegulates cellular hydration and maintains skin elasticity for a supple and resilient coat.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Calcium\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eStrengthens the skin's natural defenses — helps to better protect against external aggressions and irritations.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e                          \u003cstrong\u003e🍀 Purifying Complex\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eComplex of rebalancing active ingredients that keeps skin clean and fresh for a long time — fights against bad odors and forfora.\u003c\/span\u003e                      \u003c\/td\u003e                      \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/span\u003e            \u003cdiv style=\"margin-bottom: 10px; padding: 12px 15px; background: #fff; border: 1px solid #e5e5e5; font-size: 13px; font-weight: 600;\"\u003e              💡  \u003cstrong\u003eAlways apply to dry, still-dirty fur.\u003c\/strong\u003e Do not rinse before shampooing — the first shampoo is applied directly over the mask while it is still on.     \u003c\/div\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 1 🔥 Standard application — sanitation \u0026amp; purification\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         1. Dilute Detox Therapy with water (\u003cstrong\u003e1\/10 to 1\/20\u003c\/strong\u003e (depending on the desired intensity) or apply \u003cstrong\u003epure on areas requiring localized and intensive treatment\u003c\/strong\u003e.\u003cbr\u003e         2. Apply to dry, dirty hair. Gently massage to allow the mask to penetrate.\u003cbr\u003e         3. Let it sit \u003cstrong\u003e5 to 10 minutes\u003c\/strong\u003e.\u003cbr\u003e         4. Without rinsing, apply the shampoo directly. \u003cstrong\u003eAqua Terme Pro\u003c\/strong\u003e on the mask in place.\u003cbr\u003e         5. Finish with a conditioner: \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e and\/or \u003cstrong\u003eBombastic\u003c\/strong\u003e.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 2 🔥 Curative treatment — alopecia, itching, hot spots, irritations\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Regarding animals with reported skin abnormalities:\u003cbr\u003e         1. Apply the mask \u003cstrong\u003epure on the affected areas\u003c\/strong\u003e (hot spots, itchy areas, patches of alopecia).\u003cbr\u003e         2. Dilute to \u003cstrong\u003e1\/10\u003c\/strong\u003e for application on the rest of the body.\u003cbr\u003e         3. Gently massage and let it work \u003cstrong\u003e10 minutes\u003c\/strong\u003e minimum for maximum therapeutic action.\u003cbr\u003e         4. Go directly to the\u003cstrong\u003eAqua Terme Pro\u003c\/strong\u003e without rinsing beforehand.\u003cbr\u003e         This protocol can be repeated at each bath until there is a visible improvement in the skin condition.       \u003c\/div\u003e          \u003c\/details\u003e            \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e              \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e                  \u003cspan\u003eExample 3 🔥 Post-hair removal treatment \u0026amp; healthy regrowth\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eSCROLL DOWN ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Detox Therapy is particularly recommended \u003cstrong\u003eimmediately after hair removal\u003c\/strong\u003e :\u003cbr\u003e         1. Apply the mask pure or slightly diluted to the still dry waxed areas.\u003cbr\u003e         2. Massage gently — green clay instantly soothes reactive skin after hair removal.\u003cbr\u003e         3. Leave on for 5 to 10 minutes, then proceed to the\u003cstrong\u003eAqua Terme Pro\u003c\/strong\u003e without rinsing.\u003cbr\u003e         The purifying and regenerating action of clay prepares the follicles for \u003cstrong\u003ehealthy and high-quality regrowth\u003c\/strong\u003e.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e          \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eThe entire Special One range is compatible with Detox Therapy. Our favorite combinations:\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003eAqua Terme Pro\u003c\/strong\u003e in shampoo (a combination always recommended)       🤝  \u003cstrong\u003eHydrating Cream, Bombastic, Aqua Dolce\u003c\/strong\u003e in final mask     \u003c\/p\u003e            \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e              \u003ctbody\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All cats and dogs exhibiting the aforementioned skin abnormalities — curative use.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ All the breeds that are waxed — immediate post-waxing treatment for beautiful regrowth.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee; font-weight: 600; font-size: 12px; color: #555; text-transform: uppercase; letter-spacing: 0.05em;\"\u003eBreeds for which preventative use is recommended\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ French Bulldog \u0026amp; Pugs — skin with folds, seborrhea and frequent irritations.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Chinese Crested Dog — bare skin particularly exposed to aggression.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Golden Retriever — prone to irritations and excess sebum.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0;\"\u003e✔️ Shar-Pei — skin with deep folds, predisposed to infections and skin imbalances.\u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | Paraben-free, DEA-free, Silicone-free | Not tested on animals | Recyclable HDPE\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e    \u003c\/body\u003e","brand":"Endemik Sas","offers":[{"title":"5 Litres","offer_id":37819484995763,"sku":"WAQ-GRCL5000 (127)","price":152.9,"currency_code":"EUR","in_stock":true},{"title":"1 Litre","offer_id":57210676511065,"sku":"(80)","price":52.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/eleven_9.png?v=1771968021"},{"product_id":"aquaterme-argile-verte","title":"AQUA TERME PRO, clay care shampoo","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 14px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e              \u003cstrong\u003eAQUA TERME PRO\u003c\/strong\u003e is the Special One professional shampoo formulated with\u003cstrong\u003egreen clay and mint\u003c\/strong\u003e,  dedicated to skin requiring treatment. \u003cstrong\u003epurifies and deeply cleanses\u003c\/strong\u003e while respecting the hydrolipidic film — without any compromise on the result: superb visuals and a perfect blow-dry.     \u003c\/div\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e       It is also \u003cstrong\u003ethe ideal shampoo for dogs with odor problems\u003c\/strong\u003e :  Thanks to Aqua Terme, everyone finishes grooming with a wonderfully fresh scent.     \u003c\/div\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it — by \u003cstrong\u003ecurative\u003c\/strong\u003e on animals with skin abnormalities, and in \u003cstrong\u003epreventive\u003c\/strong\u003e on predisposed breeds.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThanks to its content of \u003cstrong\u003egreen clay and mint extract\u003c\/strong\u003e,  Aqua Terme Pro deeply purifies, soothes dehydrated or reactive skin, and restores shine and freshness to dull coats. Its treatment formula has no impact on grooming quality. \u003cstrong\u003eTherapeutic action and impeccable visual results go hand in hand\u003c\/strong\u003e.\u003c\/p\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 12l2 2 4-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eHealthy skin\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eTreats skin problems while preserving the hydrolipidic film, without causing irritation.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 8h9a2 2 0 1 0-2-2\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 12h13a2 2 0 1 1-2 2\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 16h7a2 2 0 1 1-2 2\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eOdor-resistant\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCombats bad odors linked to skin disorders and sebum.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l9 5-9 5-9-5z\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 13l9 5 9-5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eVersatile\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eHelps fight against alopecia, itching, irritations and hot spots.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3s6 6 6 11a6 6 0 0 1-12 0c0-5 6-11 6-11z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eSanitation \u0026amp; purification\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCleanses and regenerates cells deeply from the first use.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 4l1.6 4.4L18 10l-4.4 1.6L12 16l-1.6-4.4L6 10l4.4-1.6z\"\u003e\u003c\/path\u003e\u003cpath d=\"M18.5 15l.6 1.6 1.6.6-1.6.6-.6 1.6-.6-1.6-1.6-.6 1.6-.6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-dandruff\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eRegulates the scalp and significantly reduces flakes.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eSoothing\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSoothes irritated or reactive skin — ideal after waxing or vigorous brushing.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M5 19C5 11 11 5 19 5c0 8-6 14-14 14z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 19c4-4 7-6 11-7\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eCandy \u0026amp; freshness\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAdds brightness and freshness to dull, lifeless coats.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 7;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M6 15l6-6 6 6\"\u003e\u003c\/path\u003e\u003cpath d=\"M6 9l6-6 6 6\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eWearing fine furs\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eGives body to very fine hair that lacks volume (e.g., grey, red poodles).\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 8;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M21 12a9 9 0 1 1-3-6.7\"\u003e\u003c\/path\u003e\u003cpath d=\"M21 4v4h-4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eDetoxifying \u0026amp; refreshing\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eEliminates toxins and skin impurities with an immediate feeling of freshness.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 9;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"8\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"4\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"1.2\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eSpitz X alopecia\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eRecommended for weekly use in the follow-up and regrowth protocol.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 10;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"9\" cy=\"13\" r=\"4\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"16\" cy=\"9\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"17.5\" cy=\"15\" r=\"1.5\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eExceptional foam\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eMousse works wonderfully in salons: easy application and good distribution of active ingredients.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 11;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"9\" r=\"5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M9 13.5L7.5 21 12 18.5 16.5 21 15 13.5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eProfessional result\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eUncompromising treatment action — superb look and perfect blow-dry.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Aqua Terme Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Soin peau\", value: 5 }, { label: \"Volume\", value: 4 }, { label: \"Moussant\", value: 4 }, { label: \"Texture\", value: 3 }, { label: \"Hydratation\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (MAPPING JS active Aqua Terme Pro - reliable) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Aqua Terme Pro: natural active ingredients \u0026amp; targeted action\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA completely natural mineral and plant complex — \u003cstrong\u003egreen clay, mint and purifying plants\u003c\/strong\u003e,  SLS-free, paraben-free, silicone-free. Here, zone by zone, is how each active ingredient works on the skin and hair.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display:block;width:100%;height:auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l'Aqua Terme Pro\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'argile', label:'Argile Verte', latin:'Fuller’s Earth', family:'aqua',\n          desc:\"Argile minérale antibactérienne et absorbante : elle purifie la peau en profondeur, capte le sébum en excès et régénère les cellules cutanées.\",\n          targets: [\n            { anchor:'glande_seb', action:\"Capture du sébum\", benefit:\"Absorbe l'excès de sébum et assainit les glandes sébacées.\" },\n            { anchor:'epiderme', action:\"Purification profonde\", benefit:\"Capte impuretés et toxines, puis régénère les cellules de surface.\" }\n          ]\n        },\n        {\n          id:'mineral', label:'Complexe Minéral', latin:'Fer · Calcium · Silicium · Magnésium · Potassium', family:'aqua',\n          desc:\"Oligo-éléments essentiels qui reminéralisent la peau, renforcent le manteau et lui restituent force et brillance naturelle.\",\n          targets: [\n            { anchor:'derme', action:\"Reminéralisation\", benefit:\"Apporte les oligo-éléments qui renforcent la structure cutanée en profondeur.\" },\n            { anchor:'tige_poil', action:\"Force \u0026 brillance\", benefit:\"Restitue résistance et brillance naturelle au manteau.\" }\n          ]\n        },\n        {\n          id:'menthe', label:'Menthol \u0026 Huile de Tea Tree', latin:'Mentha \u0026 Melaleuca', family:'botanic',\n          desc:\"Duo rafraîchissant, lénitif et purifiant : effet immédiat de bien-être qui apaise les irritations cutanées.\",\n          targets: [\n            { anchor:'epiderme', action:\"Fraîcheur \u0026 lénifiant\", benefit:\"Sensation de fraîcheur immédiate qui apaise les irritations.\" },\n            { anchor:'film_hydro', action:\"Purifiant doux\", benefit:\"Assainit la surface tout en respectant le film protecteur.\" }\n          ]\n        },\n        {\n          id:'romarin', label:'Romarin', latin:'Rosmarinus officinalis', family:'botanic',\n          desc:\"Tonique végétal qui fortifie le poil et améliore la microcirculation cutanée : il favorise un manteau plus résistant et lumineux.\",\n          targets: [\n            { anchor:'follicule', action:\"Stimulation de la pousse\", benefit:\"Active la microcirculation autour du follicule et favorise une repousse vigoureuse.\" },\n            { anchor:'tige_poil', action:\"Fortifie le poil\", benefit:\"Renforce la fibre pour un manteau résistant et lumineux.\" }\n          ]\n        },\n        {\n          id:'ortie', label:\"Extrait d'Ortie\", latin:'Urtica dioica', family:'bio',\n          desc:\"Plante séborégulatrice et anti-pelliculaire : elle régule la production de sébum et stimule la régénération cutanée.\",\n          targets: [\n            { anchor:'glande_seb', action:\"Séborégulation\", benefit:\"Régule la production de sébum à la source.\" },\n            { anchor:'epiderme', action:\"Anti-pelliculaire\", benefit:\"Stimule la régénération cutanée et réduit les squames.\" }\n          ]\n        },\n        {\n          id:'biotine', label:'Biotine \u0026 Niacinamide', latin:'Vitamines B7 \u0026 B3', family:'bio',\n          desc:\"Duo réparateur essentiel : renforce la structure du poil, stimule la croissance et réduit les pellicules.\",\n          targets: [\n            { anchor:'bulbe', action:\"Croissance du poil\", benefit:\"Nourrissent le bulbe et stimulent la pousse d'un poil plus fort.\" },\n            { anchor:'tige_poil', action:\"Renfort structural\", benefit:\"Renforcent la structure de la fibre de l'intérieur.\" }\n          ]\n        },\n        {\n          id:'citron', label:'Citron \u0026 Piroctone Olamine', latin:'Citrus limon \u0026 actif assainissant', family:'cond',\n          desc:\"Action déodorante, antibactérienne et protectrice : neutralise les mauvaises odeurs et protège la peau des agents externes.\",\n          targets: [\n            { anchor:'glande_sud', action:\"Action déodorante\", benefit:\"Neutralise les mauvaises odeurs liées aux déséquilibres cutanés.\" },\n            { anchor:'epiderme', action:\"Protection antibactérienne\", benefit:\"Protège la peau des agents externes et limite la prolifération bactérienne.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e        \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalencies) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e20\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eOne part for every 20 parts water\u003cbr\u003e— or pure\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e250 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 5 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e1 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 20 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e5 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 100 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e50\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e50\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e3\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoons\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCyclePump\"\u003e2\u003c\/strong\u003e  \u003cspan id=\"aqrCyclePumpLabel\"\u003epump pressures\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '50',  g: '50',  spoon: '3',  pump: '2' },\n        { target: '2 L', ml: '100', g: '100', spoon: '6',  pump: '4' },\n        { target: '4 L', ml: '200', g: '200', spoon: '12', pump: '8' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var pumpEl = document.getElementById('aqrCyclePump');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      var pumpLabelEl = document.getElementById('aqrCyclePumpLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (pumpEl) pumpEl.textContent = c.pump;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          if (pumpLabelEl) pumpLabelEl.textContent = frPlural(c.pump, 'pression de pompe', 'pressions de pompe');\n          [targetEl, mlEl, gEl, spoonEl, pumpEl, spoonLabelEl, pumpLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e                                      \u003cdetails class=\"aqr-proto-acc\" open\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eQuick grooming \u0026amp; skin to soothe\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eFor an effective and soothing daily bath\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFirst shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eStart the bath directly with the\u003cstrong\u003eAqua Terme Pro diluted\u003c\/strong\u003e on wet fur. Rinse.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply a \u003cstrong\u003esecond shampoo\u003c\/strong\u003e,  then rinse again.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eFinishing\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinish with the appropriate conditioner: \u003cstrong\u003eHydrating Cream, Bombastic or Aqua Dolce\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e                \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cspan class=\"aqr-proto-title\"\u003eBath \u0026amp; Deep treatment — skin requiring intensive action\u003c\/span\u003e                      \u003cspan class=\"aqr-proto-plus\"\u003e\u003csvg viewbox=\"0 0 24 24\" width=\"14\" height=\"14\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5 L12 19 M5 12 L19 12\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-content\"\u003e                      \u003cp class=\"aqr-proto-subtitle\"\u003eFor skin with marked skin abnormalities\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDetox Pre-Bath Mask\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply the pre-bath mask \u003cstrong\u003eDetox Therapy for 10 minutes\u003c\/strong\u003e on dry hair.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eNo-rinse treatment\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eProceed directly to the\u003cstrong\u003eAqua Terme Pro No-Rinse\u003c\/strong\u003e between the two phases.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDouble shampoo \u0026amp; laid\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRinse, then shampoo again. \u003cstrong\u003eLeave on for 5 minutes\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRestorative finish\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalize with \u003cstrong\u003eHydrating Cream + 4 Element Oils\u003c\/strong\u003e,  then rinse out the conditioner.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Aqua Terme Pro at its core + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eThe entire Special One range\u003c\/strong\u003e is compatible with Aqua Terme Pro. Our favorite combinations:\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA pre-swim mask is a must…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eDetox Therapy\u003c\/strong\u003e (always recommended)\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eA final treatment is necessary…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eAqua Dolce Bombastic Hydrating Cream\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eThe skin is very reactive…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHydrating Cream + 4 Element Oils\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Aqua Terme Pro makes the difference:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🦊 Spitz · Alopecia X \u003cspan\u003e(weekly bath: outfit, growth \u0026amp; density)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Grey, red poodles \u0026amp; wild beasts \u003cspan\u003e(fine hair: hold \u0026amp; (regrowth)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 Cats \u0026amp; dogs with skin abnormalities \u003cspan\u003e(curative use)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✂️ Races that are waxed \u003cspan\u003e(regrowth after hair removal)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐶 French Bulldog \u0026amp; Pugs \u003cspan\u003e(folds, seborrhea, irritations)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 Chinese Crested Dog \u003cspan\u003e(exposed bare skin)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🦮 Golden Retriever \u003cspan\u003e(irritations \u0026amp; excess sebum)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐺 Shar-Pei \u003cspan\u003e(deep folds, skin imbalances)\u003c\/span\u003e\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eNon-exhaustive list — for both curative and preventative use on sensitive and predisposed skin.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLS, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"1 Litre","offer_id":57191767540057,"sku":"(77)","price":51.5,"currency_code":"EUR","in_stock":true},{"title":"5 Litres","offer_id":37819485028531,"sku":"WAQ-AQTE5000 (153)","price":144.2,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/eleven_7.png?v=1771967768"},{"product_id":"aquadolce-apres-shampoing-chien","title":"AQUA DOLCE","description":"\u003c!-- ============================================== DESIGN SYSTEM — Visual Refinement ============================================= --\u003e  \u003cstyle id=\"aqr-design-system\"\u003e\n  \/* On garde la police du theme Shopify - juste antialiasing pour le rendu *\/\n  body, body * {\n    -webkit-font-smoothing: antialiased;\n    -moz-osx-font-smoothing: grayscale;\n  }\n  \n  \/* === Variables du système de design === *\/\n  :root {\n    --ds-black: #1d1d1f;        \/* Noir doux — légèrement plus chaud que le noir pur *\/\n    --ds-text: #1d1d1f;\n    --ds-text-secondary: #86868b; \/* Gris secondaire *\/\n    --ds-text-tertiary: #a1a1a6;\n    --ds-bg: #ffffff;\n    --ds-bg-elevated: #fbfbfd;   \/* Gris très clair *\/\n    --ds-bg-soft: #f5f5f7;       \/* Gris très clair *\/\n    --ds-border: #d2d2d7;\n    --ds-border-soft: #e8e8ed;\n    --ds-gold: #c2a85c;          \/* Or subtil et mat *\/\n    --ds-gold-pale: #f0e6cf;\n    --ds-radius-sm: 8px;\n    --ds-radius-md: 12px;\n    --ds-radius-lg: 18px;\n    --ds-radius-xl: 22px;\n    --ds-ease: cubic-bezier(0.16, 1, 0.3, 1);\n    --ds-duration: 0.35s;\n  }\n\n  \/* === Couleurs noir \/ doré === *\/\n  \/* Cards expertise (Proposition D) *\/\n  .aqr-benefit-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 20px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n    \/* Force l'alignement haut de chaque card dans la grille *\/\n    align-self: stretch !important;\n    margin: 0 !important;\n    vertical-align: top !important;\n  }\n  .aqr-benefits-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  \/* MEME chose pour les audience cards et autres grilles *\/\n  .aqr-audience-grid {\n    align-items: start !important;\n    align-content: start !important;\n  }\n  .aqr-audience-card {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-benefit-card::before {\n    background: var(--ds-text) !important;\n    width: 3px !important;\n  }\n  .aqr-benefit-card:hover {\n    background: var(--ds-bg) !important;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-benefit-card:hover::before {\n    width: 3px !important;\n    background: var(--ds-gold) !important;\n  }\n  .aqr-benefit-corner {\n    width: 14px !important;\n    height: 14px !important;\n    background: linear-gradient(225deg, var(--ds-gold-pale) 50%, transparent 50%) !important;\n    border-top-right-radius: var(--ds-radius-md) !important;\n  }\n  .aqr-benefit-icon {\n    background: var(--ds-text) !important;\n    color: var(--ds-gold) !important;\n    border-radius: var(--ds-radius-sm) !important;\n  }\n  .aqr-benefit-title {\n    color: var(--ds-text) !important;\n    font-weight: 600 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 14px !important;\n  }\n  .aqr-benefit-desc {\n    color: var(--ds-text-secondary) !important;\n    font-size: 12px !important;\n    line-height: 1.55 !important;\n  }\n\n  \/* === Cards Audience === *\/\n  .aqr-audience-card {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-md) !important;\n    padding: 18px 12px !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                box-shadow var(--ds-duration) var(--ds-ease),\n                border-color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-audience-card:hover {\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.06);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-audience-icon {\n    background: var(--ds-bg-soft) !important;\n    border-radius: 50% !important;\n    width: 44px !important;\n    height: 44px !important;\n  }\n  .aqr-audience-icon svg { stroke: var(--ds-text) !important; }\n  .aqr-audience-name {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    font-size: 13px !important;\n    letter-spacing: -0.01em !important;\n  }\n\n  \/* === Eyebrows === *\/\n  span[style*=\"text-transform: uppercase\"][style*=\"color: #999\"] {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n    font-size: 11px !important;\n    margin-bottom: 18px !important;\n  }\n\n  \/* === Blocs principaux : fond uniforme === *\/\n  \/* Les blocs sur fond crème deviennent gris pâle *\/\n  div[style*=\"background-color: #FBF9F5\"] {\n    background-color: var(--ds-bg-soft) !important;\n  }\n\n  \/* === Bloc Dilution === *\/\n  .aqr-dilution {\n    border: none !important;\n    padding: 0 !important;\n    background: transparent !important;\n  }\n  \/* Forcer l'alignement haut + hauteur egale des 3 cartes dilution *\/\n  .aqr-dilution-grid {\n    align-items: stretch !important;\n  }\n  .aqr-dilution-cell {\n    align-self: stretch !important;\n    margin: 0 !important;\n  }\n  .aqr-dilution-eyebrow {\n    color: var(--ds-text-secondary) !important;\n    letter-spacing: 0.08em !important;\n    font-weight: 500 !important;\n    margin-bottom: 20px !important;\n  }\n  .aqr-dilution-eq-target {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 6px !important;\n    padding: 4px 12px !important;\n  }\n  .aqr-dilution-eq-item {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    border-radius: var(--ds-radius-sm) !important;\n    padding: 14px 8px !important;\n  }\n  .aqr-dilution-eq-val {\n    font-weight: 700 !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-eq-name {\n    color: var(--ds-text-secondary) !important;\n  }\n  .aqr-dilution-eq-sep {\n    color: var(--ds-text-tertiary) !important;\n  }\n  .aqr-dilution-eq-or span {\n    color: var(--ds-text-tertiary) !important;\n  }\n\n  \/* === Chips rendement (le trio horizontal) === *\/\n  .aqr-dilution-chips-label {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.08em !important;\n  }\n  .aqr-dilution-chip-from,\n  .aqr-dilution-chip-to {\n    color: var(--ds-text) !important;\n  }\n  .aqr-dilution-chip-arr { color: var(--ds-gold) !important; }\n  .aqr-dilution-chips-foot { color: var(--ds-text-secondary) !important; }\n  \n  \/* === Accordeons Protocoles === *\/\n  .aqr-proto-acc {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    border-radius: var(--ds-radius-md) !important;\n    overflow: hidden;\n    transition: box-shadow var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] {\n    box-shadow: 0 12px 32px rgba(0,0,0,0.08);\n  }\n  \/* Suppression des perforations beige du ticket *\/\n  .aqr-proto-acc::before,\n  .aqr-proto-acc::after {\n    display: none !important;\n  }\n  .aqr-proto-summary {\n    padding: 18px 56px 18px 22px !important; \/* right plus large pour le +, left aere *\/\n  }\n  .aqr-proto-title {\n    word-wrap: break-word;\n    overflow-wrap: break-word;\n    hyphens: auto;\n  }\n  @media (max-width: 600px) {\n    .aqr-proto-summary {\n      padding: 16px 50px 16px 18px !important;\n    }\n    .aqr-proto-plus {\n      right: 16px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 18px 18px !important;\n    }\n  }\n  @media (max-width: 380px) {\n    .aqr-proto-summary {\n      padding: 14px 44px 14px 14px !important;\n    }\n    .aqr-proto-plus {\n      right: 12px !important;\n    }\n    .aqr-proto-content {\n      padding: 4px 14px 16px !important;\n    }\n  }\n  .aqr-proto-title {\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    letter-spacing: -0.01em !important;\n    font-size: 15px !important;\n  }\n  .aqr-proto-plus {\n    border-color: var(--ds-border) !important;\n    color: var(--ds-text-secondary) !important;\n    background: transparent !important;\n    transition: transform var(--ds-duration) var(--ds-ease),\n                background var(--ds-duration) var(--ds-ease),\n                color var(--ds-duration) var(--ds-ease) !important;\n  }\n  .aqr-proto-acc[open] .aqr-proto-plus {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-color: var(--ds-text) !important;\n  }\n  .aqr-proto-content { padding: 4px 24px 22px !important; }\n  .aqr-proto-subtitle {\n    color: var(--ds-text-secondary) !important;\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n  }\n  .aqr-proto-step-marker {\n    background: var(--ds-bg-soft) !important;\n    border-color: transparent !important;\n    color: var(--ds-text) !important;\n  }\n  .aqr-proto-step-title {\n    color: var(--ds-text) !important;\n    letter-spacing: 0.06em !important;\n    font-weight: 600 !important;\n  }\n  .aqr-proto-step-desc {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* === Associations Si → Alors === *\/\n  .aqr-assoc-intro {\n    color: var(--ds-text-secondary) !important;\n    font-size: 14px !important;\n    line-height: 1.6 !important;\n  }\n  .aqr-assoc-rule {\n    border-bottom: 1px solid var(--ds-border-soft) !important;\n    padding: 18px 4px !important;\n  }\n  .aqr-assoc-if-tag {\n    background: var(--ds-text) !important;\n    color: var(--ds-bg) !important;\n    border-radius: 4px !important;\n    font-weight: 600 !important;\n    letter-spacing: 0.04em !important;\n  }\n  .aqr-assoc-if span { color: var(--ds-text-secondary) !important; }\n  .aqr-assoc-then-arrow { color: var(--ds-gold) !important; }\n  .aqr-assoc-then strong { color: var(--ds-text) !important; }\n\n  \/* === Races (pilules) === *\/\n  .aqr-race-tag {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border-soft) !important;\n    color: var(--ds-text) !important;\n    font-weight: 500 !important;\n    transition: transform 0.2s var(--ds-ease), border-color 0.2s var(--ds-ease) !important;\n  }\n  .aqr-race-tag:hover {\n    transform: translateY(-1px);\n    border-color: var(--ds-border) !important;\n  }\n  .aqr-race-tag span { color: var(--ds-text-secondary) !important; }\n\n  \/* === Radar : points forts en pilules === *\/\n  .so-foot-centered-chip {\n    background: var(--ds-bg) !important;\n    border: 1px solid var(--ds-border) !important;\n    color: var(--ds-text) !important;\n    border-radius: 100px !important;\n    padding: 6px 14px !important;\n    font-weight: 500 !important;\n  }\n  .so-foot-centered-chip em {\n    color: var(--ds-gold) !important;\n  }\n  .so-foot-centered-title {\n    color: var(--ds-text-secondary) !important;\n    font-weight: 500 !important;\n    letter-spacing: 0.18em !important;\n  }\n  .so-foot-centered-line {\n    background: var(--ds-border-soft) !important;\n  }\n\n  \/* === Cartographie : ajouter de l'air === *\/\n  #aqr-carto .aqr-list-item {\n    border-radius: var(--ds-radius-sm) !important;\n    transition: background 0.2s var(--ds-ease) !important;\n  }\n  \/* Assurer la visibilite de l'image schema dans tous les contextes *\/\n  #aqr-carto .aqr-schema-wrap {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    overflow: visible !important;\n  }\n  #aqr-carto .aqr-schema-img {\n    display: block !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    width: 100% !important;\n    height: auto !important;\n  }\n\n  \/* === Le grand 1\/20 — typographie plus light === *\/\n  .aqr-dilution-ratio-num {\n    color: var(--ds-text) !important;\n    font-weight: 700 !important;\n  }\n  .aqr-dilution-ratio-sub {\n    color: var(--ds-text-secondary) !important;\n  }\n\n  \/* Animations apaisees - cible seulement les elements avec transition (pas les animations) *\/\n  .aqr-audience-card,\n  .aqr-race-tag,\n  .aqr-proto-acc,\n  .aqr-proto-plus,\n  .aqr-dilution,\n  .so-foot-centered-chip {\n    transition-timing-function: var(--ds-ease) !important;\n  }\n\n  \/* === Le footer mentions === *\/\n  div[style*=\"text-transform: uppercase\"][style*=\"color: #888\"] {\n    color: var(--ds-text-tertiary) !important;\n    font-size: 10px !important;\n    letter-spacing: 0.05em !important;\n    font-weight: 500 !important;\n  }\n\u003c\/style\u003e  \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOCK 1: INTRO --\u003e      \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e              \u003cstrong\u003eAQUA DOLCE\u003c\/strong\u003e is a \u003cstrong\u003eexceptional revitalizing and softening conditioner mask\u003c\/strong\u003e.  Formulated to enhance all coat types, it offers intense action to \u003cstrong\u003eto restore the vitality and firmness of stressed fur\u003c\/strong\u003e.     \u003c\/div\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eWho is this product for?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEveryone will find something of real interest in it! It's the \u003cstrong\u003eThe ultimate all-purpose treatment\u003c\/strong\u003e for the \u003cem\u003emanti crespi\u003c\/em\u003e (curly) and tired from brushing or the climate.\u003c\/p\u003e            \u003cdiv class=\"aqr-audience\"\u003e              \u003cdiv class=\"aqr-audience-grid\"\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"6\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"18\" cy=\"18\" r=\"2.5\"\u003e\u003c\/circle\u003e\u003cpath d=\"M8 16 L20 4\"\u003e\u003c\/path\u003e\u003cpath d=\"M16 16 L4 4\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"11.5\" r=\"1\" fill=\"#1a1a1a\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eGroomers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 21 L3 12 L12 5 L21 12 L21 21 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 21 L9 15 L15 15 L15 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eLivestock farmers\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"8\" r=\"4\"\u003e\u003c\/circle\u003e\u003cpath d=\"M4 21 Q4 14 12 14 Q20 14 20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eIndividuals\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 4 L17 4 L17 10 Q17 15 12 15 Q7 15 7 10 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M5 5 L7 5 L7 9 L5 9 Q3 9 3 7 Q3 5 5 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M19 5 L17 5 L17 9 L19 9 Q21 9 21 7 Q21 5 19 5 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M10 15 L10 19 L14 19 L14 15\"\u003e\u003c\/path\u003e\u003cpath d=\"M8 21 L16 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eCompetitors\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-audience-card\"\u003e                      \u003cdiv class=\"aqr-audience-icon\"\u003e                          \u003csvg viewbox=\"0 0 24 24\" width=\"20\" height=\"20\" fill=\"none\" stroke=\"#1a1a1a\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"8\" cy=\"7\" r=\"3\"\u003e\u003c\/circle\u003e\u003cpath d=\"M2 21 Q2 15 8 15 Q14 15 14 21\"\u003e\u003c\/path\u003e\u003ccircle cx=\"17\" cy=\"11\" r=\"2\"\u003e\u003c\/circle\u003e\u003cpath d=\"M14 21 L14 18 Q14 15 17 15 L20 15 L20 21\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-audience, .aqr-audience * { box-sizing: border-box; font-family: inherit; }\n      .aqr-audience-grid {\n        display: grid;\n        grid-template-columns: repeat(5, 1fr);\n        gap: 8px;\n      }\n      .aqr-audience-card {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: center;\n        gap: 8px;\n        padding: 16px 10px;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        border-radius: 8px;\n        text-align: center;\n        transition: border-color 0.2s, transform 0.2s;\n      }\n      .aqr-audience-card:hover {\n        border-color: #1a1a1a;\n        transform: translateY(-1px);\n      }\n      .aqr-audience-icon {\n        width: 40px;\n        height: 40px;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        background: #f6f6f6;\n        border-radius: 50%;\n      }\n      .aqr-audience-name {\n        font-size: 12px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-audience-grid { grid-template-columns: repeat(3, 1fr); }\n      }\n      @media (max-width: 420px) {\n        .aqr-audience-grid { grid-template-columns: repeat(2, 1fr); }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 2: EXPERTISE \u0026  RESULTS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eExpertise \u0026amp; Results\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eThanks to its management of the \u003cstrong\u003ehair permeability\u003c\/strong\u003e,  Aqua Dolce makes the \u003cstrong\u003efrizz\u003c\/strong\u003e and fiber fatigue \u003cstrong\u003ewithout ever greasing\u003c\/strong\u003e.  It restructures the hair after summer or intensive brushing.\u003c\/p\u003e          \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e              \u003cdiv class=\"aqr-benefits-grid\"\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 12h18M12 3v18M5 8l14 0M5 16l14 0\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eSheathing \u0026amp; Outfit\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eIncreases shine and ensures a \u003cstrong\u003eimproved grooming results\u003c\/strong\u003e.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M3 12c2-3 4-3 6 0s4 3 6 0 4-3 6 0\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 16c2-3 4-3 6 0s4 3 6 0 4-3 6 0\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eAnti-Frizz\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003e  \u003cstrong\u003eInstantly eliminates frizz\u003c\/strong\u003e and tames the hair.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M4 4h16v6M4 4v3M8 4v3M12 4v3M16 4v3M20 4v3M4 10h16l-2 10H6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eDetangling\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eMakes combing easier and \u003cstrong\u003eprevents the return of the nodes\u003c\/strong\u003e.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 21C12 21 4 13.8 4 8.6A4 4 0 0 1 12 6 A4 4 0 0 1 20 8.6C20 13.8 12 21 12 21z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eRepair\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eRestores vitality and \u003cstrong\u003etreats split ends\u003c\/strong\u003e.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e                      \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-icon\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M12 3l7 3v5c0 4.5-3 7.7-7 9-4-1.3-7-4.5-7-9V6z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e                      \u003cdiv class=\"aqr-benefit-content\"\u003e                          \u003cdiv class=\"aqr-benefit-title\"\u003eProtection\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003e  \u003cstrong\u003eShield\u003c\/strong\u003e against chemical and environmental agents.\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-benefits, .aqr-benefits * { box-sizing: border-box; font-family: inherit; }\n      .aqr-benefits-grid {\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        grid-auto-rows: 1fr;\n        align-items: stretch;\n        gap: 10px;\n      }\n      .aqr-benefit-card {\n        position: relative;\n        display: flex;\n        gap: 14px;\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 8px;\n        padding: 16px 18px;\n        align-items: center;\n        overflow: hidden;\n        opacity: 0;\n        animation: aqrBenefitFadeIn 0.5s ease-out forwards;\n        animation-delay: calc(var(--i) * 80ms);\n        transition: background 0.3s;\n      }\n      .aqr-benefit-card::before {\n        content: \"\";\n        position: absolute;\n        top: 0; left: 0; bottom: 0;\n        width: 4px;\n        background: #1a1a1a;\n        transition: width 0.3s, background 0.3s;\n      }\n      .aqr-benefit-card:hover { background: #fafafa; }\n      .aqr-benefit-card:hover::before {\n        width: 6px;\n        background: #D4AF37;\n      }\n      .aqr-benefit-corner {\n        position: absolute;\n        top: 0; right: 0;\n        width: 18px; height: 18px;\n        background: linear-gradient(225deg, #F5E6B8 50%, transparent 50%);\n        border-top-right-radius: 8px;\n        overflow: hidden;\n      }\n      .aqr-benefit-icon {\n        flex-shrink: 0;\n        width: 44px; height: 44px;\n        display: flex; align-items: center; justify-content: center;\n        background: #1a1a1a;\n        color: #F5E6B8;\n        border-radius: 0;\n      }\n      .aqr-benefit-icon svg { width: 22px; height: 22px; }\n      .aqr-benefit-content { flex: 1; min-width: 0; }\n      .aqr-benefit-title {\n        font-size: 14px;\n        font-weight: 700;\n        color: #1a1a1a;\n        margin-bottom: 3px;\n      }\n      .aqr-benefit-desc {\n        font-size: 11px;\n        line-height: 1.5;\n        color: #555;\n      }\n      @keyframes aqrBenefitFadeIn {\n        to { opacity: 1; }\n      }\n      @media (max-width: 600px) {\n        .aqr-benefits-grid { grid-template-columns: 1fr; gap: 8px; }\n      }\n    \u003c\/style\u003e      \u003c\/div\u003e        \u003c!-- RADAR UNIT (moved under Expertise) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eBetter understand the actions of Aqua Dolce\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA detailed breakdown of its cosmetic performance, note by note.\u003c\/p\u003e          \u003cdiv id=\"so-radar-widget\" style=\"width:100%;max-width:480px;margin:0 auto;background:#fff;border:1px solid #e5e5e5;font-family:inherit;color:#1a1a1a;line-height:1.4;\"\u003e              \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e                                    \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e                      \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e                  \u003c\/div\u003e                  \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003cstyle\u003e\n    #so-radar-widget * { box-sizing: border-box; }\n    .so-label { position: absolute; transform: translate(-50%, -50%); text-align: center; pointer-events: none; white-space: nowrap; opacity: 0; animation: so-fadeUp 0.5s ease forwards; }\n    .so-label .so-lname { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: #999; display: block; margin-bottom: 1px; font-family: inherit; }\n    .so-label .so-lval { font-size: 24px; font-weight: 700; color: #1a1a1a; line-height: 1; font-family: inherit; }\n    .so-label .so-lmax { font-size: 12px; font-weight: 400; color: #bbb; font-family: inherit; }\n    .so-foot-centered { margin-top: 18px; padding-top: 16px; border-top: 1px solid #eee; opacity: 0; animation: so-footerIn 0.5s ease forwards 0.8s; }\n    .so-foot-centered-head { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 14px; }\n    .so-foot-centered-line { flex: 1; height: 1px; background: #1a1a1a; max-width: 50px; }\n    .so-foot-centered-title { font-size: 9px; letter-spacing: 0.3em; font-weight: 700; color: #1a1a1a; font-family: inherit; }\n    .so-foot-centered-chips { display: grid; grid-template-columns: auto auto; justify-content: center; justify-items: center; gap: 6px; }\n    .so-foot-centered-chip { display: inline-flex; align-items: baseline; gap: 6px; background: #fff; border: 1px solid #1a1a1a; color: #1a1a1a; padding: 6px 14px; border-radius: 100px; font-size: 11px; font-weight: 600; font-family: inherit; }\n    .so-foot-centered-chip em { font-family: Georgia, \"Times New Roman\", serif; font-style: italic; font-weight: 700; color: #D4AF37; font-size: 11px; }\n    .so-shape-fill   { opacity: 0; animation: so-shapeIn 0.9s ease forwards 0.2s; }\n    .so-shape-stroke { opacity: 0; animation: so-shapeIn 0.7s ease forwards 0.35s; }\n    .so-dot          { opacity: 0; animation: so-dotIn 0.35s ease forwards; }\n    @keyframes so-shapeIn  { to { opacity: 1; } }\n    @keyframes so-dotIn    { to { opacity: 1; } }\n    @keyframes so-footerIn { to { opacity: 1; } }\n    @keyframes so-fadeUp { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } to { opacity: 1; transform: translate(-50%, -50%); } }\n    .so-trace-stroke { opacity: 0; animation: so-traceIn 0.5s ease forwards 0.8s, so-traceMove 3.5s linear infinite 1.3s; }\n    @keyframes so-traceIn { to { opacity: 1; } }\n    @keyframes so-traceMove { from { stroke-dashoffset: 0; } to { stroke-dashoffset: calc(-1 * var(--so-perim, 600)); } }\n    @media (max-width: 480px) {\n      #so-radar-widget \u003e div { padding: 18px 16px 14px !important; }\n      #so-radar-area { max-width: 300px !important; }\n      .so-label .so-lname { font-size: 8px !important; letter-spacing: 0.05em !important; }\n      .so-label .so-lval  { font-size: 19px !important; }\n      .so-label .so-lmax  { font-size: 9px !important; }\n      .so-foot-centered-title { font-size: 8px !important; letter-spacing: 0.25em !important; }\n      .so-foot-centered-chip { font-size: 10px !important; padding: 5px 12px !important; }\n      .so-foot-centered-chip em { font-size: 10px !important; }\n      .so-foot-centered-line { max-width: 30px !important; }\n    }\n    @media (max-width: 360px) {\n      #so-radar-area { max-width: 260px !important; }\n      .so-label .so-lval { font-size: 16px !important; }\n      .so-label .so-lname { font-size: 7px !important; }\n    }\n  \u003c\/style\u003e        \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Démêlant\", value: 4 }, { label: \"Hydratation\", value: 5 }, { label: \"Brillance\", value: 3 }, { label: \"Volume\", value: 1 }, { label: \"Soin peau\", value: 3 } ] };\n    var svg = document.getElementById(\"so-radar-svg\"); var area = document.getElementById(\"so-radar-area\");\n    var data = PRODUCT.criteria; var n = data.length; var cx = 180, cy = 180, maxR = 95;\n    function ang(i) { return (Math.PI * 2 * i \/ n) - Math.PI \/ 2; }\n    function pt(i, v, mx) { var a = ang(i), r = (v \/ mx) * maxR; return { x: cx + r * Math.cos(a), y: cy + r * Math.sin(a) }; }\n    function svgEl(tag) { return document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", tag); }\n    for (var l = 1; l \u003c= 5; l++) { var pts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, l, 5); pts.push(p.x + \",\" + p.y); } var poly = svgEl(\"polygon\"); poly.setAttribute(\"points\", pts.join(\" \")); poly.setAttribute(\"fill\", \"none\"); poly.setAttribute(\"stroke\", l === 5 ? \"rgba(0,0,0,0.09)\" : \"rgba(0,0,0,0.04)\"); poly.setAttribute(\"stroke-width\", l === 5 ? \"1\" : \"0.6\"); if (l === 5) poly.setAttribute(\"stroke-dasharray\", \"3,3\"); svg.appendChild(poly); }\n    for (var i = 0; i \u003c n; i++) { var p = pt(i, 5, 5); var line = svgEl(\"line\"); line.setAttribute(\"x1\", cx); line.setAttribute(\"y1\", cy); line.setAttribute(\"x2\", p.x); line.setAttribute(\"y2\", p.y); line.setAttribute(\"stroke\", \"rgba(0,0,0,0.04)\"); line.setAttribute(\"stroke-width\", \"0.6\"); svg.appendChild(line); }\n    var shapePts = []; for (var i = 0; i \u003c n; i++) { var p = pt(i, data[i].value, 5); shapePts.push(p.x + \",\" + p.y); } var ptsStr = shapePts.join(\" \");\n    var fillPoly = svgEl(\"polygon\"); fillPoly.setAttribute(\"points\", ptsStr); fillPoly.setAttribute(\"fill\", \"rgba(0,0,0,0.04)\"); fillPoly.classList.add(\"so-shape-fill\"); svg.appendChild(fillPoly);\n    var strokePoly = svgEl(\"polygon\"); strokePoly.setAttribute(\"points\", ptsStr); strokePoly.setAttribute(\"fill\", \"none\"); strokePoly.setAttribute(\"stroke\", \"#1a1a1a\"); strokePoly.setAttribute(\"stroke-width\", \"1.8\"); strokePoly.setAttribute(\"stroke-linejoin\", \"round\"); strokePoly.classList.add(\"so-shape-stroke\"); svg.appendChild(strokePoly);\n    \/* Trace doree qui parcourt le contour en boucle *\/\n    var perim = 0; for (var i = 0; i \u003c n; i++) { var p1 = pt(i, data[i].value, 5); var p2 = pt((i+1)%n, data[(i+1)%n].value, 5); perim += Math.sqrt((p2.x-p1.x)*(p2.x-p1.x) + (p2.y-p1.y)*(p2.y-p1.y)); }\n    var tracePoly = svgEl(\"polygon\"); tracePoly.setAttribute(\"points\", ptsStr); tracePoly.setAttribute(\"fill\", \"none\"); tracePoly.setAttribute(\"stroke\", \"#D4AF37\"); tracePoly.setAttribute(\"stroke-width\", \"2.2\"); tracePoly.setAttribute(\"stroke-linejoin\", \"round\"); tracePoly.setAttribute(\"stroke-linecap\", \"round\"); tracePoly.setAttribute(\"stroke-dasharray\", \"60 \" + perim); tracePoly.setAttribute(\"stroke-dashoffset\", \"0\"); tracePoly.style.setProperty(\"--so-perim\", perim); tracePoly.classList.add(\"so-trace-stroke\"); svg.appendChild(tracePoly);\n    for (var i = 0; i \u003c n; i++) { (function(i) { var d = data[i]; var p = pt(i, d.value, 5); var delay = 0.5 + i * 0.1; var halo = svgEl(\"circle\"); halo.setAttribute(\"cx\", p.x); halo.setAttribute(\"cy\", p.y); halo.setAttribute(\"r\", \"7\"); halo.setAttribute(\"fill\", \"none\"); halo.setAttribute(\"stroke\", \"#1a1a1a\"); halo.setAttribute(\"stroke-width\", \"1\"); halo.setAttribute(\"stroke-opacity\", \"0.12\"); halo.classList.add(\"so-dot\"); halo.style.animationDelay = delay + \"s\"; svg.appendChild(halo); var dot = svgEl(\"circle\"); dot.setAttribute(\"cx\", p.x); dot.setAttribute(\"cy\", p.y); dot.setAttribute(\"r\", \"3\"); dot.setAttribute(\"fill\", \"#1a1a1a\"); dot.classList.add(\"so-dot\"); dot.style.animationDelay = delay + \"s\"; svg.appendChild(dot); var lp = pt(i, 6.5, 5);\n lp.y += Math.sin(ang(i)) * 16; var pctX = (lp.x \/ 360) * 100; var pctY = (lp.y \/ 360) * 100; var lbl = document.createElement(\"div\"); lbl.className = \"so-label\"; lbl.style.left = pctX + \"%\"; lbl.style.top = pctY + \"%\"; lbl.style.animationDelay = (0.4 + i * 0.1) + \"s\"; lbl.innerHTML = '\u003cspan class=\"so-lname\"\u003e' + d.label + '\u003c\/span\u003e\u003cspan class=\"so-lval\"\u003e' + d.value + '\u003cspan class=\"so-lmax\"\u003e\/5\u003c\/span\u003e\u003c\/span\u003e'; area.appendChild(lbl); })(i); }\n    var maxVal = 0; for (var i = 0; i \u003c n; i++) { if (data[i].value \u003e maxVal) maxVal = data[i].value; } var bests = []; for (var i = 0; i \u003c n; i++) { if (data[i].value === maxVal) bests.push(data[i]); }\n    var chipsHtml = ''; for (var i = 0; i \u003c bests.length; i++) { chipsHtml += '\u003cspan class=\"so-foot-centered-chip\"\u003e' + bests[i].label + '\u003cem\u003e' + bests[i].value + '\/5\u003c\/em\u003e\u003c\/span\u003e'; }\n    var labelTxt = (bests.length \u003e 1 ? 'POINTS FORTS' : 'POINT FORT');\n    document.getElementById(\"so-radar-footer\").innerHTML = '\u003cdiv class=\"so-foot-centered\"\u003e\u003cdiv class=\"so-foot-centered-head\"\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003cspan class=\"so-foot-centered-title\"\u003e★ ' + labelTxt + ' ★\u003c\/span\u003e\u003cspan class=\"so-foot-centered-line\"\u003e\u003c\/span\u003e\u003c\/div\u003e\u003cdiv class=\"so-foot-centered-chips\"\u003e' + chipsHtml + '\u003c\/div\u003e\u003c\/div\u003e';\n  })();\n  \u003c\/script\u003e        \u003c!-- BLOCK 3: COMPOSITION (Aqua Dolce active JS MAPPING - verified) --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eComposition of Aqua Dolce: 4 pairs of synergistic active ingredients\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA \u003cstrong\u003eFormula enriched with high-quality proteins and soothing botanical extracts\u003c\/strong\u003e — four pairs of assets with complementary properties.\u003c\/p\u003e            \u003c!-- MAPPING --\u003e          \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e              \u003cdiv class=\"aqr-grid\"\u003e                    \u003cdiv class=\"aqr-col-list\"\u003e                      \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-schema\"\u003e                      \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e                          \u003cimg class=\"aqr-schema-img\" id=\"aqrSchemaImg\" style=\"display:block;width:100%;height:auto;\" alt=\"Schéma de l'anatomie de la peau et du poil illustrant l'action ciblée de l’Aqua Dolce\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e                          \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e                          \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                    \u003cdiv class=\"aqr-col-info\"\u003e                      \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e            \u003c\/div\u003e            \u003cstyle\u003e\n      #aqr-carto, #aqr-carto * { box-sizing: border-box; }\n      #aqr-carto {\n        font-family: inherit;\n        color: #1a1a1a;\n        line-height: 1.5;\n        position: relative;\n      }\n      #aqr-carto .aqr-grid {\n        display: grid;\n        grid-template-columns: 170px 1fr 280px;\n        gap: 16px;\n        align-items: start;\n      }\n\n      \/* LISTE — cadres encadres *\/\n      #aqr-carto .aqr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }\n      #aqr-carto .aqr-list-item {\n        display: block;\n        width: 100%;\n        text-align: left;\n        background: #fff;\n        border: 1px solid #e5e5e5;\n        padding: 8px 10px;\n        cursor: pointer;\n        font-family: inherit;\n        color: #888;\n        transition: all 0.3s;\n        position: relative;\n        min-height: 0;\n      }\n      #aqr-carto .aqr-list-item:hover {\n        color: #1a1a1a;\n        border-color: #bbb;\n        background: #fafafa;\n      }\n      #aqr-carto .aqr-list-item.aqr-active {\n        color: #1a1a1a;\n        background: #fff;\n        border-color: var(--c, #1a1a1a);\n        border-left-width: 3px;\n        padding-left: 8px;\n        box-shadow: 0 2px 6px rgba(0,0,0,0.04);\n      }\n\n      #aqr-carto .aqr-li-name {\n        font-size: 13px;\n        line-height: 1.25;\n        font-weight: 500;\n      }\n\n      \/* SCHEMA *\/\n      #aqr-carto .aqr-col-schema {\n        display: flex;\n        justify-content: center;\n        align-items: flex-start;\n      }\n      #aqr-carto .aqr-schema-wrap {\n        position: relative;\n        width: 100%;\n        max-width: 200px;\n        margin: 0 auto;\n        z-index: 1;\n      }\n      #aqr-carto .aqr-schema-img {\n        display: block;\n        width: 100%;\n        height: auto;\n      }\n\n      #aqr-carto .aqr-overlay {\n        position: absolute;\n        inset: 0;\n        width: 100%;\n        height: 100%;\n        pointer-events: none;\n        overflow: visible;\n        z-index: 3;\n      }\n      #aqr-carto .aqr-connectors {\n        position: absolute;\n        inset: 0;\n        pointer-events: none;\n        z-index: 2;\n      }\n      #aqr-carto \u003e svg.aqr-connector-svg {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        overflow: visible;\n        pointer-events: none;\n        z-index: 5;\n      }\n\n      \/* Ligne connector (depuis la liste vers le point) *\/\n      #aqr-carto .aqr-conn-line {\n        fill: none;\n        stroke: var(--c);\n        stroke-width: 1;\n        opacity: 0;\n        stroke-dasharray: 600;\n        stroke-dashoffset: 600;\n        animation: aqrConnDraw 0.9s cubic-bezier(.5,.05,.2,1) forwards;\n      }\n      @keyframes aqrConnDraw {\n        0% { opacity: 0; stroke-dashoffset: 600; }\n        25% { opacity: 0.6; }\n        100% { opacity: 0.6; stroke-dashoffset: 0; }\n      }\n\n      \/* IRRADIATION CIRCULAIRE DOREE — toujours identique *\/\n      \/* Le groupe entier qui contient halo + cercle + branches étoilées *\/\n      #aqr-carto .aqr-star-group {\n        transform-origin: center;\n        transform-box: fill-box;\n      }\n\n      \/* Halo doré central qui pulse doucement *\/\n      #aqr-carto .aqr-star-halo {\n        fill: #D4AF37;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        filter: blur(1.4px);\n        animation: aqrHaloIn 0.7s ease-out forwards, aqrHaloPulse 3s ease-in-out infinite 0.7s;\n      }\n      @keyframes aqrHaloIn { to { opacity: 0.5; } }\n      @keyframes aqrHaloPulse {\n        0%, 100% { opacity: 0.4; transform: scale(1); }\n        50% { opacity: 0.75; transform: scale(1.2); }\n      }\n\n      \/* Cercle d'irradiation qui se diffuse (anneau lent) *\/\n      #aqr-carto .aqr-star-ring {\n        fill: none;\n        stroke: #D4AF37;\n        stroke-width: 0.5;\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrStarRing 3.2s ease-out infinite;\n      }\n      @keyframes aqrStarRing {\n        0%   { opacity: 0; r: 3; stroke-width: 0.6; }\n        15%  { opacity: 0.5; }\n        100% { opacity: 0; r: 12; stroke-width: 0.15; }\n      }\n\n      \/* Point coloré A\/B\/C (par-dessus le doré) *\/\n      #aqr-carto .aqr-marker-dot {\n        fill: var(--c);\n        opacity: 0;\n        transform-origin: center;\n        transform-box: fill-box;\n        animation: aqrDotIn 0.5s ease-out forwards;\n      }\n      @keyframes aqrDotIn {\n        0% { opacity: 0; transform: scale(0); }\n        70% { transform: scale(1.4); }\n        100% { opacity: 1; transform: scale(1); }\n      }\n      #aqr-carto .aqr-marker-text {\n        fill: white;\n        font-family: 'Courier New', monospace;\n        font-size: 2.8px;\n        font-weight: 700;\n        text-anchor: middle;\n        dominant-baseline: central;\n        opacity: 0;\n        animation: aqrDotIn 0.5s ease-out forwards;\n        pointer-events: none;\n      }\n\n      #aqr-carto .aqr-leaving {\n        animation: aqrFadeOut 0.4s ease-out forwards !important;\n      }\n      @keyframes aqrFadeOut { to { opacity: 0; } }\n\n      \/* INFO *\/\n      #aqr-carto .aqr-info {\n        background: #fafafa;\n        border: 1px solid #e5e5e5;\n        padding: 16px 16px;\n        transition: opacity 0.4s;\n      }\n      #aqr-carto .aqr-info.aqr-fading { opacity: 0.2; }\n      #aqr-carto .aqr-info-family {\n        font-size: 9px;\n        letter-spacing: 0.25em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 6px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-info-name {\n        font-size: 16px;\n        font-weight: 700;\n        line-height: 1.2;\n        margin: 0 0 4px;\n        color: #1a1a1a;\n      }\n      #aqr-carto .aqr-info-latin {\n        font-size: 11px;\n        color: #999;\n        font-style: italic;\n        margin-bottom: 12px;\n      }\n      #aqr-carto .aqr-info-desc {\n        font-size: 12px;\n        line-height: 1.55;\n        color: #333;\n        margin-bottom: 14px;\n        padding-bottom: 14px;\n        border-bottom: 1px solid #ececec;\n      }\n      #aqr-carto .aqr-info-section {\n        font-size: 9px;\n        letter-spacing: 0.22em;\n        text-transform: uppercase;\n        color: #888;\n        font-weight: 600;\n        margin-bottom: 10px;\n      }\n      #aqr-carto .aqr-action-row {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        margin-bottom: 10px;\n        padding-bottom: 10px;\n        border-bottom: 1px dotted #ececec;\n      }\n      #aqr-carto .aqr-action-row:last-child {\n        border-bottom: none;\n        padding-bottom: 0;\n        margin-bottom: 0;\n      }\n      #aqr-carto .aqr-action-marker {\n        flex-shrink: 0;\n        width: 18px;\n        height: 18px;\n        background: var(--c);\n        color: white;\n        text-align: center;\n        line-height: 18px;\n        font-family: 'Courier New', monospace;\n        font-size: 10px;\n        font-weight: 700;\n        transition: background 0.5s;\n      }\n      #aqr-carto .aqr-action-content { flex: 1; min-width: 0; }\n      #aqr-carto .aqr-action-zone {\n        font-size: 9px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: var(--c, #888);\n        font-weight: 600;\n        margin-bottom: 2px;\n        transition: color 0.5s;\n      }\n      #aqr-carto .aqr-action-name {\n        font-size: 13px;\n        color: #1a1a1a;\n        font-weight: 600;\n        line-height: 1.25;\n        margin-bottom: 3px;\n      }\n      #aqr-carto .aqr-action-benefit {\n        font-size: 11px;\n        color: #666;\n        line-height: 1.5;\n      }\n\n      \/* TABLET : liste + schema cote a cote, info en dessous *\/\n      @media (max-width: 900px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 130px;\n          grid-template-rows: auto auto;\n          gap: 14px;\n        }\n        #aqr-carto .aqr-col-list { grid-column: 1; grid-row: 1; }\n        #aqr-carto .aqr-col-schema { grid-column: 2; grid-row: 1; }\n        #aqr-carto .aqr-col-info { grid-column: 1 \/ -1; grid-row: 2; }\n        #aqr-carto .aqr-schema-wrap { max-width: 130px; }\n        #aqr-carto .aqr-li-name { font-size: 12px; }\n        #aqr-carto .aqr-list-item { padding: 7px 8px; }\n        #aqr-carto .aqr-list { gap: 5px; }\n      }\n      \/* MOBILE : meme structure mais photo encore plus petite *\/\n      @media (max-width: 640px) {\n        #aqr-carto { padding: 12px !important; }\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 100px;\n          gap: 10px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 100px; }\n        #aqr-carto .aqr-li-name { font-size: 11px; line-height: 1.2; }\n        #aqr-carto .aqr-li-num { font-size: 8px; margin-bottom: 1px; }\n        #aqr-carto .aqr-list-item { padding: 6px 8px; }\n        #aqr-carto .aqr-list-item.aqr-active { padding-left: 6px; }\n        #aqr-carto .aqr-info-name { font-size: 15px; }\n        #aqr-carto .aqr-info { padding: 14px; }\n        #aqr-carto .aqr-list { gap: 4px; }\n      }\n      \/* TRES PETIT : photo minimale *\/\n      @media (max-width: 420px) {\n        #aqr-carto .aqr-grid {\n          grid-template-columns: 1fr 80px;\n          gap: 8px;\n        }\n        #aqr-carto .aqr-schema-wrap { max-width: 80px; }\n        #aqr-carto .aqr-li-name { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      var familyColors = {\n        botanic: '#7BA05B',\n        aqua: '#4A90B8',\n        bio: '#C84876',\n        cond: '#B07BA0'\n      };\n      var families = {\n        botanic: 'Botanique',\n        aqua: 'Aquatique',\n        bio: 'Biochimique',\n        cond: 'Conditionneur'\n      };\n\n      \/\/ Anchors PRECIS sur l'image 500x1125 (viewBox 100 x 225)\n      var anchors = {\n        tige_poil:  { x: 60,  y: 25 },     \/\/ mi-tige\n        cuticule:   { x: 56,  y: 65 },     \/\/ ecailles visibles\n        epiderme:   { x: 25,  y: 115 },    \/\/ surface peau gauche\n        film_hydro: { x: 32,  y: 100 },    \/\/ surface peau clairement, ecarte du poil\n        glande_seb: { x: 62,  y: 142 },    \/\/ grappe jaune\n        glande_sud: { x: 25,  y: 168 },    \/\/ enchevetrement gauche\n        muscle:     { x: 78,  y: 170 },    \/\/ faisceau diagonal\n        follicule:  { x: 43,  y: 185 },    \/\/ cloche autour du poil\n        bulbe:      { x: 43,  y: 193 },    \/\/ boule au fond, remonte encore\n        derme:      { x: 12,  y: 190 }     \/\/ bloc peau gauche bas\n      };\n      var anchorLabels = {\n        tige_poil: 'Tige du poil', cuticule: 'Cuticule', film_hydro: 'Film hydrolipidique',\n        epiderme: 'Épiderme', derme: 'Derme', bulbe: 'Bulbe pilaire',\n        glande_seb: 'Glande sébacée', glande_sud: 'Glande sudoripare',\n        follicule: 'Follicule pileux', muscle: 'Muscle arrecteur'\n      };\n\n      var ingredients = [\n        {\n          id:'soie', label:'Soie \u0026amp; Lait', latin:'Protéines nobles', family:'aqua',\n          desc:\"Duo de protéines structurantes : la \u003cstrong\u003esoie\u003c\/strong\u003e lisse et apporte une brillance immédiate ; le \u003cstrong\u003elait\u003c\/strong\u003e nourrit et offre une action \u003cstrong\u003eanti-fatigue instantanée\u003c\/strong\u003e.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition profonde\", benefit:\"Nourrit la fibre et restaure la vitalité des longueurs fatiguées.\" },\n            { anchor:'cuticule', action:\"Lissage anti-fatigue\", benefit:\"Lisse la cuticule — le poil retrouve sa cohésion immédiatement.\" }\n          ]\n        },\n        {\n          id:'canneberge', label:'Canneberge \u0026amp; Aloe Vera', latin:'Antioxydants \u0026amp; hydratant', family:'botanic',\n          desc:\"Duo régénérant : la \u003cstrong\u003ecanneberge\u003c\/strong\u003e antioxydante purifie ; l’\u003cstrong\u003ealoe vera\u003c\/strong\u003e hydrate et apporte une hydratation régénérante.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Hydratation régénérante\", benefit:\"Restaure l’hydratation profonde du film hydrolipidique.\" },\n            { anchor:'epiderme', action:\"Purification antioxydante\", benefit:\"Purifie le terrain cutané et le protège du stress oxydatif.\" }\n          ]\n        },\n        {\n          id:'ginseng', label:'Ginseng \u0026amp; Bouleau', latin:'Plantes toniques', family:'bio',\n          desc:\"Duo dynamisant : le \u003cstrong\u003eginseng\u003c\/strong\u003e tonifie le pelage ; le \u003cstrong\u003ebouleau\u003c\/strong\u003e stimule la croissance et soutient un poil fort et vital.\",\n          targets: [\n            { anchor:'derme', action:\"Tonification cutanée\", benefit:\"Tonifie le derme et soutient une croissance forte du poil.\" },\n            { anchor:'epiderme', action:\"Stimulation racinaire\", benefit:\"Active la microcirculation et apporte vigueur au pelage.\" }\n          ]\n        },\n        {\n          id:'camomille', label:'Camomille \u0026amp; Genévrier', latin:'Apaisants \u0026amp; détoxifiants', family:'cond',\n          desc:\"Duo apaisant : la \u003cstrong\u003ecamomille\u003c\/strong\u003e apaise et adoucit ; le \u003cstrong\u003egenévrier\u003c\/strong\u003e détoxifie et apporte une fraîcheur immédiate.\",\n          targets: [\n            { anchor:'epiderme', action:\"Apaisement cutané\", benefit:\"Apaise les zones réactives et apporte un confort durable.\" },\n            { anchor:'glande_sud', action:\"Détoxification\", benefit:\"Soutient le drainage cutané et apporte une fraîcheur ressentie.\" }\n          ]\n        }\n      ];\n\n      var listEl = document.getElementById('aqrList');\n      var schemaWrap = document.getElementById('aqrSchemaWrap');\n      var schemaImg = document.getElementById('aqrSchemaImg');\n      var overlay = document.getElementById('aqrOverlay');\n      var connectorsEl = document.getElementById('aqrConnectors');\n      var infoEl = document.getElementById('aqrInfo');\n            try { ingredients.forEach(function(ing, i) {\n        var li = document.createElement('li');\n        var btn = document.createElement('button');\n        btn.className = 'aqr-list-item' + (i === 0 ? ' aqr-active' : '');\n        btn.setAttribute('type', 'button');\n        btn.dataset.idx = i;\n        btn.style.setProperty('--c', familyColors[ing.family]);\n        btn.innerHTML = '\u003cspan class=\"aqr-li-name\"\u003e' + ing.label + '\u003c\/span\u003e';\n        btn.addEventListener('click', function() { focusIngredient(i); });\n        li.appendChild(btn);\n        listEl.appendChild(li);\n      }); } catch (e) {}\n\n      function clearAll() {\n        var inside = overlay.querySelectorAll('*');\n        for (var i = 0; i \u003c inside.length; i++) inside[i].classList.add('aqr-leaving');\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) {\n          var conns = connSvg.querySelectorAll('*');\n          for (var i = 0; i \u003c conns.length; i++) conns[i].classList.add('aqr-leaving');\n        }\n        setTimeout(function() {\n          overlay.innerHTML = '';\n          if (connSvg) connSvg.innerHTML = '';\n        }, 420);\n      }\n\n      var currentIdx = 0;\n      var playing = true;\n      var autoTimer = null;\n\n      function focusIngredient(idx) {\n        currentIdx = ((idx % ingredients.length) + ingredients.length) % ingredients.length;\n        var ing = ingredients[currentIdx];\n        var color = familyColors[ing.family];\n\n        var items = document.querySelectorAll('#aqr-carto .aqr-list-item');\n        for (var i = 0; i \u003c items.length; i++) {\n          if (i === currentIdx) items[i].classList.add('aqr-active');\n          else items[i].classList.remove('aqr-active');\n        }\n        infoEl.classList.add('aqr-fading');\n        setTimeout(function() {\n          infoEl.style.setProperty('--c', color);\n          var actionsHtml = ing.targets.map(function(t, i) {\n            return '\u003cdiv class=\"aqr-action-row\"\u003e' +\n                     '\u003cdiv class=\"aqr-action-marker\"\u003e' + String.fromCharCode(65 + i) + '\u003c\/div\u003e' +\n                     '\u003cdiv class=\"aqr-action-content\"\u003e' +\n                       '\u003cdiv class=\"aqr-action-zone\"\u003e' + anchorLabels[t.anchor] + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-name\"\u003e' + t.action + '\u003c\/div\u003e' +\n                       '\u003cdiv class=\"aqr-action-benefit\"\u003e' + t.benefit + '\u003c\/div\u003e' +\n                     '\u003c\/div\u003e' +\n                   '\u003c\/div\u003e';\n          }).join('');\n          infoEl.innerHTML =\n            '\u003cdiv class=\"aqr-info-family\"\u003e' + families[ing.family] + '\u003c\/div\u003e' +\n            '\u003ch3 class=\"aqr-info-name\"\u003e' + ing.label + '\u003c\/h3\u003e' +\n            '\u003cdiv class=\"aqr-info-latin\"\u003e' + ing.latin + '\u003c\/div\u003e' +\n            '\u003cp class=\"aqr-info-desc\"\u003e' + ing.desc + '\u003c\/p\u003e' +\n            '\u003cdiv class=\"aqr-info-section\"\u003eActions ciblées\u003c\/div\u003e' +\n            actionsHtml;\n          infoEl.classList.remove('aqr-fading');\n        }, 300);\n\n        clearAll();\n        setTimeout(function() { drawTargets(ing); }, 450);\n        scheduleNext();\n      }\n\n      function ensureConnectorSvg() {\n        var carto = document.getElementById('aqr-carto');\n        \/\/ Recherche sans :scope pour compatibilite navigateurs anciens\n        var svg = null;\n        var children = carto.children;\n        for (var i = 0; i \u003c children.length; i++) {\n          if (children[i].tagName \u0026\u0026 children[i].tagName.toLowerCase() === 'svg' \u0026\u0026\n              children[i].classList \u0026\u0026 children[i].classList.contains('aqr-connector-svg')) {\n            svg = children[i];\n            break;\n          }\n        }\n        if (!svg) {\n          svg = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'svg');\n          svg.setAttribute('class', 'aqr-connector-svg');\n          carto.appendChild(svg);\n        }\n        return svg;\n      }\n\n      function getListItemAnchor(idx) {\n        var item = document.querySelectorAll('#aqr-carto .aqr-list-item')[idx];\n        var r = item.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: r.right - cRect.left,\n          y: r.top + r.height \/ 2 - cRect.top\n        };\n      }\n      function pctToCartoPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        var cRect = document.getElementById('aqr-carto').getBoundingClientRect();\n        return {\n          x: (wRect.left - cRect.left) + (px \/ 100) * wRect.width,\n          y: (wRect.top - cRect.top) + (py \/ 225) * wRect.height\n        };\n      }\n\n      function pctToOverlayPx(px, py) {\n        var wRect = schemaWrap.getBoundingClientRect();\n        return { x: (px \/ 100) * wRect.width, y: (py \/ 225) * wRect.height };\n      }\n\n      function drawTargets(ing) {\n        var color = familyColors[ing.family];\n        var startPt = getListItemAnchor(currentIdx);\n        var connSvg = ensureConnectorSvg();\n\n        ing.targets.forEach(function(target, i) {\n          var anchor = anchors[target.anchor];\n          var endPtCarto = pctToCartoPx(anchor.x, anchor.y);\n          var delay = i * 280;\n\n          \/\/ Ligne courbe : coords en pixels du aqr-carto\n          var dx = endPtCarto.x - startPt.x;\n          var cp1x = startPt.x + dx * 0.4;\n          var cp1y = startPt.y;\n          var cp2x = startPt.x + dx * 0.6;\n          var cp2y = endPtCarto.y;\n          var d = 'M ' + startPt.x + ' ' + startPt.y +\n                  ' C ' + cp1x + ' ' + cp1y + ', ' + cp2x + ' ' + cp2y +\n                  ', ' + endPtCarto.x + ' ' + endPtCarto.y;\n          var connPath = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'path');\n          connPath.setAttribute('d', d);\n          connPath.setAttribute('class', 'aqr-conn-line');\n          connPath.style.setProperty('--c', color);\n          connPath.style.animationDelay = delay + 'ms';\n          connSvg.appendChild(connPath);\n\n          \/\/ IRRADIATION DORÉE — toujours identique sur chaque point\n          var cx = anchor.x;\n          var cy = anchor.y;\n\n          \/\/ 1. Halo doré flou central\n          var halo = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          halo.setAttribute('cx', cx);\n          halo.setAttribute('cy', cy);\n          halo.setAttribute('r', '5');\n          halo.setAttribute('class', 'aqr-star-halo');\n          halo.style.animationDelay = (delay + 500) + 'ms, ' + (delay + 1200) + 'ms';\n          overlay.appendChild(halo);\n\n          \/\/ 2. Anneaux d'irradiation qui se diffusent en boucle continue (4 décalés)\n          for (var r = 0; r \u003c 4; r++) {\n            var ring = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n            ring.setAttribute('cx', cx);\n            ring.setAttribute('cy', cy);\n            ring.setAttribute('r', '3');\n            ring.setAttribute('class', 'aqr-star-ring');\n            ring.style.animationDelay = (delay + 600 + r * 800) + 'ms';\n            overlay.appendChild(ring);\n          }\n\n          \/\/ 3. Point coloré A\/B\/C avec sa lettre (par-dessus le doré)\n          var dot = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'circle');\n          dot.setAttribute('cx', cx);\n          dot.setAttribute('cy', cy);\n          dot.setAttribute('r', '2.6');\n          dot.setAttribute('class', 'aqr-marker-dot');\n          dot.style.setProperty('--c', color);\n          dot.style.animationDelay = (delay + 850) + 'ms';\n          overlay.appendChild(dot);\n\n          var txt = document.createElementNS('http:\/\/www.w3.org\/2000\/svg', 'text');\n          txt.setAttribute('x', cx);\n          txt.setAttribute('y', cy);\n          txt.setAttribute('class', 'aqr-marker-text');\n          txt.textContent = String.fromCharCode(65 + i);\n          txt.style.animationDelay = (delay + 950) + 'ms';\n          overlay.appendChild(txt);\n        });\n      }\n\n      function scheduleNext() {\n        if (autoTimer) clearTimeout(autoTimer);\n        if (playing) autoTimer = setTimeout(function() { focusIngredient(currentIdx + 1); }, 6500);\n      }\n\n      var __started = false;\n      function start() {\n        if (__started) return; __started = true;\n        setTimeout(function() { try { focusIngredient(0); } catch (e) {} }, 200);\n      }\n      \/\/ Filets de securite multiples : l'image et la liste s'affichent toujours,\n      \/\/ et l'animation demarre des que possible quel que soit l'environnement.\n      try {\n        if (schemaImg \u0026\u0026 schemaImg.complete) start();\n        if (schemaImg) {\n          schemaImg.addEventListener('load', start);\n          schemaImg.addEventListener('error', start);\n        }\n      } catch (e) {}\n      if (document.readyState === 'complete') start();\n      else window.addEventListener('load', start);\n      setTimeout(start, 1500);\n\n      var resizeTimer = null;\n      function fullRedraw() {\n        overlay.innerHTML = '';\n        var connSvg = document.querySelector('#aqr-carto \u003e svg.aqr-connector-svg');\n        if (connSvg) connSvg.innerHTML = '';\n        \/\/ double rAF to wait for layout to stabilize\n        requestAnimationFrame(function() {\n          requestAnimationFrame(function() {\n            drawTargets(ingredients[currentIdx]);\n          });\n        });\n      }\n      window.addEventListener('resize', function() {\n        if (resizeTimer) clearTimeout(resizeTimer);\n        resizeTimer = setTimeout(fullRedraw, 200);\n      });\n      \/\/ ResizeObserver pour reagir aussi aux changements de taille du conteneur\n      if (typeof ResizeObserver !== 'undefined') {\n        var ro = new ResizeObserver(function() {\n          if (resizeTimer) clearTimeout(resizeTimer);\n          resizeTimer = setTimeout(fullRedraw, 200);\n        });\n        ro.observe(document.getElementById('aqr-carto'));\n      }\n    })();\n    \u003c\/script\u003e                  \u003c!-- STORYTELLING INSERT: hair permeability signature --\u003e          \u003cdiv style=\"margin-top: 25px; padding: 22px 24px; background: #fff; border-left: 3px solid #1d1d1f;\"\u003e              \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin-bottom: 12px; display: block;\"\u003e💧 The Aqua Dolce signature\u003c\/span\u003e              \u003cp style=\"font-size: 14px; margin: 0 0 10px; font-weight: 600;\"\u003eManaging hair permeability\u003c\/p\u003e              \u003cp style=\"font-size: 13px; margin: 0; color: #444; line-height: 1.65;\"\u003eA healthy coat has a \u003cstrong\u003ebalanced permeability\u003c\/strong\u003e :  neither too closed (brittle, dull) nor too open (dry, frizzy, tired). When summer, dry weather, or intensive brushing disrupts this balance, the coat \u003cem\u003edrinks\u003c\/em\u003e Too much and loses its cohesion. Aqua Dolce \u003cstrong\u003erestores this optimal permeability\u003c\/strong\u003e thanks to his Silk duo \u0026amp; Milk — the hair regains its elasticity, its frizz disappears, \u003cstrong\u003ewithout ever greasing\u003c\/strong\u003e.\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOCK 4: PROTOCOLS --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eProtocols \u0026amp; Suggestions for use\u003c\/h2\u003e          \u003c!-- DILUTION P4: 3 simple cards (Ratio · Yield · Animated Equivalences) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eReference dilution\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- CARD 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e60\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003e1 teaspoon to 1 tablespoon\u003cbr\u003eper liter — or pure\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAP 2: Yield --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eYield\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e150 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 9 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e500 mL\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 30 L\u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-rend-row\"\u003e  \u003cstrong\u003e3 L\u003c\/strong\u003e  \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 180 L\u003c\/div\u003e                      \u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-note\"\u003eready to use\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- CARD 3: Animated Equivalencies --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eFor \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e finished product\u003c\/div\u003e                      \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cstrong id=\"aqrCycleMl\"\u003e17\u003c\/strong\u003e mL \u003cspan\u003ein volume\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleG\"\u003e17\u003c\/strong\u003e g \u003cspan\u003ein weight\u003c\/span\u003e  \u003c\/div\u003e                          \u003cdiv class=\"aqr-dilution-eq-row\"\u003e  \u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e  \u003cstrong id=\"aqrCycleSpoon\"\u003e1\u003c\/strong\u003e  \u003cspan id=\"aqrCycleSpoonLabel\"\u003etablespoon\u003c\/span\u003e  \u003c\/div\u003e                      \u003c\/div\u003e                  \u003c\/div\u003e                \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-dilution, .aqr-dilution * { box-sizing: border-box; font-family: inherit; }\n      .aqr-dilution-eyebrow {\n        font-size: 11px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 14px;\n      }\n      .aqr-dilution-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 10px;\n      }\n      .aqr-dilution-cell {\n        background: #fff;\n        border: 1px solid #e8e8ed;\n        border-radius: 12px;\n        padding: 18px 16px;\n        display: flex;\n        flex-direction: column;\n      }\n      .aqr-dilution-cell-label {\n        font-size: 10px;\n        letter-spacing: 0.15em;\n        text-transform: uppercase;\n        color: #86868b;\n        font-weight: 500;\n        margin-bottom: 12px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cell-value {\n        font-size: 38px;\n        font-weight: 600;\n        color: #1d1d1f;\n        letter-spacing: -0.02em;\n        line-height: 1;\n        margin-bottom: 10px;\n      }\n      .aqr-dilution-slash {\n        color: #d2d2d7;\n        font-weight: 300;\n        margin: 0 2px;\n      }\n      .aqr-dilution-cell-rows {\n        display: flex;\n        flex-direction: column;\n        gap: 5px;\n        font-size: 13px;\n        color: #1d1d1f;\n        flex: 1;\n      }\n      .aqr-dilution-cell-rows strong {\n        font-weight: 600;\n        color: #1d1d1f;\n        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-rend-row strong {\n        min-width: 48px;\n        display: inline-block;\n      }\n      .aqr-dilution-rend-arrow {\n        color: #c2a85c;\n        font-weight: 600;\n        margin: 0 2px;\n      }\n      .aqr-dilution-eq-eq {\n        color: #c2a85c;\n        font-weight: 600;\n        margin-right: 2px;\n      }\n      .aqr-dilution-cell-rows span {\n        color: #86868b;\n      }\n      .aqr-dilution-cell-note {\n        font-size: 11px;\n        color: #86868b;\n        margin-top: 10px;\n        line-height: 1.4;\n      }\n      .aqr-dilution-cycle-target {\n        display: inline-block;\n        background: #1d1d1f;\n        color: #fff;\n        padding: 2px 8px;\n        border-radius: 4px;\n        font-weight: 600;\n        letter-spacing: 0.04em;\n        transition: background 0.35s cubic-bezier(0.16, 1, 0.3, 1);\n      }\n      .aqr-dilution-cycle-fade {\n        opacity: 0.2;\n      }\n      @media (max-width: 700px) {\n        .aqr-dilution-grid { grid-template-columns: 1fr; }\n        .aqr-dilution-cell-value { font-size: 32px; }\n      }\n    \u003c\/style\u003e            \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 1 L \/ 2 L \/ 4 L (dilution 1\/20)\n      var cycles = [\n        { target: '1 L', ml: '17', g: '17', spoon: '1' },\n        { target: '2 L', ml: '33', g: '33', spoon: '2' },\n        { target: '4 L', ml: '67', g: '67', spoon: '4' }\n      ];\n      var idx = 0;\n      var targetEl = document.getElementById('aqrCycleTarget');\n      var mlEl = document.getElementById('aqrCycleMl');\n      var gEl = document.getElementById('aqrCycleG');\n      var spoonEl = document.getElementById('aqrCycleSpoon');\n      var spoonLabelEl = document.getElementById('aqrCycleSpoonLabel');\n      \/\/ Regle FR : pluriel uniquement a partir de 2 (0, 1, 1,5 -\u003e singulier)\n      function frPlural(valStr, sing, plur) {\n        var n = parseFloat(String(valStr).replace(',', '.'));\n        return (n \u003e= 2) ? plur : sing;\n      }\n      \n      function tick() {\n        idx = (idx + 1) % cycles.length;\n        var c = cycles[idx];\n        \/\/ Fade out, swap, fade in\n        [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n          if (el) el.classList.add('aqr-dilution-cycle-fade');\n        });\n        setTimeout(function(){\n          if (targetEl) targetEl.textContent = c.target;\n          if (mlEl) mlEl.textContent = c.ml;\n          if (gEl) gEl.textContent = c.g;\n          if (spoonEl) spoonEl.textContent = c.spoon;\n          if (spoonLabelEl) spoonLabelEl.textContent = frPlural(c.spoon, 'cuillère à soupe', 'cuillères à soupe');\n          [targetEl, mlEl, gEl, spoonEl, spoonLabelEl].forEach(function(el){\n            if (el) el.classList.remove('aqr-dilution-cycle-fade');\n          });\n        }, 350);\n      }\n      \n      setInterval(tick, 3500);\n    })();\n    \u003c\/script\u003e                            \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cdiv\u003e                          \u003cspan class=\"aqr-proto-title\"\u003eQuick grooming or volumizing\u003c\/span\u003e                          \u003cp class=\"aqr-proto-subtitle\"\u003eTwo modes depending on the desired result\u003c\/p\u003e                      \u003c\/div\u003e                      \u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-body\"\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eClassic treatment — core strengthening\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDilute \u003cstrong\u003e1 c.tablespoon\/L of lukewarm water\u003c\/strong\u003e.  Apply to the lengths, massage and comb through. \u003cstrong\u003eDo not rinse\u003c\/strong\u003e for maximum sheathing (can be used up to the pure product).\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSheathed volume\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDilute \u003cstrong\u003e1 tsp\u003c\/strong\u003e in the required volume of water. Let it sit. \u003cstrong\u003e2 minutes\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRinse according to the method\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMode A: No rinsing. Mode B: \u003cstrong\u003erinse thoroughly\u003c\/strong\u003e.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e              \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cdiv\u003e                          \u003cspan class=\"aqr-proto-title\"\u003ePlumbing or repairing action\u003c\/span\u003e                          \u003cp class=\"aqr-proto-subtitle\"\u003eFor damaged areas and split ends\u003c\/p\u003e                      \u003c\/div\u003e                      \u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-body\"\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eDamaged areas\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply the product \u003cstrong\u003epure directly on the area\u003c\/strong\u003e.  Let it sit \u003cstrong\u003e5 minutes\u003c\/strong\u003e then rinse quickly.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eSplit ends\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eApply to towel-dried hair. \u003cstrong\u003ea small amount of pure product only on the ends before drying\u003c\/strong\u003e. \u003cstrong\u003eNo rinsing required.\u003c\/strong\u003e  \u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e              \u003cdetails class=\"aqr-proto-acc\"\u003e                  \u003csummary class=\"aqr-proto-summary\"\u003e                      \u003cdiv\u003e                          \u003cspan class=\"aqr-proto-title\"\u003eMulti-purpose — Brushing \u0026amp; Papillotes\u003c\/span\u003e                          \u003cp class=\"aqr-proto-subtitle\"\u003eThe versatility of Aqua Dolce\u003c\/p\u003e                      \u003c\/div\u003e                      \u003csvg class=\"aqr-proto-plus\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"\u003e\u003cpath d=\"M12 5v14M5 12h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e                  \u003c\/summary\u003e                  \u003cdiv class=\"aqr-proto-body\"\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eHAS\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eBrushing spray\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eUse Aqua Dolce \u003cstrong\u003ediluted in a brushing spray\u003c\/strong\u003e to maintain the coat between baths.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eB\u003c\/span\u003e                              \u003cdiv\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003ePapillotes\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eUse it \u003cstrong\u003epure in foil packets\u003c\/strong\u003e to protect the growing fur.\u003c\/div\u003e                              \u003c\/div\u003e                          \u003c\/li\u003e                      \u003c\/ol\u003e                  \u003c\/div\u003e              \u003c\/details\u003e            \u003cdiv style=\"margin-top: 18px; padding: 14px 18px; background: #f0f7ff; border-left: 3px solid #4a90d9; border-radius: 8px; font-size: 13px; line-height: 1.55;\"\u003e              💡  \u003cstrong\u003ePRO TIP:\u003c\/strong\u003e for a result \u003cstrong\u003eUltimate \u0026quot;Show\u0026quot;\u003c\/strong\u003e,  Mix Aqua Dolce with \u003cstrong\u003eHydrating Cream\u003c\/strong\u003e Or \u003cstrong\u003eBombastic\u003c\/strong\u003e.     \u003c\/div\u003e          \u003cstyle\u003e\n      .aqr-proto-acc, .aqr-proto-acc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-proto-acc {\n        background: #fff;\n        border: 1px solid #1a1a1a;\n        border-radius: 0;\n        margin-bottom: 8px;\n        overflow: hidden;\n        position: relative;\n      }\n      \/* Perforations verticales SUBTILES en beige, n'interferent jamais avec le texte *\/\n      .aqr-proto-acc::before, .aqr-proto-acc::after {\n        content: \"\";\n        position: absolute;\n        top: 12px; bottom: 12px;\n        width: 1px;\n        background-image: linear-gradient(to bottom, #c8b896 50%, transparent 50%);\n        background-size: 1px 5px;\n        background-repeat: repeat-y;\n        pointer-events: none;\n      }\n      .aqr-proto-acc::before { left: 10px; }\n      .aqr-proto-acc::after { right: 10px; }\n      .aqr-proto-summary {\n        cursor: pointer;\n        list-style: none;\n        padding: 16px 56px 16px 28px;\n        display: flex;\n        align-items: center;\n        gap: 14px;\n        position: relative;\n      }\n      .aqr-proto-summary::-webkit-details-marker { display: none; }\n      .aqr-proto-title {\n        flex: 1;\n        font-size: 14px;\n        font-weight: 600;\n        color: #1a1a1a;\n        line-height: 1.3;\n        min-width: 0;\n      }\n      .aqr-proto-plus {\n        position: absolute;\n        right: 22px; top: 50%; transform: translateY(-50%);\n        width: 22px; height: 22px;\n        display: flex; align-items: center; justify-content: center;\n        border: 1px solid #1a1a1a; border-radius: 50%;\n        color: #1a1a1a; background: transparent;\n        transition: transform 0.3s, background 0.3s, color 0.3s;\n        flex-shrink: 0;\n      }\n      .aqr-proto-acc[open] .aqr-proto-plus {\n        transform: translateY(-50%) rotate(45deg);\n        background: #1a1a1a; color: #F5E6B8;\n      }\n      .aqr-proto-content {\n        padding: 4px 28px 22px;\n        animation: aqrProtoFade 0.4s ease-out;\n      }\n      @keyframes aqrProtoFade { from { opacity: 0; } to { opacity: 1; } }\n      .aqr-proto-subtitle {\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-size: 13px;\n        color: #555;\n        margin: 0 0 18px;\n        padding-bottom: 12px;\n        border-bottom: 1px dashed #c8b896;\n      }\n      .aqr-proto-steps {\n        list-style: none;\n        padding: 0;\n        margin: 0;\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n      }\n      .aqr-proto-step {\n        display: flex;\n        gap: 12px;\n        align-items: flex-start;\n      }\n      .aqr-proto-step-marker {\n        flex-shrink: 0;\n        width: 26px; height: 26px;\n        display: flex; align-items: center; justify-content: center;\n        background: transparent;\n        border: 1px solid #1a1a1a;\n        color: #1a1a1a;\n        font-family: Georgia, \"Times New Roman\", serif;\n        font-style: italic;\n        font-weight: 700;\n        font-size: 12px;\n        border-radius: 50%;\n      }\n      .aqr-proto-step-body { flex: 1; padding-top: 2px; }\n      .aqr-proto-step-title {\n        font-size: 11px;\n        letter-spacing: 0.12em;\n        text-transform: uppercase;\n        color: #1a1a1a;\n        font-weight: 700;\n        margin-bottom: 3px;\n      }\n      .aqr-proto-step-desc {\n        font-size: 12px;\n        line-height: 1.6;\n        color: #444;\n      }\n      @media (max-width: 600px) {\n        .aqr-proto-summary { padding: 14px 48px 14px 22px; gap: 10px; }\n        .aqr-proto-title { font-size: 13px; }\n        .aqr-proto-plus { right: 16px; }\n        .aqr-proto-acc::before { left: 8px; }\n        .aqr-proto-acc::after { right: 8px; }\n        .aqr-proto-content { padding: 4px 22px 18px; }\n      }\n      @media (max-width: 380px) {\n        .aqr-proto-summary { padding: 12px 42px 12px 18px; }\n        .aqr-proto-acc::before { left: 6px; }\n        .aqr-proto-acc::after { right: 6px; }\n        .aqr-proto-content { padding: 4px 18px 16px; }\n      }\n    \u003c\/style\u003e                \u003c\/div\u003e        \u003c!-- BLOCK 5: ASSOCIATIONS \u0026  RACES --\u003e      \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e          \u003ch2 style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #999; margin: 0 0 10px; line-height: 1.4; display: block;\"\u003eRecommended Associations \u0026amp; Races\u003c\/h2\u003e          \u003c!-- Villanelle at the heart + modular supplements If... → Then --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e🤝  \u003cstrong\u003eFavorite alliances\u003c\/strong\u003e : \u003cstrong\u003eBain Pro\/Aquarosa Pro\u003c\/strong\u003e (shampoos), \u003cstrong\u003eBio Energy\u003c\/strong\u003e (pre-bath), \u003cstrong\u003eMix Pink\/Aqua Beauty\u003c\/strong\u003e (finishing).\u003c\/p\u003e                \u003cdiv class=\"aqr-assoc-rules\"\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eMaximum desired core strength…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 tbsp\/L — no rinsing\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003edesired volume and shape…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 c.coffee\/L — total rinse\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eLocalized damaged areas…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003ePure product, leave on for 5 minutes, rinse quickly\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eThe ultimate \u0026quot;show\u0026quot; result...\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eMix with Hydrating Cream or Bombastic\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003eDaily maintenance between baths…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003ediluted brushing spray\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eIF\u003c\/span\u003e  \u003cspan\u003ehair wraps for growing coats…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003ePure Aqua Dolce in foil packets\u003c\/strong\u003e  \u003c\/div\u003e                  \u003c\/div\u003e              \u003c\/div\u003e          \u003c\/div\u003e            \u003cstyle\u003e\n      .aqr-assoc, .aqr-assoc * { box-sizing: border-box; font-family: inherit; }\n      .aqr-assoc { margin-bottom: 24px; }\n      .aqr-assoc-intro {\n        font-size: 13px; color: #444; line-height: 1.5;\n        margin: 0 0 16px;\n      }\n      .aqr-assoc-rules {\n        display: flex; flex-direction: column;\n      }\n      .aqr-assoc-rule {\n        display: grid; grid-template-columns: 1fr 1.3fr;\n        gap: 18px; align-items: center;\n        padding: 16px 8px;\n        border-bottom: 1px dashed #d8d8d8;\n      }\n      .aqr-assoc-rule:last-child { border-bottom: none; }\n      .aqr-assoc-if {\n        display: flex; align-items: center; gap: 10px;\n        color: #888; font-size: 13px; font-style: italic;\n      }\n      .aqr-assoc-if-tag {\n        background: #1a1a1a; color: #F5E6B8;\n        padding: 3px 10px;\n        font-family: Georgia, \"Times New Roman\", serif; font-weight: 700;\n        font-size: 11px; letter-spacing: 0.05em;\n        font-style: normal;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then {\n        display: flex; align-items: center; gap: 10px;\n        font-size: 13px;\n      }\n      .aqr-assoc-then-arrow {\n        color: #D4AF37; font-size: 18px; font-weight: 700;\n        flex-shrink: 0;\n      }\n      .aqr-assoc-then strong { color: #1a1a1a; }\n      @media (max-width: 600px) {\n        .aqr-assoc-rule { grid-template-columns: 1fr; gap: 4px; }\n      }\n    \u003c\/style\u003e            \u003c!-- Races in rounded pills --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eWhere Aqua Dolce makes the difference:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 All Cats \u003cspan\u003e(degreasing and smoothing action)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Curly furs \u003cspan\u003e(Poodles, Bichons, Kerry Blue)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐶 Long furs \u0026amp; silky \u003cspan\u003e(Yorkshire, Shih-Tzu, Afghans)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 Double coat \u0026amp; Primitives \u003cspan\u003e(Spitz, Shepherds, Samoyeds, Collies)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐺 Terriers \u003cspan\u003e(Scottish, Westie, Welsh)\u003c\/span\u003e\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eThe ultimate all-purpose care — from the lap cat to the show champion.\u003c\/p\u003e            \u003cstyle\u003e\n      .aqr-races-mosaic {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px;\n      }\n      .aqr-race-tag {\n        display: inline-flex;\n        align-items: center;\n        gap: 6px;\n        background: #fff;\n        color: #1a1a1a;\n        padding: 9px 16px;\n        border-radius: 100px;\n        font-size: 12px;\n        font-weight: 600;\n        border: 1px solid #e5e5e5;\n        line-height: 1.3;\n      }\n      .aqr-race-tag span {\n        opacity: 0.6;\n        font-weight: 400;\n        font-size: 11px;\n      }\n      @media (max-width: 560px) {\n        .aqr-race-tag { font-size: 11px; padding: 8px 13px; }\n        .aqr-race-tag span { font-size: 10px; }\n      }\n    \u003c\/style\u003e            \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e              \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodegradable +90% | SLES, DEA, Paraben, and Silicone Free | Not Tested on Animals | HDPE Recyclable\u003c\/p\u003e          \u003c\/div\u003e      \u003c\/div\u003e    \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"150 mL","offer_id":37819485061299,"sku":"WAQ-AQDO150 (52)","price":32.9,"currency_code":"EUR","in_stock":true},{"title":"500 mL","offer_id":37819485094067,"sku":"WAQ-AQDO500 (50)","price":61.9,"currency_code":"EUR","in_stock":true},{"title":"3 Litres","offer_id":37819485126835,"sku":"WAQ-AQDO3000 (53)","price":236.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/Aquadolce_277ac638-ccea-49be-b87b-7ea4375c936b.png?v=1680188686"},{"product_id":"heiniger-saphir-cord-hair-tondeuse","title":"Heiniger Saphir (wired)","description":"Heiniger Sapphire Cord (with cable)\u003cbr\u003eProfessional corded clipper for grooming dogs and cats.\u003cbr\u003e\u003cbr\u003eRobust and durable.\u003cbr\u003eErgonomic, lightweight and weight-balanced to prevent fatigue.\u003cbr\u003eConvertible to battery powered machine (HE0012 battery and HE0011 charging station not included).\u003cbr\u003e  \u003cbr\u003eTECHNICAL DATA\u003cbr\u003e- 1 speed: 3200 rpm.\u003cbr\u003e- Weight: 330 g.\u003cbr\u003e- Dimensions: 20.4 x 5 x 4.1 cm.\u003cbr\u003e- Cable length: 3 m.\u003cbr\u003e- Uses universal heads (Ibanez, Wahl, Moser, Andis, Oster).\u003cbr\u003e  \u003cbr\u003e\u003cbr\u003e\u003cbr\u003eINCLUDES:\u003cbr\u003e- 1 Heiniger No. 10 head (1.5 mm).\u003cbr\u003e- Cleaning brush and oil.\u003cbr\u003e\u003cbr\u003eIbanez 1-year professional warranty.","brand":"Setter Bakio S.L.","offers":[{"title":"Mower","offer_id":37819728920755,"sku":"HE0001","price":228.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/products\/6362.jpg?v=1616492623"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/collections\/8cab81dd2d3dfd1e874de110b1c64147_c75e61a6-adc8-4db0-be20-c39b95a2fd1b.png?v=1690399506","url":"https:\/\/petdesign.fr\/en\/collections\/toilettage.oembed?page=18","provider":"Petdesign.fr","version":"1.0","type":"link"}