{"title":"Les Cosmétiques Indispensables","description":null,"products":[{"product_id":"bain-pro-shampoing-doux-tous-pelages","title":"BAIN PRO, shampoing doux tous pelages","description":"\u003c!-- ============================================== SISTEMA DE DISEÑO — Refinamiento visual ============================================== --\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!-- BLOQUE 1: INTRODUCCIÓN --\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\u003eBAÑO PROFESIONAL\u003c\/strong\u003e es el champú profesional Special One altamente concentrado que realza el pelaje al ser \u003cstrong\u003ede la forma más suave posible, sin ser nunca agresivo.\u003c\/strong\u003e.  Revela la mejor versión del cabello, sin amplificar el volumen ni la textura, simplemente permitiendo que su verdadera naturaleza se exprese. También es un \u003cstrong\u003econtrol natural suplementario de parásitos\u003c\/strong\u003e :  Su abundante espuma y su pH ácido neutralizan las pulgas mecánicamente, sin insecticidas químicos. Un champú, docenas de beneficios.\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;\"\u003e¿A quién va dirigido este producto?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eTodos lo encontrarán realmente beneficioso: un competidor directo de Aquarosa Pro (el más nutritivo). \u003cstrong\u003eBain Pro es la opción ideal para una suavidad absoluta.\u003c\/strong\u003e Para todo tipo de pelaje, desde cachorros hasta perros mayores.\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\"\u003ePeluqueros\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\"\u003eGanaderos\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\"\u003eIndividuos\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\"\u003eCompetidores\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\"\u003eadiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriquecido con una mezcla de \u003cstrong\u003etensioactivos de origen natural\u003c\/strong\u003e Gracias a sus sustancias hidratantes, Bain Pro devuelve el brillo y la elasticidad al cabello desde el primer uso. \u003cstrong\u003eacción antiparasitaria natural\u003c\/strong\u003e — por asfixia mecánica a través de la abundante espuma y un pH ácido que debilita las pulgas — lo que lo convierte en un baño complementario perfecto para cachorros, gatitos y animales sensibles, \u003cstrong\u003esin insecticida químico\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\u003eLímite de suavidad:\u003c\/strong\u003e Debido a su fórmula muy suave, Bain Pro podría no ser suficiente si el animal está muy sucio. En ese caso, comience primero con un champú más limpiador. \u003cstrong\u003eAquapure Pro, Blue Sky Pro o 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\"\u003eSuavidad universal: bebé, adulto, persona mayor\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eBaño suave para perros y gatos de todas las edades, desde cachorros hasta gatos mayores.\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\"\u003eLimpieza profunda\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eLimpia, desinfecta y da brillo a todo tipo de cabello.\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\"\u003eAntinudo\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNunca aumenta el volumen natural; evita que los nudos vuelvan a aparecer rápidamente después del baño.\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\"\u003eRepelente natural de parásitos\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNeutraliza mecánicamente las pulgas por asfixia mediante espuma y pH ácido, sin necesidad de insecticidas químicos.\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\"\u003eProtección de queratina\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eAumenta las defensas naturales para proteger la estructura del cabello.\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\"\u003ePiel grasa\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eTrata el exceso de sebo a la vez que preserva la película hidrolipídica.\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\"\u003eBaños frecuentes\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eNo supone ningún riesgo para la piel ni el cabello, incluso con un uso intensivo.\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\"\u003eCon plomo\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eAyuda a dar peso a las pieles sedosas sin que resulten excesivamente pesadas.\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\"\u003eCrecimiento \u0026amp; competencia\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eIdeal para el crecimiento del pelaje de perros de exposición, incluidas todas las razas.\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\"\u003eDesenredar \u0026amp; cepillado\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eFacilita el desenredado, suaviza el secado con secador y reduce el tiempo de trabajo.\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!-- UNIDAD DE RADAR (trasladada a la sección de Experiencia) --\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;\"\u003eComprender mejor las acciones de Bain Pro\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn análisis detallado de su desempeño cosmético, nota por nota.\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!-- BLOQUE 3: COMPOSICIÓN (MAPEO JS de Bain Pro activo - verificado) --\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;\"\u003eComposición de Bain Pro: ingredientes activos naturales \u0026amp; acción dirigida\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eTensioactivos de origen natural, proteínas de alta calidad e ingredientes activos de base biológica. \u003cstrong\u003eSin parabenos, sin siliconas\u003c\/strong\u003e.  Aquí se explica, zona por zona, cómo actúa cada ingrediente activo sobre la piel y el cabello.\u003c\/p\u003e  \u003c!-- CARTOGRAFÍA --\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!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\u003c\/h2\u003e  \u003c!-- DILUCIÓN P4: 3 cartas simples (Proporción · Rendimiento · Equivalencias animadas) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003edilución de referencia\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- TARJETA 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRelación\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\"\u003eUna porción de champú\u003cbr\u003epor 20 partes de agua\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAPA 2: Rendimiento --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eProducir\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\"\u003epreparado para usar\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- TARJETA 3: Equivalencias animadas --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePara \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e producto terminado\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\u003een volumen\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 gramo \u003cspan\u003een peso\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\"\u003ecucharadas\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\"\u003epresiones de la bomba\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\"\u003eLavado delicado: todo tipo de pelaje, todas las edades.\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\"\u003eEl protocolo básico, adecuado para todas las situaciones comunes.\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\"\u003ePrimer champú\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMoja bien el pelaje.Aplicar Bain Pro diluido a \u003cstrong\u003e1\/20\u003c\/strong\u003e,  Luego enjuague.\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\"\u003eSegundo champú\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplicar un \u003cstrong\u003esegundo champú\u003c\/strong\u003e,  Luego enjuague de nuevo.\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\"\u003eCuidados finales\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalice con el acondicionador adecuado: \u003cstrong\u003eCrema hidratante, Bombastic o 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\"\u003eRefinamiento\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eCompleta el aseo con \u003cstrong\u003eAbsolute 4Poodle, Mix Pink o Style 360\u003c\/strong\u003e según sea necesario.\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\"\u003eProtocolo antinudos \u0026amp; regulación del sebo\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\"\u003ePara perros que desarrollan fácilmente nudos en el pelo o que tienen desequilibrios en la piel (sebo, caspa, olores).\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\"\u003eMascarilla prebaño\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eComienza con la mascarilla previa al baño. \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e para preparar y potenciar la acción del champú.\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\"\u003eAplicación sin enjuague\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplicar Bain Pro diluido en una proporción de 1\/20. \u003cstrong\u003esin enjuagar la mascarilla\u003c\/strong\u003e antemano.\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\"\u003eEstablecido \u0026amp; enjuague\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDejar actuar unos instantes, enjuagar y repetir si es necesario.\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\"\u003eAcabado antienredos\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalizar con \u003cstrong\u003eCrema hidratante + Aqua Dolce\u003c\/strong\u003e para un pelaje acondicionado que retrasa la reaparición de nudos.\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\"\u003eElija Bain Pro si necesita…\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\"\u003eSituaciones en las que Bain Pro marca la diferencia\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\"\u003eLavar suavemente\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eCualquier perro o gato, independientemente de su edad o tipo de pelaje.\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\"\u003eCrecimiento del cabello\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eIdeal para perros de exposición de todas las razas (9.º grupo, terriers, 8.º grupo…).\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\"\u003eImplementar un protocolo antinudos\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eEn un perro que se sentía fácilmente.\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\"\u003eRegulación del sebo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eYa sea por exceso o por deficiencia, con caspa o mal olor, sin irritar la piel.\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!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/h2\u003e  \u003c!-- Bain Pro en su esencia + complementos modulares Si... → Entonces --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eToda la gama Special One\u003c\/strong\u003e Es compatible con Bain Pro.Nuestras alianzas favoritas:\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe requiere una limpieza más profunda…\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe recomienda una mascarilla antes del baño…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBioenergía 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eEs necesario un último retoque…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eCrema hidratante · 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe busca un acabado de exposición…\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 · Rosa Mixto · Estilo 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!-- Carreras en pastillas redondeadas --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eDonde Bain Pro marca la diferencia:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 Todos los gatos\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐶 Todos los perros en la sala de estar \u003cspan\u003e(limita la devolución de nodos)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🏆 Perros de exposición de pelo largo \u0026amp; franja \u003cspan\u003e(flequillo, peluquín, barba)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Pieles rizadas \u003cspan\u003e(Caniches, Bichones, Kerry Blue, Soft Coated, Bedlington)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 Todos los Cocker Spaniels \u003cspan\u003e(estadounidense, inglés)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🏔️ razas tibetanas \u003cspan\u003e(Shih Tzu, Lhasa Apso, Terrier tibetano)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e👑 Spaniels miniatura ingleses \u003cspan\u003e(Jinete \u0026amp; Rey Carlos)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e✨ Pieles largas \u0026amp; sedoso \u003cspan\u003e(Yorkshire, afganos)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐾 Terriers \u003cspan\u003e(escocés, occidental, galés)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLista larga y no exhaustiva: suavidad absoluta para todo tipo de pelaje, desde cachorros hasta perros mayores.\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% | Sin parabenos, sin siliconas | No testado en animales | HDPE reciclable\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250ml","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 litros","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":"bio-energy-plus-masque-pre-bain","title":"BIO ENERGY PLUS, mascarilla pre-baño con caviar verde","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 ENERGÍA PLUS\u003c\/strong\u003e Es la mascarilla prebaño ultraconcentrada de doble acción de Special One. \u003cstrong\u003e\u0026quot;Belleza\u0026quot; y \u0026quot;Salud\u0026quot;\u003c\/strong\u003e.  Actúa al instante sobre el pelaje seco, sucio y enredado, incluso antes del champú. Como componente esencial del programa de hidratación Special One, transforma el cuidado del pelaje y ofrece resultados visibles desde el primer uso.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eResultará de gran interés para todos, incluso para aquellos que nunca han utilizado una mascarilla pre-baño y que están descubriendo una innovación que transformará su rutina de cuidado personal.\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✅ Peluqueros\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Ganaderos\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuos\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✅ Competidores\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ adiestradores\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!-- BLOQUEO DE RADAR: DIAGRAMA COSMOLÓGICO --\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;\"\u003eDiagrama cosmético de Bio Energy Plus\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;\"\u003ePericia \u0026amp; Resultados\u003c\/span\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eSu composición ultratecnológica proporciona de inmediato un profundo alivio al pelaje y la piel del animal. \u003cstrong\u003eSe aplica sobre el cabello seco, sucio y sin desenredar, sin enjuagar antes del champú.\u003c\/strong\u003e Sin embargo, este paso adicional, en comparación con el ciclo de baño clásico, es del que depende en gran medida la calidad del resultado final.\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\u003eBelleza de doble acción \u0026amp; Salud :\u003c\/strong\u003e Mejora la textura a la vez que trata en profundidad la piel y el pelaje.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHidratación intensa:\u003c\/strong\u003e Hidrata, cuida, trata y restaura el pelaje y la piel desde la primera aplicación.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eRevivan los colores:\u003c\/strong\u003e Estimula la producción de melanina: los colores naturales del pelaje ganan en intensidad y profundidad.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eMicrocirculación cutánea:\u003c\/strong\u003e Activa la circulación en las raíces del pelo, favoreciendo el crecimiento y la renovación del pelaje.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eReparar :\u003c\/strong\u003e Ayuda a reparar pelajes dañados, debilitados o sobrecargados.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePreparación para el corte:\u003c\/strong\u003e Ideal para preparar pieles antes de un corte con tijeras o un tratamiento de peluquería.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntimuda \u0026amp; desenredar:\u003c\/strong\u003e Facilita la eliminación del pelo muerto y ayuda a prevenir o acelerar la caída del cabello.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Apto para perros y gatos de todas las edades, desde cachorros hasta perros mayores.\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;\"\u003eSinergia de ingredientes activos naturales\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUna fórmula ultratecnológica que combina ingredientes activos marinos, vegetales y reestructurantes, sin parabenos ni siliconas.\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🍀 Colágeno hidrolizado\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eAcción antiinflamatoria: fortalece la estructura interna del cabello y mejora la elasticidad de la fibra.\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🍀 Caviar verde (Caulerpa lentillifera)\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eAlgas marinas japonesas antienvejecimiento: ricas en minerales (hierro, calcio, zinc, potasio), vitamina A \u0026amp; Vitamina C y aminoácidos. Estimula la producción de colágeno y elastina.\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🍀 Espirulina\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eUn potente antioxidante que devuelve el vigor y el brillo a los pelajes dañados.Reduce la producción de sebo, combate la caspa, previene la caída del cabello y favorece su crecimiento.\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 (roble marino)\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eRico en yodo, polifenoles y vitaminas. Los polifenoles favorecen la regeneración celular; el yodo activa el metabolismo y mejora la circulación en las raíces del cabello.\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;\"\u003eDesintoxicación natural gracias al ácido algínico: al entrar en contacto con el agua, forma un gel que captura y elimina las sustancias nocivas para la piel.\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\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\u003eComo tratamiento previo al baño: aplicar sobre el cabello seco, sucio y sin desenredar.\u003c\/strong\u003e No enjuague antes de lavar con champú; este es el principio fundamental de la mascarilla pre-baño.     \u003c\/div\u003e          \u003cdiv style=\"margin-bottom: 15px; padding: 12px 15px; background: #fff8e1; border-left: 3px solid #f0a500; font-size: 13px;\"\u003e              ⚠️ No lo deje encendido durante más de \u003cstrong\u003e30 minutos\u003c\/strong\u003e.  No enjuague el producto antes de lavarlo con champú.     \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\u003eEjemplo 1 🔥 Objetivo de belleza: luminosidad, textura \u0026amp; bandera\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         1. Diluir Bio Energy Plus a \u003cstrong\u003e1\/20\u003c\/strong\u003e.\u003cbr\u003e         2. Aplicar sobre el pelaje seco, sucio y sin peinar, asegurándose de cubrir bien todo el manto.\u003cbr\u003e         3. Déjalo reposar \u003cstrong\u003eDe 5 a 30 minutos\u003c\/strong\u003e dependiendo de la intensidad deseada.\u003cbr\u003e         4. Pasa directamente al champú. \u003cstrong\u003eno enjuagar\u003c\/strong\u003e antemano.\u003cbr\u003e         Resultado: textura mejorada, colores revitalizados, brillo renovado nada más salir del baño.       \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\u003eEjemplo 2 🔥 Objetivo de salud: piel \u0026amp; pelaje dañado\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para pieles sensibles o irritadas, o pelaje muy dañado:\u003cbr\u003e         1. Aplicar el producto \u003cstrong\u003epuro en las áreas más críticas\u003c\/strong\u003e (zonas secas e irritadas, cabello quebradizo).\u003cbr\u003e         2. Diluir a \u003cstrong\u003e1\/15\u003c\/strong\u003e para su aplicación en el resto de la capa.\u003cbr\u003e         3. \u003cstrong\u003eCubre al animal con una toalla.\u003c\/strong\u003e y déjalo reposar \u003cstrong\u003eDe 20 a 30 minutos\u003c\/strong\u003e para una máxima absorción de los ingredientes activos reparadores.\u003cbr\u003e         4. Proceda al lavado con champú sin enjuagar previamente; el primer champú se aplica directamente sobre el producto que se está aplicando.\u003cbr\u003e\u003cbr\u003e                  \u003cdiv style=\"background: #f0f7ff; border-left: 3px solid #4a90d9; padding: 10px 12px; font-size: 12px;\"\u003e                      💧  \u003cstrong\u003eEn caso de anomalías cutáneas persistentes:\u003c\/strong\u003e Se recomienda realizar el siguiente baño con champú. \u003cstrong\u003eProfesionales del cuidado de la piel\u003c\/strong\u003e para potenciar la acción terapéutica de la mascarilla.         \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\u003eEjemplo 3 🔥 Objetivo: Desenredar \u0026amp; Antimuda\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para tratar, acelerar o prevenir la caída del cabello y facilitar el desenredado:\u003cbr\u003e         1. Diluir a \u003cstrong\u003e1\/20\u003c\/strong\u003e,  A continuación, añade una crema acondicionadora y un producto oleoso de la misma gama (4 Elements Oils o Aqua Dolce).\u003cbr\u003e         2. Aplicar sobre el cabello seco. \u003cstrong\u003eTrabaja con tus herramientas de aseo habituales.\u003c\/strong\u003e (cepillo, peine) — el producto facilita la eliminación del cabello muerto y un desenredado suave.\u003cbr\u003e         3.Después de unos diez minutos, proceda directamente al lavado con champú. \u003cstrong\u003eno enjuagar\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🛠️ ASOCIACIONES DE APOYO:\u003c\/span\u003e              \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e         Para una eficacia óptima, mezcle Bio Energy Plus con uno o más \u003cstrong\u003eintegradores a base de aceite\u003c\/strong\u003e :\u003cbr\u003e                  ✨  \u003cstrong\u003eAqua Dolce\u003c\/strong\u003e y\/o \u003cstrong\u003eAceites de 4 elementos\u003c\/strong\u003e y\/o \u003cstrong\u003eRimbombante\u003c\/strong\u003e\u003cbr\u003e\u003cbr\u003e         A continuación, se complementa el baño con cualquier champú, mascarilla y acondicionador de la gama Special One.       \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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eCompatible con toda la gama Special One aguas abajo. Bio Energy Plus es el \u003cstrong\u003eprimer paso\u003c\/strong\u003e — Todo lo demás del protocolo de baño viene después.\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✔️ Todos los gatos, especialmente para desengrasar sin decapar.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Todos los perros en la peluquería — para limitar la rápida reaparición de nudos.\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Razas de pelaje rizado: Caniches, Bichones, Kerry Blue, Soft Coated, Bedlington…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Todos los Cocker Spaniels (Americano, Inglés)\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Razas tibetanas: Shih Tzu, Lhasa Apso, Terrier tibetano…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Spaniels miniatura ingleses (Cavalier y King Charles)\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Pieles largas y sedosas: Yorkshire, afgano…\u003c\/td\u003e\u003c\/tr\u003e                  \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️ Terriers: escocés, Westie, galés… — ¡lista larga y no exhaustiva!\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% | Sin parabenos, sin siliconas | No testado en animales | HDPE reciclable\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 Litres","offer_id":37819388461235,"sku":"WEX-BIO5 01 (99)","price":142.8,"currency_code":"EUR","in_stock":true},{"title":"10 Litres","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":"huiles-4-elements","title":"ACEITES DE 4 ELEMENTOS","description":"\u003cbody\u003e      \u003cmeta charset=\"UTF-8\"\u003e  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e  \u003ctitle\u003eAceites de 4 elementos – Edición especial | Ficha de producto\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOQUE 1: INTRODUCCIÓN --\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\u003eACEITES DE 4 ELEMENTOS\u003c\/strong\u003e es la mezcla de aceite Special One diseñada para \u003cstrong\u003efortalecer y reconstruir la capa\u003c\/strong\u003e.  Un auténtico todoterreno que realza el pelaje de todas las razas: como integrador, desenredante, tratamiento previo al baño, en envolturas de aluminio o cataplasmas.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eTodos lo encontrarán realmente beneficioso: este producto realzará todos los pelajes sin excepción.\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✅ Peluqueros\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Ganaderos\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuos\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✅ Competidores\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ adiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEste complejo de \u003cstrong\u003ecuatro valiosos aceites vegetales\u003c\/strong\u003e — formulado utilizando fracciones \u003cstrong\u003einsaponificables\u003c\/strong\u003e,  La parte más selecta de cada aceite, rica en vitaminas liposolubles, antioxidantes, polifenoles y escualeno, se incorpora en cada paso del cuidado personal. Su versatilidad y suavidad lo convierten en un elemento esencial de cualquier kit de aseo. \u003cstrong\u003eNo graso, no oclusivo\u003c\/strong\u003e :  Gracias a su afinidad con el sebo y sus propiedades seborrestituyentes, se absorbe fácilmente por la piel y el cabello, nutriéndolos en profundidad y de forma duradera sin apelmazarlos.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️  \u003cstrong\u003eNo utilizar en grandes cantidades en acondicionadores sin enjuague:\u003c\/strong\u003e Demasiado aceite + el calor del secador = un efecto de \u0026quot;cocción\u0026quot;: el cabello queda seco y dañado. Usa aceite en su lugar. \u003cstrong\u003eaguas arriba del baño\u003c\/strong\u003e,  No justo antes de secarse el pelo con secador.     \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\u003eAcción revitalizadora \u0026amp; reestructuración:\u003c\/strong\u003e Fortalece y reconstruye el pelaje desde el interior.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrillo \u0026amp; tacto aterciopelado:\u003c\/strong\u003e Aporta brillo y suavidad al pelaje desde la primera aplicación.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDesenredante:\u003c\/strong\u003e Facilita el desenredado y el cepillado, y resulta eficaz incluso en nudos cuando el cabello está seco.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntifieltrado:\u003c\/strong\u003e Evita que se formen nudos y que el pelo se afieltre entre baños.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eReparar :\u003c\/strong\u003e Repara el cabello roto y dañado, fortaleciendo la fibra a largo plazo.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eCrecimiento mejorado:\u003c\/strong\u003e Cuando se utiliza en papillotes y cataplasmas, mejora el crecimiento y la calidad del pelaje.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Apto para perros y gatos de todas las edades, desde cachorros hasta perros mayores.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 3: ACTIVOS --\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;\"\u003eSinergia de ingredientes activos naturales\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eCuatro valiosos aceites vegetales con propiedades complementarias: sin parabenos ni siliconas.\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🍀 Aceite de argán\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eDerivado de Argania Spinosa de Marruecos. Antioxidante, hidratante, elastizante y cicatrizante; se absorbe fácilmente gracias a sus propiedades seborreguladoras y antiedad. Rico en ácidos grasos insaturados (linoleico, oleico), caroteno, vitamina E y esteroles. Ideal para pelajes secos y encrespados.\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🍀 Aceite de nuez\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRico en taninos, flavonoides, ácido gálico y ácido cafeico. Posee propiedades purificantes, antibacterianas, antifúngicas y antiinflamatorias.Se extiende rápidamente para alisar el cabello encrespado o rebelde; ideal para preparar baños o mascarillas.\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🍀 Aceite de girasol\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003ePrensado en frío, rico en ácidos oleico (32%) y linoleico (54%) y vitamina E antioxidante. Fortalece la barrera lipídica natural de la piel y previene la deshidratación. Regenerador celular: emoliente, hidratante y reequilibrante para pieles sensibles o irritadas.\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🍀 Aceite de soja (maíz)\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eExtraído del germen de maíz: ligero, emoliente y tonificante. Muy bien tolerado por pieles secas. Rico en vitamina E, ácido oleico y ácido linoleico: un ingrediente antiedad natural que equilibra la película hidrolipídica e ilumina el pelaje, dejándolo aterciopelado.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\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\u003eEjemplo 1 🔥 Integrador: en la mascarilla o acondicionador previo al baño.\u003c\/span\u003e                  \u0026amp;DESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         El método de integración universal:\u003cbr\u003e                  💫 En cualquier \u003cstrong\u003emascarilla prebaño\u003c\/strong\u003e : \u003cstrong\u003e3 presiones de aceite de 4 elementos por litro\u003c\/strong\u003e del producto preparado.\u003cbr\u003e                  💫 En el\u003cstrong\u003eCrema hidratante al final del baño.\u003c\/strong\u003e :  agregar \u003cstrong\u003e1 pulsación\u003c\/strong\u003e para enriquecer el acondicionador.\u003cbr\u003e                  💫 Para pieles en estado severo: aplicar los aceites. \u003cstrong\u003ehasta 24 horas antes del baño\u003c\/strong\u003e para maximizar el tiempo de acción y la intensidad de los beneficios.       \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\u003eEjemplo 2 🔥 Desenredado en seco — nudos \u0026amp; fieltros\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para tratar nudos y zonas enredadas sin mojar el cabello:\u003cbr\u003e                  💫 Aplicar el \u003cstrong\u003eAceites puros de 4 elementos directamente sobre el nudo.\u003c\/strong\u003e.  Deja que penetre durante unos instantes.\u003cbr\u003e                  💫 Cepille suavemente con un cepillo de cerdas suaves; el nudo se deshará sin dolor ni rotura.\u003cbr\u003e                  💫 En el \u003cstrong\u003eperros envueltos en papel de aluminio o con bandas elásticas\u003c\/strong\u003e :  Al abrir el envase, si el cabello está enredado o apelmazado, aplique aceite puro al mechón y cepíllelo con un cepillo suave.       \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\u003eEjemplo 3 🔥 Papilotes \u0026amp; cataplasmas — brote \u0026amp; competencia\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para perros con vendajes de aluminio o que requieren un tratamiento a largo plazo para el crecimiento del pelo:\u003cbr\u003e                  💫 Utilice los aceites \u003cstrong\u003epuro o mezclado con Aqua Dolce + Crema Hidratante\u003c\/strong\u003e preparar y envolver los hilos.\u003cbr\u003e                  💫 El complejo de aceites nutre la fibra de forma prolongada y mejora la calidad y la densidad del nuevo crecimiento a lo largo de las semanas.\u003cbr\u003e                  💫 Ideal para la preparación de competiciones para razas cuyo pelaje debe ser largo, denso y brillante.       \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\u003eEjemplo 4 🔥 Acondicionador reparador post-baño — para pelajes muy dañados\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para una intensa acción reparadora después del champú:\u003cbr\u003e         1. En un bol, mezclar \u003cstrong\u003e10 gotas de aceites de los 4 elementos + 2 cucharadas de crema\u003c\/strong\u003e Tu elección: Crema Hidratante, Aqua Dolce o Crema Corporal Extra.\u003cbr\u003e         2. Diluir con \u003cstrong\u003e500 ml de agua caliente\u003c\/strong\u003e y mezclar bien.\u003cbr\u003e         3. Aplicar uniformemente a lo largo de todo el cabello.\u003cbr\u003e         4.En pelajes muy dañados: dejar reposar \u003cstrong\u003e5 minutos bajo una fuente de calor suave\u003c\/strong\u003e Para favorecer la absorción, enjuague bien.\u003cbr\u003e         5. Secar a baja temperatura, con aire moderado.\u003cbr\u003e\u003cbr\u003e                  \u003cem\u003eUna alternativa sencilla:\u003c\/em\u003e Después del baño, frote unas gotas sobre el pelaje húmedo y seque sin enjuagar.       \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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e como mascarilla previa al baño       🤝  \u003cstrong\u003eTodos los champús Special One\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eCrema hidratante\/Aqua Dolce\u003c\/strong\u003e al final del baño o para envolver en papel.     \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\u003eTodos los pelajes de todas las razas, sin excepción.\u003c\/strong\u003e — perros y gatos de todas las edades.\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% | Sin parabenos, sin siliconas | No testado en animales | HDPE reciclable\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 – Edición Especial | Ficha de producto\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOQUE 1: INTRODUCCIÓN --\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\u003eFLUIDO HIGRÓLICO\u003c\/strong\u003e es el integrador nutritivo Special One diseñado para \u003cstrong\u003efortalecer y reconstruir la capa\u003c\/strong\u003e.  Rico en valiosos aceites vegetales, desempeña un papel fundamental en el equilibrio de la película hidrolipídica y en la restauración de la flora cutánea. Su estructura permite \u003cstrong\u003emejor absorción de los ingredientes activos de los productos utilizados posteriormente\u003c\/strong\u003e — un amplificador natural para todos tus tratamientos.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eTodos lo encontrarán realmente beneficioso: este producto realza todo tipo de pelaje sin excepción. Complementa a la perfección los otros dos productos de la gama: \u003cstrong\u003eSuper Guardián y aceites de 4 elementos\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✅ Peluqueros\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Ganaderos\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuos\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✅ Competidores\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ adiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/span\u003e            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eHygro Fluid limpia la dermis, reequilibra la flora cutánea y prepara la piel para absorber mejor los ingredientes activos de los productos de cuidado de la piel posteriores. Su uso previo amplifica la eficacia de todos los productos aplicados posteriormente, un papel de \u003cstrong\u003ecatalizador natural\u003c\/strong\u003e Único entre los integradores de la gama.\u003c\/p\u003e            \u003cdiv style=\"background: #fff8e1; border-left: 3px solid #f0a500; padding: 12px 15px; font-size: 13px; margin-bottom: 20px;\"\u003e              ⚠️ Si aplicas demasiado Hygro Fluid después del baño sin enjuagar, ten cuidado al secarte el pelo con secador, ya que podría quedar demasiado graso. Lo mejor es usarlo según las instrucciones. \u003cstrong\u003erío arriba\u003c\/strong\u003e baño.     \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\u003eAcción revitalizadora \u0026amp; reestructuración:\u003c\/strong\u003e Fortalece y reconstruye el pelaje desde el interior.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eBrillo \u0026amp; tacto aterciopelado:\u003c\/strong\u003e Aporta brillo y suavidad al pelaje desde la primera aplicación.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDesenredante:\u003c\/strong\u003e Facilita el desenredado y el cepillado, y evita que se formen nudos y enredos.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eReparar :\u003c\/strong\u003e Repara el cabello dañado y fortalece la fibra capilar a largo plazo.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eProtección de la piel:\u003c\/strong\u003e Protege la piel de las agresiones y la suciedad al reequilibrar la película hidrolipídica.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003ePreparación para el examen:\u003c\/strong\u003e Prepare las pieles para una presentación en anillo: resultados óptimos en sinergia con otros integradores.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eUniversal:\u003c\/strong\u003e Apto para perros y gatos de todas las edades, desde cachorros hasta perros mayores.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 3: ACTIVOS --\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;\"\u003eSinergia de ingredientes activos naturales\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn concentrado de valiosos aceites vegetales con propiedades hidratantes, protectoras y antiedad, sin parabenos ni siliconas.\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🍀 Aceite de arroz\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eAntioxidante y filtro UV natural: absorbe los rayos UV y protege el cabello y la piel del daño solar.\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🍀 Aceite de semillas de rosa\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRevitalizante y protectora: nutre profundamente la piel, favorece la regeneración celular y fortalece las defensas naturales de la 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;\"\u003eVitamina y antienvejecimiento para el cabello: nutre y fortalece la fibra capilar, mejorando la elasticidad, el brillo y la resistencia a largo plazo.\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!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\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\u003eEjemplo 1 🔥 Incorporar a la mascarilla o champú previo al baño.\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         El método de integración diaria:\u003cbr\u003e                  💫 En el \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e :  agregar \u003cstrong\u003eDe 1 a 2 cucharadas de Hygro Fluid por litro\u003c\/strong\u003e de la mascarilla preparada: amplifica la acción hidratante de la mascarilla de la fase previa al baño.\u003cbr\u003e                  💫 En el \u003cstrong\u003echampú\u003c\/strong\u003e :  agregar \u003cstrong\u003e1 cucharada\u003c\/strong\u003e directamente en tu champú habitual (a menos que busques el máximo volumen).\u003cbr\u003e                  💫 Para pieles en muy mal estado: aplicar Hygro Fluid \u003cstrong\u003ehasta 24 horas antes del baño\u003c\/strong\u003e para maximizar la penetración de los activos.       \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\u003eEjemplo 2 🔥 Enriquecimiento del acondicionador\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para enriquecer el acondicionador final:\u003cbr\u003e                  💫 Agregar \u003cstrong\u003e1 o 2 dosis de Hygro Fluid en la Crema Hidratante.\u003c\/strong\u003e al final del baño.\u003cbr\u003e         El complejo de aceites enriquece el acondicionador y mejora la suavidad, la textura aterciopelada y la fijación del cabello después del secado.       \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\u003eEjemplo 3 🔥 Programa para el cuidado de la piel: combatiendo los problemas de la piel.\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\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 es un elemento clave del programa de prevención de problemas de la piel:\u003cbr\u003e         1. \u003cstrong\u003eBio Energy Plus + Hygro Fluid\u003c\/strong\u003e Como mascarilla previa al baño (aplicación durante 20 minutos), este dúo reequilibra la película hidrolipídica y prepara la piel para absorber el tratamiento posterior.\u003cbr\u003e         2. Champú con \u003cstrong\u003eProfesionales del cuidado de la piel\u003c\/strong\u003e.\u003cbr\u003e         3. Finalizar con \u003cstrong\u003eCrema hidratante + 1 dosis de fluido Hygro\u003c\/strong\u003e.\u003cbr\u003e         Este trío (Bio Energy + Hygro Fluid + Skincare Pro) es la referencia para pieles crónicamente desequilibradas.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eToda la gama Special One es compatible con Hygro Fluid. Nuestras combinaciones favoritas:\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003e              🤝  \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e como mascarilla previa al baño (asociación fundamental)       🤝  \u003cstrong\u003eTodos los champús Special One\u003c\/strong\u003e ·       🤝  \u003cstrong\u003eCrema hidratante\u003c\/strong\u003e al final del baño     \u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px; padding: 10px 14px; background: #f9f9f9; border: 1px solid #eee;\"\u003e              💛 Complemento perfecto para los otros dos integradores: \u003cstrong\u003eSuper portero\u003c\/strong\u003e Y \u003cstrong\u003eAceites de 4 elementos\u003c\/strong\u003e — Los tres trabajan en simbiosis para una acción completa sobre todas las pieles.     \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\u003eTodos los pelajes de todas las razas, sin excepción.\u003c\/strong\u003e — perros y gatos de todas las edades.\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% | Sin parabenos, sin siliconas | No testado en animales | HDPE reciclable\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":"hydrating-cream-masque-final-sublimateur","title":"HYDRATING CREAM, masque final sublimateur","description":"\u003c!-- ============================================== SISTEMA DE DISEÑO — Refinamiento visual ============================================== --\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!-- BLOQUE 1: INTRODUCCIÓN --\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\u003eCREMA HIDRATANTE\u003c\/strong\u003e es el \u003cstrong\u003eLa mascarilla hidratante profesional más vendida de Special One de todos los tiempos.\u003c\/strong\u003e.  Imprescindible para descubrir la gama.\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;\"\u003e¿A quién va dirigido este producto?\u003c\/h2\u003e  \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eEsencial para \u003cstrong\u003etodas las razas\u003c\/strong\u003e,  particularmente para el \u003cstrong\u003eAcondicionamiento de flequillos y barbas\u003c\/strong\u003e y abrigos que requieren un \u003cstrong\u003ehidratación profunda\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\"\u003ePeluqueros\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\"\u003eGanaderos\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\"\u003eIndividuos\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\"\u003eCompetidores\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\"\u003eadiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/h2\u003e  \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eA \u003cstrong\u003efórmula enriquecida con ingredientes activos naturales\u003c\/strong\u003e para nutrir y revitalizar con un \u003cstrong\u003eefecto antienvejecimiento\u003c\/strong\u003e.  Fragmentos de \u003cstrong\u003eseda\u003c\/strong\u003e Proporcionan un brillo excepcional para un color vibrante.\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\"\u003eDesenredar\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eFacilita el cepillado y \u003cstrong\u003eevita que los nudos vuelvan a aparecer\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\"\u003eVelocidad\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eReduce significativamente la \u003cstrong\u003etiempo de secado\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\"\u003eProtección\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003e  \u003cstrong\u003efiltro UV\u003c\/strong\u003e y acción \u003cstrong\u003eantihorquilla\u003c\/strong\u003e para conservar las puntas.\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\"\u003eSalud\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eMantiene el\u003cstrong\u003eelasticidad de la piel\u003c\/strong\u003e y una piel perfectamente sana.\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\"\u003eVitalidad\u003c\/div\u003e  \u003cdiv class=\"aqr-benefit-desc\"\u003eTextura más \u003cstrong\u003eflexible y revestido\u003c\/strong\u003e Desde la primera solicitud.\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!-- UNIDAD DE RADAR (trasladada a la sección de Experiencia) --\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;\"\u003eComprender mejor los efectos de la crema hidratante.\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn análisis detallado de su desempeño cosmético, nota por nota.\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!-- BLOQUE 3: COMPOSICIÓN (MAPEO JS ingredientes activos Crema hidratante - verificada) --\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;\"\u003eComposición de la crema hidratante: 4 pares de ingredientes activos sinérgicos.\u003c\/h2\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eA \u003cstrong\u003eformulación sofisticada\u003c\/strong\u003e que penetra hasta el corazón de la fibra para una regeneración total: cuatro pares de ingredientes activos con propiedades complementarias.\u003c\/p\u003e  \u003c!-- CARTOGRAFÍA --\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!-- INSERCIÓN DE NARRACIÓN: Bestseller histórico --\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✨ La crema hidratante exclusiva\u003c\/span\u003e  \u003cp style=\"font-size: 14px; margin: 0 0 10px; font-weight: 600;\"\u003eEl libro más vendido de todos los tiempos de Special One\u003c\/p\u003e  \u003cp style=\"font-size: 13px; margin: 0; color: #444; line-height: 1.65;\"\u003eL'\u003cstrong\u003eCrema hidratante\u003c\/strong\u003e es la mascarilla hidratante profesional más vendida en la historia de Special One, el producto que dio a conocer la marca a miles de peluqueros. Su fórmula se basa en la \u003cstrong\u003eextractos de seda\u003c\/strong\u003e,  que depositan una película protectora sedosa y le dan al pelaje un \u003cstrong\u003eBrillo excepcional para un color vibrante.\u003c\/strong\u003e.  Es \u003cem\u003eallá\u003c\/em\u003e Punto de entrada al campo de tiro.\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\u003c\/h2\u003e  \u003c!-- DILUCIÓN P4: 3 cartas simples (Proporción · Rendimiento · Equivalencias animadas) --\u003e  \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e  \u003cdiv class=\"aqr-dilution-eyebrow\"\u003edilución de referencia\u003c\/div\u003e  \u003cdiv class=\"aqr-dilution-grid\"\u003e  \u003c!-- TARJETA 1: Ratio --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRelación\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\"\u003eDe 1 cucharadita a 2 cucharadas\u003cbr\u003epor litro dependiendo del resultado\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- MAPA 2: Rendimiento --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003eProducir\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 litros\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\"\u003epreparado para usar\u003c\/div\u003e  \u003c\/div\u003e  \u003c!-- TARJETA 3: Equivalencias animadas --\u003e  \u003cdiv class=\"aqr-dilution-cell\"\u003e  \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePara \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e producto terminado\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\u003een volumen\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 gramo \u003cspan\u003een peso\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\"\u003ecucharada\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!-- MÉTODO DE PREPARACIÓN DEL BLOQUE (infografía, no protocolo) --\u003e  \u003cdiv class=\"aqr-method-box\"\u003e  \u003cdiv class=\"aqr-method-eyebrow\"\u003e🛠️ Método de preparación\u003c\/div\u003e  \u003ch3 class=\"aqr-method-title\"\u003eCómo preparar una crema perfecta en 6 pasos: consejos caseros.\u003c\/h3\u003e  \u003cp class=\"aqr-method-subtitle\"\u003eEste método antiaglomeración es la base de \u003cstrong\u003e3 protocolos a continuación\u003c\/strong\u003e — Un solo movimiento para dominar.\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\"\u003eDosificación\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eLlevar \u003cstrong\u003e1 cuchara\u003c\/strong\u003e de crema en un tazón o una coctelera.\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\"\u003eAceite \u003cspan class=\"aqr-method-opt\"\u003e(opción)\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eSi nodos residuales: \u003cstrong\u003e1 Presión de aceite 4 elementos\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\"\u003eAgua \u003cem\u003emuy\u003c\/em\u003e caliente\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eAproximadamente \u003cstrong\u003e5 cm de agua muy caliente\u003c\/strong\u003e — esencial para \u003cstrong\u003edisolver los aceites\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\"\u003eEmulsionar\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003e  \u003cstrong\u003e¡Una batidora o licuadora es esencial!\u003c\/strong\u003e Agitar\/mezclar hasta que se forme una emulsión homogénea.\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\"\u003eBioenergía Plus \u003cspan class=\"aqr-method-opt\"\u003e(opción)\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003e  \u003cstrong\u003e2 dosis de Bio Energy Plus\u003c\/strong\u003e para potenciar el efecto hidratante.\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\"\u003eCompleto \u0026amp; aplicar\u003c\/div\u003e  \u003cdiv class=\"aqr-method-step-desc\"\u003eCompletar con agua tibia, mezclar bien y aplicar. \u003cstrong\u003eNo enjuague (o enjuague muy poco)\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\u003eNuestro consejo:\u003c\/strong\u003e A diferencia de otras cremas, la Crema Hidratante se revela por completo. \u003cstrong\u003eSin enjuagar (o con un enjuague muy ligero)\u003c\/strong\u003e — Esto es lo que permite que la película sedosa se adhiera correctamente a la fibra.\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\"\u003eAseo rápido \u0026amp; eficaz\u003c\/span\u003eUso básico: uso cotidiano en la sala de estar.\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\"\u003eMezcla\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMezcle la crema hidratante con una \u003cstrong\u003ebase de agua caliente\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\"\u003eHomogenizar\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAgitar o licuar para homogeneizar.\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\"\u003eCompleto\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eRellene con agua tibia y aplique.\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\"\u003eLigero\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e  \u003cstrong\u003e1 cucharadita por litro\u003c\/strong\u003e + enjuague opcional.\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 más plomo\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e  \u003cstrong\u003e1 a 2 cucharadas por litro\u003c\/strong\u003e + No requiere enjuague.\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\"\u003eReestructuración intensiva\u003c\/span\u003ePara cabello muy dañado: tratamiento intensivo\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\"\u003ePrepara la mezcla\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eSobre pieles lavadas y escurridas: \u003cstrong\u003e1 cucharada + 20 gotas de aceite de los 4 elementos\u003c\/strong\u003e En \u003cstrong\u003e2 litros de agua caliente\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\"\u003eDistribuir\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDistribúyalo a lo largo de todo el cabello y déjelo actuar durante unos minutos mientras se cepilla.\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\"\u003eRefuerzo de calor\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003e💡  \u003cstrong\u003eTruco :\u003c\/strong\u003e Para cabello muy dañado, aplique el \u003cstrong\u003ebajo una fuente de calor\u003c\/strong\u003e (secador de pelo, lámpara) para activar la penetración.\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\"\u003eEnjuagar\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eEnjuague bien.\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\"\u003ePreparación de la exposición\/Embalaje\u003c\/span\u003eEl ritual de los competidores y sus entrenadores\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\"\u003eMezcla el trío\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDespués del baño: \u003cstrong\u003e1 cucharada de Crema Hidratante + 1 cucharada de Hygrofluid + unas gotas de 4 Elementos\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\"\u003eAplicar\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003eSolicitar el \u003cstrong\u003eflequillo y barba\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\"\u003ePeine\u003c\/div\u003e  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePintar con un \u003cstrong\u003epincel de alfileres\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\"\u003eDejar en su lugar \u003cstrong\u003edebajo de paquetes de aluminio\u003c\/strong\u003e — hasta un máximo de 1 semana.\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!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/h2\u003e  \u003c!-- Villanelle en el corazón + suplementos modulares Si... → Entonces --\u003e  \u003cdiv class=\"aqr-assoc\"\u003e  \u003cp class=\"aqr-assoc-intro\"\u003eLa crema hidratante hace \u003cstrong\u003eunanimidad sobre una amplia variedad de razas\u003c\/strong\u003e.  Ideal para el \u003cstrong\u003eAcondicionamiento de flequillos y barbas\u003c\/strong\u003e,  y el \u003cstrong\u003etratamiento durante la muda estacional\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe desea un volumen ligero…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 cucharadita\/L + enjuague opcional\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eEl efecto pesado y opresivo deseado...\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003e1 a 2 cucharadas.cucharada\/L + sin enjuague\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003ecabello muy dañado…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eReestructuración intensiva (+ 4 elementos Petróleo + calor)\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003epreparación para un espectáculo o envoltura…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eHidratante + Hygrofluid + Mezcla de 4 elementos en sobres de aluminio\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eDifícil desenredar como dúo…\u003c\/span\u003e  \u003c\/div\u003e  \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eVillanelle (para aflojar) + Crema hidratante (para finalizar)\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!-- Carreras en pastillas redondeadas --\u003e  \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eDonde la crema hidratante marca la diferencia:\u003c\/h3\u003e  \u003cdiv class=\"aqr-races-mosaic\"\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐱 Todos los gatos \u0026amp; Razas tibetanas \u003cspan\u003e(Shih-Tzu, Lhasa Apso…)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐶 Cocker Spaniels, Spaniels \u0026amp; Rey caballero Carlos \u003cspan\u003e(flequillo y barba)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐕 Pastores, Retrievers, Spitz \u0026amp; euroasiáticos \u003cspan\u003e(muda estacional)\u003c\/span\u003e\u003c\/span\u003e  \u003cspan class=\"aqr-race-tag\"\u003e🐩 Terriers, caniches, bichones \u0026amp; Yorkshire \u003cspan\u003e(cabello rizado y largo)\u003c\/span\u003e\u003c\/span\u003e  \u003c\/div\u003e  \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLa crema hidratante goza de reconocimiento universal y es el producto de entrada histórico a la gama Special One.\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% | Libre de SLES, DEA, parabenos y siliconas | No probado en animales | Reciclable en HDPE\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 litro","offer_id":37819389673651,"sku":"WEX-HYD1 (22)","price":72.7,"currency_code":"EUR","in_stock":true},{"title":"3 litros","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":"aquapure-chlorexidine-propolis","title":"AQUAPURE PRO - 1er shampoing lavant et désinfectant","description":"\u003c!-- ============================================== SISTEMA DE DISEÑO — Refinamiento visual ============================================== --\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!-- BLOQUE 1: INTRODUCCIÓN --\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 ¿Es el champú Special One? \u003cstrong\u003eLa mayor potencia de lavado de la gama.\u003c\/strong\u003e.  Limpia incluso a los animales más sucios a fondo y permite una \u003cstrong\u003ereinicio epidérmico\u003c\/strong\u003e Gracias a sus propiedades antisépticas naturales, sin dañar jamás la piel ni el cabello.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eTodos encontrarán algo de verdadero interés en ello. \u003cstrong\u003eparticularmente indispensable para casos difíciles y situaciones extremas\u003c\/strong\u003e en un salón de belleza o en una granja.\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\"\u003ePeluqueros\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\"\u003eGanaderos\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\"\u003eIndividuos\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\"\u003eCompetidores\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\"\u003eadiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEnriquecido con \u003cstrong\u003epropóleos\u003c\/strong\u003e — “el antibiótico natural” — y en \u003cstrong\u003eclorhexidina\u003c\/strong\u003e,  El Aquapure Pro combina el mayor poder de limpieza de la gama con propiedades \u003cstrong\u003eantisépticos, antibacterianos y antifúngicos de larga duración\u003c\/strong\u003e.  Ultraeficaz en las situaciones más extremas, a la vez que respeta el equilibrio hidrolipídico y el pH natural de la piel.\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\"\u003eMáxima potencia de lavado\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eEl más potente de la gama: limpia y desinfecta en profundidad incluso los casos más difíciles.\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\"\u003eRespeto por la piel\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eA pesar de su poder limpiador, preserva el equilibrio hidrolipídico natural y el pH.\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\"\u003eCasos extremos\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eEficaz en machos con orina, pelaje muy descuidado, contaminación y suciedad profunda.\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\"\u003eReinicio epidérmico\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003ePropiedades calmantes, purificantes y antisépticas para empezar a tener una piel sana.\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\"\u003eAntibacteriano \u0026amp; antifúngico\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAcción duradera contra bacterias, levaduras y hongos, tanto curativa como preventiva.\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\"\u003eResultado visible\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003ePelaje más limpio, sano y brillante desde el primer uso.\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!-- UNIDAD DE RADAR (trasladada a la sección de Experiencia) --\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;\"\u003eComprenda mejor las acciones de Aquapure Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn análisis detallado de su desempeño cosmético, nota por nota.\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!-- BLOQUE 3: COMPOSICIÓN (MAPEO JS ingredientes activos Aquapure Pro - verificado) --\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;\"\u003eComposición de Aquapure Pro: ingredientes activos naturales \u0026amp; acción dirigida\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUna fórmula centrada en la eficacia antiséptica y las propiedades respetuosas con la piel. \u003cstrong\u003eSin SLES, sin parabenos, sin siliconas\u003c\/strong\u003e.  Aquí se explica, zona por zona, cómo actúa cada ingrediente activo sobre la piel y el cabello.\u003c\/p\u003e            \u003c!-- CARTOGRAFÍA --\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!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\u003c\/h2\u003e          \u003c!-- DILUCIÓN P4: 3 cartas simples (Proporción · Rendimiento · Equivalencias animadas) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003edilución de referencia\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- TARJETA 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRelación\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\"\u003eUna parte por cada 20 partes de agua.\u003cbr\u003e1\/10 si la acción antiséptica es intensa\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAPA 2: Rendimiento --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eProducir\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\"\u003epreparado para usar\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- TARJETA 3: Equivalencias animadas --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePara \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e producto terminado\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\u003een volumen\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 gramo \u003cspan\u003een peso\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\"\u003ecucharadas\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\"\u003epresiones de la bomba\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\"\u003eLimpieza intensiva: para animales muy sucios o descuidados.\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\"\u003ePara pieles muy descuidadas, machos con orina, contaminación o suciedad profunda.\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\"\u003eLavado intensivo\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplicar Aquapure Pro \u003cstrong\u003ediluido a 1\/10\u003c\/strong\u003e (acción intensa) sobre el cabello mojado. Masajear bien y luego enjuagar.\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\"\u003eSegundo champú acondicionador\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eHaga un seguimiento con un \u003cstrong\u003eSegundo, champú más suave\u003c\/strong\u003e — \u003cstrong\u003eBain Pro, Aquarosa Pro o 4Poodle\u003c\/strong\u003e — para acondicionar después de la limpieza.\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\"\u003eRefinamiento\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalizar con \u003cstrong\u003eCrema hidratante, Bombastic o Aqua Dolce\u003c\/strong\u003e dependiendo de las necesidades del pelaje.\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\"\u003eReiniciando la epidermis: piel que necesita limpieza.\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\"\u003ePara restaurar la salud de la piel después de una maceración, descuido o desequilibrio de la piel.\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\"\u003eMascarilla prebaño\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePrepárate con la mascarilla previa al baño. \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e para potenciar la acción restauradora.\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\"\u003eAplicación sin enjuague\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplique Aquapure Pro directamente \u003cstrong\u003esin enjuagar la mascarilla\u003c\/strong\u003e.  Déjelo actuar durante unos instantes y luego masajee.\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\"\u003eEnjuague \u0026amp; renovación\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eEnjuague bien y repita el lavado con champú si es necesario.\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\"\u003eAcabado restaurador\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalizar con \u003cstrong\u003eCrema hidratante + aceites de 4 elementos\u003c\/strong\u003e para restaurar la película protectora.\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\"\u003eElige Aquapure Pro si necesitas…\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\"\u003eSituaciones en las que el Aquapure Pro marca la diferencia\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\"\u003eLimpieza profunda\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eLas pieles más sucias y descuidadas.\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\"\u003eRestablecer la apariencia\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eGracias a sus propiedades antisépticas y antifúngicas.\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\"\u003eDesinfección en circunstancias excepcionales\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDepilación en piel muy sucia que requiere desinfección de la 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\"\u003ePrevenir\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePara prevenir el crecimiento de bacterias, levaduras u hongos en la piel que ha sido macerada o descuidada.\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!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/h2\u003e          \u003c!-- Aquapure Pro en su esencia + suplementos modulares Si... → Entonces --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eToda la gama Special One\u003c\/strong\u003e Es compatible con Aquapure Pro.Nuestras alianzas favoritas:\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe recomienda un segundo champú más suave…\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe recomienda una mascarilla reparadora antes del baño…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBioenergía 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eEs necesario un tratamiento final…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eCrema hidratante · 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe busca un acabado de exposición…\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 · Rosa Mixto · Estilo 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!-- Carreras en pastillas redondeadas --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eDonde Aquapure Pro marca la diferencia:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐶 Todos los perros \u003cspan\u003e(sin excepción)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 Todos los gatos \u003cspan\u003e(sin excepción)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e💧 machos marcadores \u0026amp; orina\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🌫️ Contaminación \u0026amp; tierra profunda\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🩹 piel macerada o descuidada\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✂️ Depilación en piel que necesita limpieza.\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLa limpieza más potente de la gama, sin renunciar a la suavidad con la piel y el cabello.\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% | Libre de SLES, DEA, parabenos y siliconas | No probado en animales | Reciclable en HDPE\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, acondicionador bifásico","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 | Detalles del producto\u003c\/title\u003e      \u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e        \u003c!-- BLOQUE 1: INTRODUCCIÓN --\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\u003eMEZCLA ROSA\u003c\/strong\u003e es el spray acondicionador antiestático bifásico de Special One, un éxito de ventas en la gama Expert Line. Su fórmula única, enriquecida con aceite de macadamia y lanolina, actúa como un \u003cstrong\u003eAgente reestructurante y disciplinante potente del pelaje\u003c\/strong\u003e :  El cabello recupera su tono, hidratación y brillo sin sentirse pesado ni grasoso.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/span\u003e          \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eIdeal para todo tipo de abrigos largos y con flecos, e indispensable para pieles finas y lanosas con alto potencial electrostático.\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✅ Peluqueros\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Ganaderos\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuos\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✅ Competidores\u003c\/td\u003e                      \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ adiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u0026amp;            \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eEs \u003cstrong\u003efórmula de dos fases\u003c\/strong\u003e La clave de su eficacia reside en el hecho de que, tras agitarlo, las dos fases —oleosa y acuosa— permiten que los aceites se extiendan uniformemente sobre el cabello. \u003cstrong\u003esin engrasar\u003c\/strong\u003e,  Al mismo tiempo que neutraliza la carga electrostática, el producto se seca rápidamente, no se acumula y no parpadea durante el secado, por lo que puede usarse con la frecuencia necesaria, incluso a diario.\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\u003eAgente antiestático potente:\u003c\/strong\u003e Elimina la carga electrostática sin apelmazar el abrigo.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eDisciplina:\u003c\/strong\u003e Ordena, alisa y estructura el pelaje, hasta los pelos que \u0026quot;se mueven\u0026quot;.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eHidratación \u0026amp; brillo:\u003c\/strong\u003e Cabello brillante, flexible y visiblemente hidratado después de cada aplicación.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntinudos duradero:\u003c\/strong\u003e Mejora la textura del pelaje y previene la formación de nudos con el uso diario.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntifrizz:\u003c\/strong\u003e Elimina el encrespamiento y protege el cabello del calor del secador.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eSuavizante de telas:\u003c\/strong\u003e Suaviza el pelaje seco y deshidratado, facilitando mucho el desenredado.\u003c\/li\u003e                  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eFórmula no grasa:\u003c\/strong\u003e Distribución uniforme de los aceites sin residuos ni efectos pesados.\u003c\/li\u003e                  \u003cli\u003e✅  \u003cstrong\u003eAroma fresco \u0026amp; persistente :\u003c\/strong\u003e Una nota agradable que deja el abrigo con un buen olor después de cada uso.\u003c\/li\u003e              \u003c\/ul\u003e          \u003c\/div\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 3: ACTIVOS --\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;\"\u003eSinergia de ingredientes activos naturales\u003c\/span\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn complejo de aceites preciosos e ingredientes activos reestructurantes cuidadosamente seleccionados por sus propiedades hidratantes, protectoras y regeneradoras.\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; Aceite de macadamia\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eHidratante y reestructurante: mantiene el pelaje suave, brillante y profundamente nutrido.\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🍀 Lanolina\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eEmoliente natural de origen ovino: previene la sequedad, reduce la caída del cabello y mejora la facilidad de peinado.\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🍀 Aceite de camelia\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRico en ácidos grasos esenciales y vitamina E, protege el pelaje de los rayos UV, el viento y la contaminación.\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🍀 Aceite de girasol\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eEmoliente y calmante: mantiene la piel flexible e hidratada, y previene la sequedad.\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🍀 Aceite de maíz\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eLigero y no graso: hidrata el pelaje sin apelmazarlo.\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🍀 extracto de ginseng\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eAntioxidante y regenerador: protege contra las agresiones externas y estimula la regeneración del cabello.\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🍀 Extracto de café arábica\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eTonificante y estimulante: mejora la microcirculación cutánea y energiza las fibras.\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🍀 Aceite de ricino hidrogenado\u003c\/strong\u003e\u003cbr\u003e                          \u003cspan style=\"font-size: 11px; color: #666;\"\u003eEmoliente y calmante: suaviza la piel, previene la sequedad y la descamación.\u003c\/span\u003e                      \u003c\/td\u003e                  \u003c\/tr\u003e              \u003c\/tbody\u003e          \u003c\/table\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\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\u003eAgitar enérgicamente antes de cada uso.\u003c\/strong\u003e para mezclar completamente las dos fases. Rocíe a \u003cstrong\u003e20–30 cm\u003c\/strong\u003e del cabello. No rocíe en los ojos ni en la nariz.     \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\u003eEjemplo 1 🔥 Entrevista \u0026amp; cepillado diario con pelaje seco\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e              \u003c\/summary\u003e              \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e         Para abrigos que se atan fácilmente, se puede usar Mix Pink. \u003cstrong\u003etodos los días con pelaje seco\u003c\/strong\u003e en una entrevista:\u003cbr\u003e         1. Agite el frasco. Rocíe sobre la zona a cepillar, a una distancia de 20 a 30 cm.\u003cbr\u003e         2. Cepilla sección por sección. El cabello se relaja, se ordena y la carga electrostática desaparece.\u003cbr\u003e         El uso regular mejora gradualmente la textura del pelaje y \u003cstrong\u003eevita la formación de nudos\u003c\/strong\u003e a la larga.       \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\u003eEjemplo 2 🔥 Acondicionador durante el secado\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\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 se integra perfectamente en la fase de secado posterior al baño:\u003cbr\u003e         1. Agite la botella. Rocíe uniformemente sobre toda la capa húmeda, desde una distancia de 20 a 30 cm, cubriendo toda la superficie.\u003cbr\u003e         2. Secar con secador, cepillando sección por sección.\u003cbr\u003e         El producto \u003cstrong\u003eSe seca rápidamente sin acumularse.\u003c\/strong\u003e — Protege contra los daños causados ​​por el calor y deja el pelaje disciplinado, brillante y fragante.       \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\u003eEjemplo 3 🔥 Acabado previo al anillo: definición \u0026amp; Exposición Shine\u003c\/span\u003e                  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\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 es una excelente \u003cstrong\u003epresentación finalizada\u003c\/strong\u003e Para perros de exposición:\u003cbr\u003e         1. Agite la botella. Rocíe directamente sobre el pelaje seco y cepillado.\u003cbr\u003e         2. Distribúyalo uniformemente con el pincel para definir las formas y realzar el brillo de los mechones largos y los flequillos.\u003cbr\u003e         Resultado: un pelaje impecablemente ordenado, brillante y estructurado, listo para la competición.       \u003c\/div\u003e          \u003c\/details\u003e      \u003c\/div\u003e        \u003c!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/span\u003e            \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003eToda la gama Special One es compatible con Mix Pink. Nota: Mix Pink es más ligero y aireado que Aqua Beauty (menos antienredos, más ligero) y se diferencia de Absolute 4Poodle, que se centra más en dar volumen a los caniches.\u003c\/p\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e              🤝  \u003cstrong\u003eAquarosa Pro\/Bain Pro\u003c\/strong\u003e en champú       🤝  \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e usar mascarilla       🤝  \u003cstrong\u003eBelleza acuática\u003c\/strong\u003e en un spray complementario (acción antienredos mejorada)     \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✔️ Razas de pelo largo y con flecos: Cocker Spaniel, Setter, Afgano, Yorkshire Terrier: acondicionamiento y brillo del pelaje.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Pelajes finos y lanudos con fuerte atracción electrostática: malteses, bichones, samoyedos…\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Caniches: aclara y ordena el pelaje sin rizarlo (a diferencia de Absolute 4Poodle para dar volumen).\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Razas de pelo sedoso: Shih-Tzu, Cavalier King Charles Spaniel, Terrier Tibetano: suavidad y facilidad para peinar a diario.\u003c\/td\u003e                  \u003c\/tr\u003e                  \u003ctr\u003e                      \u003ctd style=\"padding: 10px 0;\"\u003e✔️ Todos los perros que participan en exposiciones caninas reciben un tratamiento previo a la pista para definir sus formas e intensificar su brillo.\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% | Sin parabenos | No probado en animales | HDPE02 Reciclable\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":"aquarosa-pro","title":"AQUAROSA PRO","description":"\u003c!-- ============================================== SISTEMA DE DISEÑO — Refinamiento visual ============================================== --\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!-- BLOQUE 1: INTRODUCCIÓN --\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 es el champú profesional Special One dedicado a pelajes que necesitan urgentemente nutrición. Ultraconcentrado, rico en vitaminas y agentes hidratantes, le dará al pelaje la \u003cstrong\u003eLa mejor versión del pelaje de tu mascota, sea cual sea su raza.\u003c\/strong\u003e :  La hidratación y nutrición más intensas posibles, con acondicionador integrado.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eResultará de gran interés para todos, desde salones de belleza profesionales hasta particulares.\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\"\u003ePeluqueros\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\"\u003eGanaderos\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\"\u003eIndividuos\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\"\u003eCompetidores\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\"\u003eadiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eSu fórmula ultraconcentrada le permite \u003cstrong\u003epara capturar las pieles más deshidratadas\u003c\/strong\u003e,  Con una acción especialmente intensa sobre pieles secas y sensibles. Las vitaminas y aminoácidos naturales le aportan una suavidad excepcional, además de un brillo y luminosidad duraderos. Incluso con un uso muy frecuente, es suave con la piel y el cabello.\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\"\u003eBaño suave\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eApto para perros y gatos de todas las edades, desde cachorros hasta perros mayores.\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\"\u003eLimpieza profunda\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eLimpia, desinfecta y da brillo a todo tipo de cabello.\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\"\u003eAntinudo\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eFacilita el desenredado y el cepillado, y limita la reaparición de nudos.\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\"\u003eNutrición inmediata\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAcción intensa y visible desde el primer lavado.\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\"\u003eProtección de queratina\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAumenta las defensas naturales para proteger la estructura del cabello.\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\"\u003ePiel grasa\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eTrata el exceso de sebo a la vez que preserva la película hidrolipídica.\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\"\u003eBaños frecuentes\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eNo supone ningún riesgo para la piel ni el cabello, incluso con un uso intensivo.\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\"\u003eEl cabello con volumen conservará su volumen natural; el cabello sedoso y abundante se mantendrá como está, e incluso se verá más bonito.\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!-- UNIDAD DE RADAR (trasladada a la sección de Experiencia) --\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;\"\u003eComprenda mejor las acciones de AQUAROSA PRO\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn análisis detallado de su desempeño cosmético, nota por nota.\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!-- BLOQUE 3: COMPOSICIÓN (con MAPEO) --\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;\"\u003eComposición de AQUAROSA PRO: ¡innovación, rendimiento y búsqueda de ingredientes naturales!\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUna fórmula natural rica en antioxidantes, vitaminas y agentes purificadores. \u003cstrong\u003eSin SLS\u003c\/strong\u003e,  Sin parabenos, sin siliconas.\u003c\/p\u003e            \u003c!-- CARTOGRAFÍA --\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!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\u003c\/h2\u003e          \u003c!-- DILUCIÓN P4: 3 cartas simples (Proporción · Rendimiento · Equivalencias animadas) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003edilución de referencia\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- TARJETA 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRelación\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\"\u003eUna porción de champú\u003cbr\u003epor 20 partes de agua\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAPA 2: Rendimiento --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eProducir\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\"\u003epreparado para usar\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- TARJETA 3: Equivalencias animadas --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePara \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e500 ml\u003c\/span\u003e producto terminado\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\u003een volumen\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 gramo \u003cspan\u003een peso\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\"\u003ecucharada\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\"\u003epresión de la bomba\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\"\u003eAseo rápido y económico \u0026amp; eficaz\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\"\u003eEl baño básico — para uso regular en el salón\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\"\u003ePrimer pasaje\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eComience el baño directamente con Aquarosa Pro diluido, sobre el cabello previamente humedecido. Enjuague.\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\"\u003eSegundo champú\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplique un segundo champú y enjuague de nuevo.\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\"\u003eCuidados finales\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalice con el acondicionador adecuado: \u003cstrong\u003eCrema hidratante\u003c\/strong\u003e, \u003cstrong\u003eRimbombante\u003c\/strong\u003e O \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\"\u003eAcción ultra intensa: Salón, Emergencia o Exposición\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\"\u003ePara desenredar, reparar el pelaje dañado o mejorar el aseo para exposiciones.\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\"\u003eMascarilla prebaño\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAtaque con un \u003cstrong\u003emascarilla prebaño\u003c\/strong\u003e Residencia en \u003cstrong\u003eBioenergía\u003c\/strong\u003e O \u003cstrong\u003eRimbombante\u003c\/strong\u003e.  A eso hay que añadir algo \u003cstrong\u003eAceites de los 4 elementos\u003c\/strong\u003e o de la\u003cstrong\u003eCrema hidratante\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 en la mascarilla\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplicar el\u003cstrong\u003eAplique Aquarosa Pro inmediatamente después de la mascarilla, sin enjuagar entretanto.\u003c\/strong\u003e.  Para una mayor eficiencia, concéntrese más y combine con \u003cstrong\u003eRimbombante\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\"\u003eAplicación y doble champú\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eDéjelo actuar durante unos instantes y, si es posible, masajee. \u003cstrong\u003eSe recomiendan dos champús.\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\"\u003eFinalización\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinaliza con un acondicionador o una mascarilla según sea necesario.\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\"\u003ePotenciadores de la integración — Nutrición \u0026amp; Volumen\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\"\u003eDos variaciones para amplificar el efecto según sea necesario\u003c\/p\u003e                      \u003col class=\"aqr-proto-steps\"\u003e                          \u003cli class=\"aqr-proto-step\"\u003e                              \u003cspan class=\"aqr-proto-step-marker\"\u003eTIENE\u003c\/span\u003e                              \u003cdiv class=\"aqr-proto-step-body\"\u003e                                  \u003cdiv class=\"aqr-proto-step-title\"\u003eRefuerzo nutricional\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003ePara un efecto aún más nutritivo, agregue directamente \u003cstrong\u003euna cucharada de Aqua Dolce\u003c\/strong\u003e En tu mezcla Aquarosa Pro. Aplica, deja actuar unos instantes y enjuaga bien con agua tibia.\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\"\u003eAumento de volumen\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eMezcla el Aquarosa Pro con la espuma. \u003cstrong\u003eAgua Vita\u003c\/strong\u003e.  Su efecto efervescente aporta volumen y potencia la limpieza. Ideal para pelajes que pierden luminosidad tras el baño.\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\"\u003eSecado perfecto\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eEn ambos casos, termine de secar cepillando con \u003cstrong\u003eBelleza acuática\u003c\/strong\u003e O \u003cstrong\u003eMezcla rosa\u003c\/strong\u003e para un pelaje aún más suave y brillante.\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!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/h2\u003e          \u003c!-- Aquarosa en su esencia + suplementos modulares Si... → Entonces --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003eToda la gama Special One es compatible. \u003cstrong\u003eSe pueden combinar libremente\u003c\/strong\u003e dependiendo de la necesidad del momento:\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe recomienda una mascarilla antes del baño…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eBioenergía\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eLo combinas con otro champú…\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe necesita una última máscara…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eCrema hidratante · 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eSe necesita un último toque…\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 · Rosa Mixto · Estilo 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!-- Carreras en pastillas redondeadas --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003ePerfectamente calibrado para texturas exigentes:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐾 Todos los perros en la sala de estar \u003cspan\u003e(limita la devolución de nodos)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Pieles rizadas \u003cspan\u003e(Caniches, Bichones, Kerry Blue...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🇬🇧 Cockers \u0026amp; Spaniels \u003cspan\u003e(Ingleses, estadounidenses, caballeros...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🏔️ capas tibetanas \u003cspan\u003e(Shih Tzu, Lhasa Apso...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✨ Texturas sedosas \u003cspan\u003e(Yorkshire Terriers, galgos afganos...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 Terriers \u003cspan\u003e(Escocés, Westie, galés...)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 Todos los gatos\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLista no exhaustiva: Aquarosa Pro es adecuado para todo tipo de pelaje que requiera una nutrición intensa.\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% | Sin SLS, DEA, parabenos ni siliconas | No testado en animales | HDPE reciclable\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 litros","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":"aquaterme-argile-verte","title":"AQUA TERME PRO, shampoing soin à l'argile","description":"\u003c!-- ============================================== SISTEMA DE DISEÑO — Refinamiento visual ============================================== --\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!-- BLOQUE 1: INTRODUCCIÓN --\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 es el champú profesional Special One formulado con\u003cstrong\u003earcilla verde y menta\u003c\/strong\u003e,  Dedicado a la piel que requiere tratamiento. \u003cstrong\u003ePurifica y limpia profundamente\u003c\/strong\u003e Respetando la película hidrolipídica, sin comprometer el resultado: una apariencia magnífica y un secado perfecto.     \u003c\/div\u003e          \u003cdiv style=\"font-size: 1.1em; margin-bottom: 16px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e       También lo es \u003cstrong\u003eEl champú ideal para perros con problemas de olor.\u003c\/strong\u003e :  Gracias a Aqua Terme, todo el mundo termina su aseo personal con un aroma maravillosamente fresco.     \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;\"\u003e¿A quién va dirigido este producto?\u003c\/h2\u003e          \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003eTodos encontrarán algo de verdadero interés en ello, por \u003cstrong\u003ecurativo\u003c\/strong\u003e en animales con anomalías cutáneas y en \u003cstrong\u003epreventivo\u003c\/strong\u003e en razas predispuestas.\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\"\u003ePeluqueros\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\"\u003eGanaderos\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\"\u003eIndividuos\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\"\u003eCompetidores\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\"\u003eadiestradores\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!-- BLOQUE 2: EXPERIENCIA \u0026  RESULTADOS --\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;\"\u003ePericia \u0026amp; Resultados\u003c\/h2\u003e          \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eGracias a su contenido de \u003cstrong\u003earcilla verde y extracto de menta\u003c\/strong\u003e,  Aqua Terme Pro purifica profundamente, calma la piel deshidratada o reactiva y devuelve el brillo y la frescura al pelaje apagado. Su fórmula de tratamiento no afecta la calidad del aseo. \u003cstrong\u003eLa acción terapéutica y los resultados visuales impecables van de la mano.\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\"\u003ePiel sana\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eTrata los problemas de la piel preservando la película hidrolipídica, sin causar irritación.\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\"\u003eResistente a los olores\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCombate los malos olores relacionados con trastornos de la piel y el sebo.\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\"\u003eVersátil\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAyuda a combatir la alopecia, el picor, las irritaciones y las zonas calientes.\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\"\u003eSaneamiento \u0026amp; purificación\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eLimpia y regenera las células en profundidad desde el primer uso.\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\"\u003eAnticaspa\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eRegula el cuero cabelludo y reduce significativamente la caspa.\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\"\u003eCalmante\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eCalma la piel irritada o reactiva; ideal después de la depilación con cera o del cepillado enérgico.\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\"\u003eDulce \u0026amp; frescura\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAporta brillo y frescura a los pelajes apagados y sin vida.\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\"\u003eLuciendo pieles finas\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eAporta cuerpo al pelo muy fino que carece de volumen (por ejemplo, en caniches grises y rojos).\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\"\u003eDesintoxicante \u0026amp; refrescante\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eElimina toxinas e impurezas de la piel, proporcionando una inmediata sensación de frescura.\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\"\u003eAlopecia Spitz X\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eSe recomienda su uso semanal en el protocolo de seguimiento y regeneración capilar.\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\"\u003eEspuma excepcional\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eLa espuma funciona de maravilla en los salones de belleza: fácil aplicación y buena distribución de los ingredientes activos.\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\"\u003eResultado profesional\u003c\/div\u003e                          \u003cdiv class=\"aqr-benefit-desc\"\u003eTratamiento de máxima eficacia: un aspecto magnífico y un secado perfecto.\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!-- UNIDAD DE RADAR (trasladada a la sección de Experiencia) --\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;\"\u003eComprenda mejor las acciones de Aqua Terme Pro\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn análisis detallado de su desempeño cosmético, nota por nota.\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!-- BLOQUE 3: COMPOSICIÓN (MAPEO JS activo Aqua Terme Pro - confiable) --\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;\"\u003eComposición de Aqua Terme Pro: ingredientes activos naturales \u0026amp; acción dirigida\u003c\/h2\u003e          \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUn complejo mineral y vegetal completamente natural. \u003cstrong\u003earcilla verde, menta y plantas purificadoras\u003c\/strong\u003e,  Sin SLS, sin parabenos, sin siliconas. Aquí, zona por zona, te mostramos cómo actúa cada ingrediente activo sobre la piel y el cabello.\u003c\/p\u003e            \u003c!-- CARTOGRAFÍA --\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!-- BLOQUE 4: PROTOCOLOS --\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\u003c\/h2\u003e          \u003c!-- DILUCIÓN P4: 3 cartas simples (Proporción · Rendimiento · Equivalencias animadas) --\u003e          \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e              \u003cdiv class=\"aqr-dilution-eyebrow\"\u003edilución de referencia\u003c\/div\u003e                \u003cdiv class=\"aqr-dilution-grid\"\u003e                    \u003c!-- TARJETA 1: Ratio --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRelación\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\"\u003eUna parte por cada 20 partes de agua.\u003cbr\u003e— o puro\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- MAPA 2: Rendimiento --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003eProducir\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\"\u003epreparado para usar\u003c\/div\u003e                  \u003c\/div\u003e                    \u003c!-- TARJETA 3: Equivalencias animadas --\u003e                  \u003cdiv class=\"aqr-dilution-cell\"\u003e                      \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePara \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e1 L\u003c\/span\u003e producto terminado\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\u003een volumen\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 gramo \u003cspan\u003een peso\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\"\u003ecucharadas\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\"\u003epresiones de la bomba\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\"\u003eAseo rápido \u0026amp; piel para calmar\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\"\u003ePara un baño diario eficaz y relajante\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\"\u003ePrimer champú\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eComience el baño directamente con el\u003cstrong\u003eAgua Terme Pro diluida\u003c\/strong\u003e sobre el pelaje mojado. Enjuagar.\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\"\u003eSegundo champú\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplicar un \u003cstrong\u003esegundo champú\u003c\/strong\u003e,  Luego enjuague de nuevo.\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\"\u003eRefinamiento\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalice con el acondicionador adecuado: \u003cstrong\u003eCrema hidratante, Bombastic o 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\"\u003eBaño \u0026amp; Tratamiento profundo: piel que requiere acción intensiva\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\"\u003ePara pieles con anomalías cutáneas marcadas.\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\"\u003eMascarilla desintoxicante para antes del baño\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eAplique la mascarilla previa al baño. \u003cstrong\u003eTerapia de desintoxicación durante 10 minutos\u003c\/strong\u003e sobre el cabello seco.\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\"\u003eTratamiento sin enjuague\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eProceda directamente a la\u003cstrong\u003eAqua Terme Pro sin enjuague\u003c\/strong\u003e entre las dos fases.\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\"\u003eChampú doble \u0026amp; establecido\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eEnjuague y vuelva a lavar con champú. \u003cstrong\u003eDejar encendido durante 5 minutos\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\"\u003eAcabado restaurador\u003c\/div\u003e                                  \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalizar con \u003cstrong\u003eCrema hidratante + aceites de 4 elementos\u003c\/strong\u003e,  Luego, enjuague el acondicionador.\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!-- BLOQUE 5: ASOCIACIONES \u0026  CARRERAS --\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/h2\u003e          \u003c!-- Aqua Terme Pro en su esencia + suplementos modulares Si... → Entonces --\u003e          \u003cdiv class=\"aqr-assoc\"\u003e              \u003cp class=\"aqr-assoc-intro\"\u003e\u003cstrong\u003eToda la gama Special One\u003c\/strong\u003e Es compatible con Aqua Terme Pro. Nuestras combinaciones favoritas:\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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eEs imprescindible usar una máscara antes de nadar…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eTerapia de desintoxicación\u003c\/strong\u003e (siempre recomendado)\u003c\/div\u003e                  \u003c\/div\u003e                  \u003cdiv class=\"aqr-assoc-rule\"\u003e                      \u003cdiv class=\"aqr-assoc-if\"\u003e  \u003cspan class=\"aqr-assoc-if-tag\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eEs necesario un tratamiento final…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eCrema hidratante Aqua Dolce 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\"\u003eSI\u003c\/span\u003e  \u003cspan\u003eLa piel es muy reactiva…\u003c\/span\u003e  \u003c\/div\u003e                      \u003cdiv class=\"aqr-assoc-then\"\u003e  \u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e  \u003cstrong\u003eCrema hidratante + aceites de 4 elementos\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!-- Carreras en pastillas redondeadas --\u003e          \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eDonde Aqua Terme Pro marca la diferencia:\u003c\/h3\u003e          \u003cdiv class=\"aqr-races-mosaic\"\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🦊 Spitz · Alopecia X \u003cspan\u003e(baño semanal: atuendo, crecimiento \u0026amp; densidad)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐩 Caniches grises y rojos \u0026amp; bestias salvajes \u003cspan\u003e(cabello fino: sujetar \u0026amp; (regeneración)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐱 Gatos \u0026amp; perros con anomalías en la piel \u003cspan\u003e(uso curativo)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e✂️ Carreras que se enceran \u003cspan\u003e(crecimiento del vello después de la depilación)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐶 Bulldog francés \u0026amp; carlinos \u003cspan\u003e(pliegues, seborrea, irritaciones)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐕 Perro crestado chino \u003cspan\u003e(piel expuesta)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🦮 Golden Retriever \u003cspan\u003e(irritaciones) \u0026amp; exceso de sebo)\u003c\/span\u003e\u003c\/span\u003e              \u003cspan class=\"aqr-race-tag\"\u003e🐺 shar pei \u003cspan\u003e(pliegues profundos, desequilibrios de la piel)\u003c\/span\u003e\u003c\/span\u003e          \u003c\/div\u003e          \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eLista no exhaustiva: para uso tanto curativo como preventivo en pieles sensibles y predispuestas.\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% | Sin SLS, DEA, parabenos ni siliconas | No testado en animales | HDPE reciclable\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":"aqua-beauty","title":"AQUA BEAUTY : spray bi phase anti statique plombant gainant démêlant","description":"\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e\n\n  \u003c!-- BLOC 1 : INTRO --\u003e\n  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\n    \u003cdiv style=\"font-size: 1.1em; margin-bottom: 25px; border-left: 3px solid #1a1a1a; padding-left: 15px;\"\u003e\n      \u003cstrong\u003eAQUA BEAUTY\u003c\/strong\u003e est le spray conditionneur professionnel Special One qui se distingue par deux actions majeures : un \u003cstrong\u003edémêlage optimisé, aussi rapide qu'efficace\u003c\/strong\u003e, et un \u003cstrong\u003elissage \/ défrisage immédiat\u003c\/strong\u003e du pelage. Un \"must have\" dans toutes les mallettes de toilettage.\n    \u003c\/div\u003e\n\n    \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003ePour qui est fait ce produit ?\u003c\/span\u003e\n    \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003eTout le monde y trouvera un réel intérêt — de la mallette du toiletteur professionnel à la brosse du particulier au quotidien.\u003c\/p\u003e\n\n    \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 5px; margin-left: -5px; table-layout: fixed;\"\u003e\n      \u003ctbody\u003e\n        \u003ctr\u003e\n          \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Toiletteurs\u003c\/td\u003e\n          \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Éleveurs\u003c\/td\u003e\n          \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Particuliers\u003c\/td\u003e\n        \u003c\/tr\u003e\n        \u003ctr\u003e\n          \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Compétiteurs\u003c\/td\u003e\n          \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\n          \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e\n        \u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC RADAR : DIAGRAMME COSMÉTOLOGIQUE --\u003e\n  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e\n    \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\n      \u003cdiv style=\"padding:24px 28px 20px;overflow:visible;\"\u003e\n        \u003cspan style=\"font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#999;margin-bottom:22px;display:block;\"\u003eDiagramme cosmétologique de l'Aqua Beauty\u003c\/span\u003e\n        \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e\n          \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\n        \u003c\/div\u003e\n        \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \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\n\n  \u003cscript\u003e\n  (function() {\n    var PRODUCT = {\n      criteria: [\n        { label: \"Brillance\",    value: 5 },\n        { label: \"Gainage\",      value: 5 },\n        { label: \"Volume\",       value: 1 },\n        { label: \"Hydratation\",  value: 4 },\n        { label: \"Démêlant\",     value: 5 }\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\n\n  \u003c!-- BLOC 2 : EXPERTISE \u0026 RÉSULTATS --\u003e\n  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e\n    \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eExpertise \u0026amp; Résultats\u003c\/span\u003e\n\n    \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eAqua Beauty agit sur le pelage comme un \u003cstrong\u003epuissant agent restructurant et hydratant\u003c\/strong\u003e. Sa double action protège autant la fourrure mal entretenue des clients peu soigneux en salon que les manteaux très sollicités des chiens d'exposition. Un seul spray suffit pour retrouver un poil glissant, détendu et parfaitement lissé.\u003c\/p\u003e\n\n    \u003cdiv style=\"background: #f6f6f6; padding: 20px; border: 1px solid #e5e5e5; margin-top: 20px;\"\u003e\n      \u003cul style=\"padding-left: 20px; margin: 0; font-size: 14px; list-style-type: none;\"\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eLissage \u0026amp; défrisage :\u003c\/strong\u003e Supprime les ondulations et les frisottis du pelage immédiatement.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eConditioning intense :\u003c\/strong\u003e Gaine, protège et conditionne fortement le poil.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eDémêlage rapide :\u003c\/strong\u003e Action efficace sur les nœuds, même à sec.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eAnti-électricité statique :\u003c\/strong\u003e Élimine l'effet électrostatique pour un brossage fluide.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eHydratation :\u003c\/strong\u003e Apporte de l'eau et de la souplesse à la fibre en profondeur.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eAnti-casse :\u003c\/strong\u003e Renforce la résistance du poil et limite les ruptures.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eAnti-nœuds durables :\u003c\/strong\u003e Retarde significativement le retour des nœuds entre les bains.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eBrushing facilité :\u003c\/strong\u003e Rend le poil glissant et détendu, même lorsqu'on ressent de l'accroche en début de séchage.\u003c\/li\u003e\n        \u003cli style=\"margin-bottom: 8px;\"\u003e✅ \u003cstrong\u003eRéparateur :\u003c\/strong\u003e Remédie aux dommages causés par le vent, la pollution et le séchage intensif au sèche-cheveux.\u003c\/li\u003e\n        \u003cli\u003e✅ \u003cstrong\u003eNon gras :\u003c\/strong\u003e Contrairement aux huiles, il démêle sans graisser le poil — utilisable avant le bain sans risque de mauvais rinçage ni de tache sur les manteaux blancs.\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 3 : ACTIFS --\u003e\n  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e\n    \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eSynergie d'Actifs Naturels\u003c\/span\u003e\n    \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUne formulation naturelle ciblée sur la restructuration, l'hydratation et l'éclat — sans parabens.\u003c\/p\u003e\n\n    \u003ctable style=\"width: 100%; border-collapse: separate; border-spacing: 8px; margin-left: -8px;\"\u003e\n      \u003ctbody\u003e\n        \u003ctr\u003e\n          \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e\n            \u003cstrong\u003e🍀 Extrait d'Orchidée\u003c\/strong\u003e\u003cbr\u003e\n            \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRiche en minéraux et polysaccharides : hydratant, adoucissant, régénérant et anti-âge. Confère au poil un effet velouté et élastique grâce à sa capacité protectrice.\u003c\/span\u003e\n          \u003c\/td\u003e\n          \u003ctd style=\"width: 50%; border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e\n            \u003cstrong\u003e🍀 Tulipe Africaine (Spathodea campanulata)\u003c\/strong\u003e\u003cbr\u003e\n            \u003cspan style=\"font-size: 11px; color: #666;\"\u003eRiche en flavonoïdes, anthocyanes et triterpénoïdes aux propriétés antioxydantes, astringentes et apaisantes. Illumine le manteau, répare les dommages causés par le vent, la pollution et le séchage au sèche-cheveux.\u003c\/span\u003e\n          \u003c\/td\u003e\n        \u003c\/tr\u003e\n        \u003ctr\u003e\n          \u003ctd style=\"border: 1px solid #eee; padding: 12px; background: #fff; vertical-align: top; font-size: 13px;\"\u003e\n            \u003cstrong\u003e🍀 Protéines Hydrolysées de Blé\u003c\/strong\u003e\u003cbr\u003e\n            \u003cspan style=\"font-size: 11px; color: #666;\"\u003eExcellent effet antistatique et filmant — sans graisser le poil. Ordonne les manteaux légers et fins, évite l'effet \"volant\" sans alourdir ni tacher.\u003c\/span\u003e\n          \u003c\/td\u003e\n          \u003ctd style=\"border: none; background: transparent;\"\u003e\u003c\/td\u003e\n        \u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 4 : PROTOCOLES --\u003e\n  \u003cdiv style=\"padding: 30px 20px; background-color: #ffffff;\"\u003e\n    \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eProtocoles \u0026amp; Suggestions d'utilisations\u003c\/span\u003e\n\n    \u003cdiv style=\"margin-bottom: 15px; padding: 12px 15px; background: #f6f6f6; border: 1px solid #e5e5e5; font-size: 13px; font-weight: 600;\"\u003e\n      💡 Mode d'emploi de base : vaporiser à \u003cstrong\u003e20–30 cm\u003c\/strong\u003e du poil, puis brosser ou peigner.\n    \u003c\/div\u003e\n\n    \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e\n      \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\n        \u003cspan\u003eExemple 1 🔥 Brossage quotidien entre les bains\u003c\/span\u003e\n        \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDÉROULER ▼\u003c\/span\u003e\n      \u003c\/summary\u003e\n      \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e\n        Aqua Beauty est \u003cstrong\u003ele compagnon idéal des brossages entre les bains\u003c\/strong\u003e. Au quotidien, vaporisez sur le manteau sec ou légèrement humidifié, à 20–30 cm.\u003cbr\u003e\n        Brossez section par section. Le poil se lisse, se détend et retrouve son éclat naturel sans aucun rinçage. Résultat immédiat, manipulation rapide.\u003cbr\u003e\u003cbr\u003e\n        \u003cstrong\u003e💡 Finition franges Spaniel :\u003c\/strong\u003e vaporisez directement sur les franges et peignez pour les modeler et les définir — touche finale impeccable avant une exposition.\n      \u003c\/div\u003e\n    \u003c\/details\u003e\n\n    \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e\n      \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\n        \u003cspan\u003eExemple 2 🔥 Démêlage à sec — nœuds \u0026amp; fourrures accrochantes\u003c\/span\u003e\n        \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDÉROULER ▼\u003c\/span\u003e\n      \u003c\/summary\u003e\n      \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e\n        Sur les zones à nœuds ou lorsque le poil accroche en début de séchage :\u003cbr\u003e\n        1. Vaporisez Aqua Beauty directement sur la zone concernée, à 20–30 cm.\u003cbr\u003e\n        2. Laissez pénétrer quelques secondes.\u003cbr\u003e\n        3. Démêlez à la main ou au peigne, puis finissez au brosse. Le poil devient \u003cstrong\u003eglissant et détendu\u003c\/strong\u003e, le démêlage s'effectue sans douleur ni casse.\n      \u003c\/div\u003e\n    \u003c\/details\u003e\n\n    \u003cdetails style=\"border: 1px solid #e5e5e5; background: #fff; margin-bottom: 10px;\"\u003e\n      \u003csummary style=\"padding: 15px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; background-color: #fafafa; font-size: 14px;\"\u003e\n        \u003cspan\u003eExemple 3 🔥 Finition après bain — séchage \u0026amp; brushing\u003c\/span\u003e\n        \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDÉROULER ▼\u003c\/span\u003e\n      \u003c\/summary\u003e\n      \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.8;\"\u003e\n        Aqua Beauty s'intègre parfaitement comme \u003cstrong\u003eétape de finition après le bain\u003c\/strong\u003e, en complément de l'Hydrating Cream ou du Bio Energy :\u003cbr\u003e\n        1. Une fois le poil partiellement séché, vaporisez Aqua Beauty sur l'ensemble du manteau.\u003cbr\u003e\n        2. Brossez section par section en continuant le séchage au sèche-cheveux.\u003cbr\u003e\n        Le poil se lisse, l'électricité statique disparaît et le brushing final est nettement facilité — résultat professionnel garanti.\n      \u003c\/div\u003e\n    \u003c\/details\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 5 : ASSOCIATIONS \u0026 RACES --\u003e\n  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\u003e\n    \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 15px; display: block;\"\u003eAssociations Recommandées \u0026amp; Races\u003c\/span\u003e\n\n    \u003cp style=\"font-size: 13px; margin-bottom: 15px;\"\u003eToute la gamme Special One est compatible avec Aqua Beauty. Nos alliances préférées :\u003c\/p\u003e\n    \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003e\n      🤝 \u003cstrong\u003eHydrating Cream \u0026amp; Bio Energy Plus\u003c\/strong\u003e en après-shampoing — synergie parfaite conditioning + lissage\n    \u003c\/p\u003e\n\n    \u003ctable style=\"width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 5px;\"\u003e\n      \u003ctbody\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ \u003cstrong\u003eToutes les races, sans exception\u003c\/strong\u003e — ce produit s'adapte à tous les types de manteaux.\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ \u003cstrong\u003eMaltais\u003c\/strong\u003e — poil fin, électrostatique, sujet aux nœuds et aux taches d'huile sur robe blanche : Aqua Beauty a précisément été conçu pour répondre à ces contraintes. Le \"conditionneur des Maltais\".\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Fourrures soyeuses et longues (Yorkshire, Afghans, Cockers, Setters) — lissage et brillance remarquables.\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Caniches — allège et ordonne le manteau sans le friser (à la différence d'Absolute 4Poodle, qui lui est dédié au volume).\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Fourrures doubles (Bergers, Golden, Spitz) — démêlage facilité entre les bains.\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\u003ctd style=\"padding: 10px 0;\"\u003e✔️ Chiens d'exposition — protection renforcée des manteaux très sollicités, fini impeccable.\u003c\/td\u003e\u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n\n    \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e\n      \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodégradable +90% | Sans Paraben | Non testé sur les animaux | PEHD02 Recyclable\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"250ml","offer_id":48523070013785,"sku":"WAQ-AQBE250 (30)","price":44.0,"currency_code":"EUR","in_stock":true},{"title":"1 litro","offer_id":57210605470041,"sku":"(17)","price":103.5,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/eleven_3.png?v=1771967180"},{"product_id":"villanelle-special-one-masque-apres-shampoing","title":"VILLANELLE, Crema Ultra-Desenredante \u0026 Secado Rápido","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\u003eVILLANELLE\u003c\/strong\u003e es el nuevo tratamiento \u0026quot;Ultra-Detangling\u0026quot; de Special One. Diseñado para disolver incluso los nudos más difíciles, reduce hasta \u003cstrong\u003e40% de tiempo de secado\u003c\/strong\u003e a la vez que protege el cabello del estrés térmico.\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;\"\u003e¿A quién va dirigido este producto?\u003c\/span\u003e  \u003cp style=\"margin-bottom: 15px; font-size: 14px;\"\u003e¡Imprescindible para la eficiencia y el ahorro de tiempo! Es el producto ideal para desenredar el cabello de forma compleja y eliminar el pelo muerto en grandes cantidades.\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✅ Peluqueros\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Ganaderos\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ Individuos\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✅ Competidores\u003c\/td\u003e  \u003ctd style=\"border: 1px solid #e5e5e5; padding: 10px 5px; text-align: center; background: #fff; font-size: 11px; white-space: nowrap;\"\u003e✅ adiestradores\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!-- BLOQUEO DE RADAR: DIAGRAMA COSMOLÓGICO --\u003e  \u003cdiv style=\"padding: 30px 20px; background-color: #f6f6f6;\"\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: 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;\"\u003eDiagrama cosmético de Villanelle\u003c\/span\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 {\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  \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 = {\n      criteria: [\n        { label: \"Hydratation\",  value: 5 },\n        { label: \"Brillance\",    value: 4 },\n        { label: \"Soin peau\",    value: 3 },\n        { label: \"Volume\",       value: 4 },\n        { label: \"Démêlant\",     value: 5 }\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;\"\u003ePericia \u0026amp; Resultados\u003c\/span\u003e  \u003cp style=\"font-size: 14px;\"\u003eGracias a \u003cstrong\u003eactivos volátiles innovadores\u003c\/strong\u003e,  Villanelle absorbe el exceso de humedad para favorecer su rápida evaporación, limitando así la exposición del cabello al calor del secador.\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\u003eDesenredante exprés:\u003c\/strong\u003e Penetra y disuelve los nudos sin causar dolor.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eSecado rápido:\u003c\/strong\u003e Tecnología exclusiva de aceleración del secado.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eAntimuda:\u003c\/strong\u003e Ideal para protocolos de eliminación de vello muerto.\u003c\/li\u003e  \u003cli style=\"margin-bottom: 8px;\"\u003e✅  \u003cstrong\u003eTextura perfecta:\u003c\/strong\u003e Una textura rica que deja el cabello sedoso y ligero.\u003c\/li\u003e  \u003cli\u003e✅  \u003cstrong\u003eVitalidad:\u003c\/strong\u003e Fortalece la fibra y protege contra las agresiones externas.\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;\"\u003eSinergia de ingredientes activos naturales\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUna fórmula de alta calidad que combina una nutrición intensa con una ligereza absoluta.\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🍀 Manteca de karité\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eNutre intensamente, proporciona suavidad y una textura penetrante.\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🍀 Aceite de algodón orgánico\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eVolumen, flexibilidad y protección antioxidante (vitamina E).\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🍀 Provitamina B5\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eHidrata profundamente y revitaliza las fibras elásticas.\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🍀 Zedoario asiático\u003c\/strong\u003e\u003cbr\u003e\u003cspan style=\"font-size: 11px; color: #666;\"\u003eUn pariente antiguo de la cúrcuma \u003cem\u003e(Curcuma Zedoaria)\u003c\/em\u003e.  Su aceite esencial purifica y tonifica el cabello.\u003c\/span\u003e  \u003c\/td\u003e  \u003c\/tr\u003e  \u003c\/tbody\u003e  \u003c\/table\u003e  \u003c!-- INSERTO DE NARRACIÓN DE ZEDOARY --\u003e  \u003cdiv style=\"margin-top: 25px; padding: 22px 24px; background: #fff; border-left: 3px solid #1a1a1a;\"\u003e  \u003cspan style=\"font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #999; margin-bottom: 12px; display: block;\"\u003e🌺 El secreto de Villanelle\u003c\/span\u003e  \u003cp style=\"font-size: 14px; margin: 0 0 10px 0;\"\u003e\u003cstrong\u003eZedoaria, un tesoro botánico de las tradiciones ayurvédicas.\u003c\/strong\u003e\u003c\/p\u003e  \u003cp style=\"font-size: 13px; margin: 0; color: #444; line-height: 1.65;\"\u003eUna raíz dorada originaria de los bosques de India e Indonesia, la \u003cstrong\u003eZedoario\u003c\/strong\u003e  \u003cem\u003e(Curcuma Zedoaria)\u003c\/em\u003e Se ha utilizado durante más de 2000 años en la medicina ayurvédica por sus propiedades purificadoras y regeneradoras. Más rara y preciosa que su famosa prima la cúrcuma, se la apoda la \u003cem\u003e\u0026quot;Cúrcuma blanca de los rajás\u0026quot;\u003c\/em\u003e.\u003cbr\u003e\u003c\/p\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;\"\u003eProtocolos \u0026amp; Sugerencias de uso\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\u003eEjemplo 1 🔥 desenredado por choque \u0026amp; Secado récord\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003eDespués del champú, sobre el cabello secado con toalla:\u003cbr\u003e1. Diluir \u003cstrong\u003e1 cucharada\u003c\/strong\u003e en 1 litro de agua tibia.\u003cbr\u003e2. Vierta la emulsión sobre la capa y deje que actúe. \u003cstrong\u003e5 minutos\u003c\/strong\u003e.\u003cbr\u003e3. Enjuagar suavemente. El efecto acelerador del secado se activa inmediatamente.\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\u003eEjemplo 2 🔥 Tratamiento de emergencia (nudos) \u0026amp; Muda)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003ePara áreas de tacto suave o \u003cstrong\u003ela eliminación del pelo muerto\u003c\/strong\u003e :\u003cbr\u003eAplique una pequeña cantidad de crema pura directamente sobre los nudos o mechones sueltos. Masajee para que la textura suave penetre. Deje actuar durante 5 minutos, cepille si es necesario y luego enjuague bien.\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\u003eEjemplo 3 🔥 Integración de potenciadores (champú\/mascarilla)\u003c\/span\u003e  \u003cspan style=\"font-size: 10px; color: #888;\"\u003eDESPLÁCESE HACIA ABAJO ▼\u003c\/span\u003e\u003c\/summary\u003e  \u003cdiv style=\"padding: 15px; border-top: 1px solid #eee; font-size: 13px; line-height: 1.5;\"\u003ePara enriquecer tu rutina de cuidado del cabello: agrega una cucharada de Villanelle directamente a tu mezcla de champú favorita o a tu \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e Para lograr un efecto ultradesenredante y una suavidad extrema desde el primer paso.\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🛠️ CÓMO PREPARAR LA CREMA CORRECTAMENTE:\u003c\/span\u003e  \u003cdiv style=\"font-size: 13px; line-height: 1.8;\"\u003e1️⃣ Toma una cucharada de crema.\u003cbr\u003e2️⃣ Agregar 1 pulsación de\u003cstrong\u003eAceites de los 4 elementos\u003c\/strong\u003e (si hay nodos residuales).\u003cbr\u003e3️⃣ Añade agua \u003cstrong\u003ecaliente\u003c\/strong\u003e (aproximadamente 5 cm) para evitar grumos.\u003cbr\u003e4️⃣ Mezclar enérgicamente (con batidor de varillas, batidora o agitando con fuerza).\u003cbr\u003e5️⃣ Agregue 2 pulsaciones de \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e (Opcional).\u003cbr\u003e6️⃣ Añade agua tibia y mezcla bien. Aplica, no enjuagues (o enjuaga muy poco).\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;\"\u003eAsociaciones recomendadas \u0026amp; carreras\u003c\/span\u003e  \u003cp style=\"font-size: 13px; margin-bottom: 10px;\"\u003e🤝 Sinergia perfecta con: \u003cstrong\u003eAquarosa Pro\/4Poodle\u003c\/strong\u003e (Champiñones) y \u003cstrong\u003eBioenergía Plus\u003c\/strong\u003e (Embalaje).\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✔️ Pelaje doble (Pastores, Golden Retriever, Spitz, Samoyedos): ahorra tiempo de secado.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Pelaje rizado (Caniches, Bichones, Kerry Blue): flexibilidad y volumen.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Gatos de pelo largo (Maine Coon, Persas): una valiosa ayuda para desenredar el pelo.\u003c\/td\u003e  \u003c\/tr\u003e  \u003ctr\u003e  \u003ctd style=\"padding: 10px 0; border-bottom: 1px solid #eee;\"\u003e✔️ Pelaje sedoso (Yorkshire, Shih-Tzu, Afganos): Es esencial desenredarlo.\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% | Sin SLES, sin parabenos | Botella de HDPE02 reciclable\u003c\/p\u003e  \u003c\/div\u003e  \u003c\/div\u003e  \u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"500 mL","offer_id":55736566677849,"sku":"(49)","price":69.0,"currency_code":"EUR","in_stock":true},{"title":"3 L","offer_id":57730517336409,"sku":"(158)","price":269.1,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/34c8a1cc-3866-467f-803e-43945630c61f.jpg?v=1763633186"},{"product_id":"peach-blossom-edition-limitee-ete-2026","title":"PEACH BLOSSOM - Edition Limitée Eté 2026 format 5L","description":"\u003c!-- ============================================\n     SYSTÈME DE DESIGN — Affinage visuel\n     ============================================ --\u003e\n\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\n\u003cdiv style=\"max-width: 1000px; margin: 0 auto; color: #1a1a1a; line-height: 1.6; font-family: inherit;\"\u003e\n\n  \u003c!-- BLOC 1 : INTRO --\u003e\n  \u003cdiv style=\"padding: 20px 10px; background-color: #ffffff;\"\u003e\n    \u003cdiv style=\"font-size: 1.1em; margin-bottom: 14px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e\n      \u003cstrong\u003ePEACH BLOSSOM — Summer Edition 2026\u003c\/strong\u003e est le shampoing de la saison : \u003cstrong\u003evolume maximal et douceur maximale\u003c\/strong\u003e. Le poil est ultra nourri tout en étant très volumineux, sans nœuds ni sécheresse — là où les autres shampoings volume échouent.\n    \u003c\/div\u003e\n    \u003cdiv style=\"font-size: 1.1em; margin-bottom: 14px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e\n      Idéal en salon comme en entretien hebdomadaire des chiens d'exposition, et parfait pour tous les poils doubles, frisés et complexes.\n    \u003c\/div\u003e\n    \u003cdiv style=\"font-size: 1.1em; margin-bottom: 14px; border-left: 3px solid #1d1d1f; padding-left: 15px;\"\u003e\n      Haute performance (\u003cstrong\u003e1:30\u003c\/strong\u003e), \u003cstrong\u003eSLES \u0026amp; DEA FREE\u003c\/strong\u003e. Sa formule évoluée aux extraits de pêche, abricot et coton transforme chaque lavage en un soin complet : nettoie avec précision, restitue volume et légèreté, améliore la peignabilité et donne au manteau une douceur visiblement saine et naturelle. \u003cstrong\u003eUn seul geste professionnel. Un résultat qu'on n'oublie pas.\u003c\/strong\u003e\n    \u003c\/div\u003e\n    \u003cdiv style=\"margin: 22px 0 10px; padding: 14px 18px; background: #fdf6ef; border: 1px solid #f0d9bf; border-radius: 12px; font-size: 13px; line-height: 1.55; color: #1d1d1f;\"\u003e🍑 \u003cstrong\u003eÉdition limitée\u003c\/strong\u003e — disponible uniquement d'avril à septembre 2026. Cette formule ne sera ni reformulée, ni réintroduite : elle disparaîtra avec la saison. Ceux qui en tombent amoureux font des stocks.\u003c\/div\u003e\n\n    \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;\"\u003ePour qui est fait ce produit ?\u003c\/h2\u003e\n    \u003cp style=\"margin-bottom: 20px; font-size: 14px;\"\u003ePensé pour le travail quotidien en salon — journées intenses, pelages imparfaits, exigences élevées. Mais tout le monde y trouvera un réel intérêt, particulièrement pour les \u003cstrong\u003ecoupes ciseaux\u003c\/strong\u003e et les \u003cstrong\u003epelages post-hiver\u003c\/strong\u003e.\u003c\/p\u003e\n\n    \u003cdiv class=\"aqr-audience\"\u003e\n      \u003cdiv class=\"aqr-audience-grid\"\u003e\n        \u003cdiv class=\"aqr-audience-card\"\u003e\n          \u003cdiv class=\"aqr-audience-icon\"\u003e\n            \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\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-audience-name\"\u003eToiletteurs\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-audience-card\"\u003e\n          \u003cdiv class=\"aqr-audience-icon\"\u003e\n            \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\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-audience-name\"\u003eÉleveurs\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-audience-card\"\u003e\n          \u003cdiv class=\"aqr-audience-icon\"\u003e\n            \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\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-audience-name\"\u003eParticuliers\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-audience-card\"\u003e\n          \u003cdiv class=\"aqr-audience-icon\"\u003e\n            \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\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-audience-name\"\u003eCompétiteurs\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-audience-card\"\u003e\n          \u003cdiv class=\"aqr-audience-icon\"\u003e\n            \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\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-audience-name\"\u003eHandlers\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \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\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 2 : EXPERTISE \u0026 RÉSULTATS --\u003e\n  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #ffffff;\"\u003e\n    \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; Résultats\u003c\/h2\u003e\n    \u003cp style=\"font-size: 14px; margin-bottom: 15px;\"\u003eAprès les mois de froid, d'humidité et de stress cutané, les pelages arrivent au salon avec une demande silencieuse : nettoyage en profondeur, respect, légèreté. Peach Blossom a été formulé pour \u003cstrong\u003eréactiver le manteau, restituer de l'aérien, de l'élasticité et du volume\u003c\/strong\u003e — sans agresser. Un geste unique qui simplifie le travail et améliore le résultat final. Convient parfaitement aux bains fréquents et aux manteaux stressés.\u003c\/p\u003e\n    \u003cdiv class=\"aqr-benefits\" style=\"margin-top: 20px;\"\u003e\n      \u003cdiv class=\"aqr-benefits-grid\"\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 0;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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 L21 8 L12 13 L3 8 Z\"\u003e\u003c\/path\u003e\u003cpath d=\"M3 13 L12 18 L21 13\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003eVolume + Douceur en une étape\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eL'équilibre rare — volume de coupe sans texture rêche, douceur sans perdre le contrôle.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 1;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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=\"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\u003c\/svg\u003e\u003c\/div\u003e\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003ePoil travaillable\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eBase parfaite, propre, soulevée, prête à être sculptée — idéal coupe aux ciseaux.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 2;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003ePeau sensible\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eSLES \u0026amp; DEA FREE — nettoyage efficace et délicat, parfait pour les peaux sensibles et les bains fréquents.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 3;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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 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\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003ePeignabilité améliorée\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eLe manteau ressort aérien, gérable et incroyablement facile à travailler.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 4;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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\u003cpath d=\"M8.5 15.5 L15.5 8.5\"\u003e\u003c\/path\u003e\u003ccircle cx=\"9.5\" cy=\"9.5\" r=\"1.3\" fill=\"currentColor\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"14.5\" cy=\"14.5\" r=\"1.3\" fill=\"currentColor\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/div\u003e\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003eUltra économique\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eDilution 1\/30 — haute performance, rentabilité maximale en salon. Jusqu'à 150 L de produit prêt à l'emploi.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 5;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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\u003cpath d=\"M8 12 L11 15 L16 9\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003eEffet all-in\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eNettoyage + conditioning en un seul geste professionnel : moins d'étapes, moins de corrections.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-benefit-card\" style=\"--i: 6;\"\u003e\n          \u003cdiv class=\"aqr-benefit-corner\"\u003e\u003c\/div\u003e\n          \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 2 L12 5 M12 19 L12 22 M2 12 L5 12 M19 12 L22 12 M5 5 L7 7 M17 17 L19 19 M19 5 L17 7 M7 17 L5 19\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/div\u003e\n          \u003cdiv class=\"aqr-benefit-content\"\u003e\n            \u003cdiv class=\"aqr-benefit-title\"\u003eParfum solaire \u0026amp; persistant\u003c\/div\u003e\n            \u003cdiv class=\"aqr-benefit-desc\"\u003eUne note raffinée et ensoleillée qui reste dans la mémoire du client — et de son chien.\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \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\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC RADAR (deplace sous Expertise) --\u003e\n  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e\n    \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;\"\u003eMieux comprendre les actions de Peach Blossom\u003c\/h2\u003e\n    \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eLe détail de ses performances cosmétologiques, note par note.\u003c\/p\u003e\n    \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\n      \u003cdiv style=\"padding:16px 28px;overflow:visible;\"\u003e\n        \n        \u003cdiv id=\"so-radar-area\" style=\"position:relative;width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;\"\u003e\n          \u003csvg id=\"so-radar-svg\" style=\"width:100%;height:100%;overflow:visible;\" viewbox=\"0 0 360 360\"\u003e\u003c\/svg\u003e\n        \u003c\/div\u003e\n        \u003cdiv id=\"so-radar-footer\"\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \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\n\n  \u003cscript\u003e\n  (function() {\n    var PRODUCT = { criteria: [ { label: \"Volume\", value: 5 }, { label: \"Hydratation\", value: 4 }, { label: \"Douceur\", value: 5 }, { label: \"Peau sensible\", 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\n\n  \u003c!-- BLOC 3 : COMPOSITION (CARTOGRAPHIE JS actifs Peach Blossom - fiabilisee) --\u003e\n  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #fff;\"\u003e\n    \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 de Peach Blossom : actifs naturels \u0026amp; action ciblée\u003c\/h2\u003e\n    \u003cp style=\"font-size: 13px; margin-bottom: 20px;\"\u003eUne formulation concentrée aux extraits de \u003cstrong\u003epêche, abricot et coton\u003c\/strong\u003e — sans SLES, sans DEA, sans colorants. Chaque actif et son action ciblée sur la peau et le poil.\u003c\/p\u003e\n\n    \u003c!-- CARTOGRAPHIE --\u003e\n    \u003cdiv id=\"aqr-carto\" style=\"background:#fff;border:1px solid #e5e5e5;padding:18px;\"\u003e\n      \u003cdiv class=\"aqr-grid\"\u003e\n\n        \u003cdiv class=\"aqr-col-list\"\u003e\n          \u003cul class=\"aqr-list\" id=\"aqrList\"\u003e\u003c\/ul\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"aqr-col-schema\"\u003e\n          \u003cdiv class=\"aqr-schema-wrap\" id=\"aqrSchemaWrap\"\u003e\n            \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 Peach Blossom\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/schema-peau-poil.webp?v=1779972667\"\u003e\n            \u003csvg class=\"aqr-overlay\" id=\"aqrOverlay\" preserveaspectratio=\"none\" viewbox=\"0 0 100 225\"\u003e\u003c\/svg\u003e\n            \u003cdiv class=\"aqr-connectors\" id=\"aqrConnectors\"\u003e\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"aqr-col-info\"\u003e\n          \u003cdiv class=\"aqr-info\" id=\"aqrInfo\"\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n    \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\n\n    \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:'vitamines', label:'Vitamines A · C · E', latin:'Pêche \u0026 Abricot', family:'bio',\n          desc:\"Trio antioxydant majeur des extraits de pêche et d’abricot : provitamine A (β-carotène), vitamine C et vitamine E neutralisent les radicaux libres et soutiennent l’éclat naturel du pelage.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Protection antioxydante\", benefit:\"Préservent la fibre du stress oxydatif (UV, pollution) et entretiennent sa vitalité et son mouvement.\" },\n            { anchor:'epiderme', action:\"Éclat \u0026 luminosité\", benefit:\"La vitamine C ravive l’éclat tandis que la vitamine E protège le film cutané superficiel.\" }\n          ]\n        },\n        {\n          id:'polysaccharides', label:'Polysaccharides de fruit', latin:'Sucres naturels de pulpe', family:'aqua',\n          desc:\"Sucres végétaux (polysaccharides) issus de la pulpe de pêche et d’abricot, reconnus pour leurs propriétés humectantes : ils captent et retiennent l’eau au cœur de la fibre.\",\n          targets: [\n            { anchor:'cuticule', action:\"Rétention d’hydratation\", benefit:\"Forment un voile hydrophile qui maintient l’eau dans la fibre — souplesse, légèreté et mouvement.\" },\n            { anchor:'film_hydro', action:\"Confort hydrolipidique\", benefit:\"Renforcent la teneur en eau de la surface cutanée sans jamais l’alourdir.\" }\n          ]\n        },\n        {\n          id:'acidesgras', label:'Acides gras d’abricot', latin:'Acides oléique \u0026 linoléique', family:'botanic',\n          desc:\"L’amande d’abricot est riche en acides gras insaturés (oléique, linoléique), émollients et nourrissants, proches des lipides naturels du pelage.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Nutrition \u0026 mouvement\", benefit:\"Nourrissent la fibre sans l’alourdir : le poil retrouve présence, mouvement et matière travaillable.\" },\n            { anchor:'epiderme', action:\"Émollience\", benefit:\"Adoucissent et assouplissent la couche superficielle de la peau.\" }\n          ]\n        },\n        {\n          id:'proteines', label:'Protéines \u0026 acides aminés de coton', latin:'Gossypium herbaceum', family:'cond',\n          desc:\"La graine de coton apporte protéines et acides aminés ayant une affinité naturelle avec la kératine du poil : ils se fixent là où la fibre est fragilisée.\",\n          targets: [\n            { anchor:'cuticule', action:\"Lissage de la cuticule\", benefit:\"Comblent les écailles soulevées : peignabilité nettement améliorée et toucher lisse.\" },\n            { anchor:'tige_poil', action:\"Renfort de la fibre\", benefit:\"Se lient à la kératine pour discipliner et renforcer le poil.\" }\n          ]\n        },\n        {\n          id:'linoleique', label:'Acide linoléique de coton', latin:'Oméga-6 (huile de coton)', family:'cond',\n          desc:\"L’huile de coton est l’une des plus riches en acide linoléique (oméga-6), lipide clé de réparation de la barrière cutanée et capillaire.\",\n          targets: [\n            { anchor:'film_hydro', action:\"Restauration lipidique\", benefit:\"Recompose le film protecteur des manteaux stressés ou déshydratés par l’hiver.\" },\n            { anchor:'epiderme', action:\"Apaisement\", benefit:\"Soutient la barrière cutanée et limite la perte en eau.\" }\n          ]\n        },\n        {\n          id:'filmcoton', label:'Film conditionnant de coton', latin:'Le grand équilibreur', family:'cond',\n          desc:\"Le coton est le « grand équilibreur » : il dépose un film conditionnant léger et respirant qui met de l’ordre sans alourdir.\",\n          targets: [\n            { anchor:'tige_poil', action:\"Douceur \u0026 anti-statique\", benefit:\"Discipline le poil et apporte douceur, ordre et un fini élégant, prêt pour la coupe.\" },\n            { anchor:'cuticule', action:\"Effet conditionnant\", benefit:\"Lisse la surface pour un manteau brillant, fluide et facile à travailler.\" }\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\n\n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 4 : PROTOCOLES --\u003e\n  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\n    \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;\"\u003eProtocoles \u0026amp; Suggestions d'utilisations\u003c\/h2\u003e\n    \u003c!-- DILUTION P4 : 3 cartes sobres (Ratio · Rendement · Équivalences animées) --\u003e\n    \u003cdiv class=\"aqr-dilution\" style=\"margin-bottom: 12px;\"\u003e\n      \u003cdiv class=\"aqr-dilution-eyebrow\"\u003eDilution de référence\u003c\/div\u003e\n\n      \u003cdiv class=\"aqr-dilution-grid\"\u003e\n\n        \u003c!-- CARTE 1 : Ratio --\u003e\n        \u003cdiv class=\"aqr-dilution-cell\"\u003e\n          \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRatio\u003c\/div\u003e\n          \u003cdiv class=\"aqr-dilution-cell-value\"\u003e1\u003cspan class=\"aqr-dilution-slash\"\u003e\/\u003c\/span\u003e30\u003c\/div\u003e\n          \u003cdiv class=\"aqr-dilution-cell-note\"\u003eUne part de shampoing\u003cbr\u003epour 30 parts d'eau\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003c!-- CARTE 2 : Rendement --\u003e\n        \u003cdiv class=\"aqr-dilution-cell\"\u003e\n          \u003cdiv class=\"aqr-dilution-cell-label\"\u003eRendement\u003c\/div\u003e\n          \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e\n            \u003cdiv class=\"aqr-dilution-rend-row\"\u003e\n\u003cstrong\u003e250 mL\u003c\/strong\u003e \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 7,5 L\u003c\/div\u003e\n            \u003cdiv class=\"aqr-dilution-rend-row\"\u003e\n\u003cstrong\u003e1 L\u003c\/strong\u003e \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 30 L\u003c\/div\u003e\n            \u003cdiv class=\"aqr-dilution-rend-row\"\u003e\n\u003cstrong\u003e5 L\u003c\/strong\u003e \u003cspan class=\"aqr-dilution-rend-arrow\"\u003e→\u003c\/span\u003e 150 L\u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"aqr-dilution-cell-note\"\u003eprêts à l'emploi\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003c!-- CARTE 3 : Équivalences animées --\u003e\n        \u003cdiv class=\"aqr-dilution-cell\"\u003e\n          \u003cdiv class=\"aqr-dilution-cell-label\"\u003ePour \u003cspan id=\"aqrCycleTarget\" class=\"aqr-dilution-cycle-target\"\u003e750 mL\u003c\/span\u003e de produit fini\u003c\/div\u003e\n          \u003cdiv class=\"aqr-dilution-cell-rows\"\u003e\n            \u003cdiv class=\"aqr-dilution-eq-row\"\u003e\n\u003cstrong id=\"aqrCycleMl\"\u003e25\u003c\/strong\u003e mL \u003cspan\u003een volume\u003c\/span\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"aqr-dilution-eq-row\"\u003e\n\u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e \u003cstrong id=\"aqrCycleG\"\u003e25\u003c\/strong\u003e g \u003cspan\u003een poids\u003c\/span\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"aqr-dilution-eq-row\"\u003e\n\u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e \u003cstrong id=\"aqrCycleSpoon\"\u003e1,5\u003c\/strong\u003e \u003cspan id=\"aqrCycleSpoonLabel\"\u003ecuillère à soupe\u003c\/span\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"aqr-dilution-eq-row\"\u003e\n\u003cspan class=\"aqr-dilution-eq-eq\"\u003e=\u003c\/span\u003e \u003cstrong id=\"aqrCyclePump\"\u003e1\u003c\/strong\u003e \u003cspan id=\"aqrCyclePumpLabel\"\u003epression de pompe\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \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\n\n    \u003cscript\u003e\n    (function(){\n      \/\/ Animation: cycle entre 750 mL \/ 1,5 L \/ 3 L (dilution 1\/30)\n      var cycles = [\n        { target: '750 mL', ml: '25',  g: '25',  spoon: '1,5', pump: '1' },\n        { target: '1,5 L',  ml: '50',  g: '50',  spoon: '3',   pump: '2' },\n        { target: '3 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\n      \u003cdetails class=\"aqr-proto-acc\" open\u003e\n        \u003csummary class=\"aqr-proto-summary\"\u003e\n          \u003cspan class=\"aqr-proto-title\"\u003eBain salon quotidien — volume \u0026amp; coupe ciseaux\u003c\/span\u003e\n          \u003cspan class=\"aqr-proto-plus\"\u003e\n            \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\n          \u003c\/span\u003e\n        \u003c\/summary\u003e\n        \u003cdiv class=\"aqr-proto-content\"\u003e\n          \u003cp class=\"aqr-proto-subtitle\"\u003eLe protocole de référence pour les journées chargées en salon\u003c\/p\u003e\n          \u003col class=\"aqr-proto-steps\"\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eDilution \u0026amp; application\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eDiluez Peach Blossom à \u003cstrong\u003e1\/30\u003c\/strong\u003e. Appliquez sur le poil mouillé, massez délicatement. Rincez.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eRenouvellement\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eRenouvelez le shampoing si nécessaire.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eFinition\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalisez avec le \u003cstrong\u003econditionneur adapté au type de pelage\u003c\/strong\u003e pour fermer les écailles et sublimer le résultat — \u003cstrong\u003eVillanelle\u003c\/strong\u003e est particulièrement adapté.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eRésultat\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eLe poil est \u003cstrong\u003evolumineux, propre, conditionné et prêt pour la coupe\u003c\/strong\u003e — avec moins d'étapes et moins de corrections.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n          \u003c\/ol\u003e\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n      \u003cdetails class=\"aqr-proto-acc\"\u003e\n        \u003csummary class=\"aqr-proto-summary\"\u003e\n          \u003cspan class=\"aqr-proto-title\"\u003ePelages post-hiver — réactivation \u0026amp; légèreté retrouvée\u003c\/span\u003e\n          \u003cspan class=\"aqr-proto-plus\"\u003e\n            \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\n          \u003c\/span\u003e\n        \u003c\/summary\u003e\n        \u003cdiv class=\"aqr-proto-content\"\u003e\n          \u003cp class=\"aqr-proto-subtitle\"\u003ePour les manteaux fatigués, alourdis ou déshydratés par les mois froids\u003c\/p\u003e\n          \u003col class=\"aqr-proto-steps\"\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e01\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eMasque pré-bain\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003ePréparez avec le masque pré-bain \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e pour amplifier l'action dès la phase initiale.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e02\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003ePeach Blossom sur masque\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eAppliquez Peach Blossom dilué à \u003cstrong\u003e1\/30\u003c\/strong\u003e directement sur le masque, sans rinçage intermédiaire. Massez. Rincez.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e03\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eSecond shampoing enrichi\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eRenouvelez en ajoutant une petite cuillère à café de \u003cstrong\u003eVillanelle\u003c\/strong\u003e dans le second shampoing.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e04\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eFinition\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eFinalisez avec le conditionneur \u003cstrong\u003eVillanelle\u003c\/strong\u003e, que vous rincerez bien.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli class=\"aqr-proto-step\"\u003e\n              \u003cspan class=\"aqr-proto-step-marker\"\u003e★\u003c\/span\u003e\n              \u003cdiv class=\"aqr-proto-step-body\"\u003e\n                \u003cdiv class=\"aqr-proto-step-title\"\u003eRésultat\u003c\/div\u003e\n                \u003cdiv class=\"aqr-proto-step-desc\"\u003eLe manteau retrouve aérien, élasticité et volume — comme si l'hiver n'avait jamais existé.\u003c\/div\u003e\n              \u003c\/div\u003e\n            \u003c\/li\u003e\n          \u003c\/ol\u003e\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \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\n    \n  \u003c\/div\u003e\n\n  \u003c!-- BLOC 5 : ASSOCIATIONS \u0026 RACES --\u003e\n  \u003cdiv style=\"padding: 12px 20px 14px; background-color: #f6f6f6;\"\u003e\n    \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;\"\u003eAssociations Recommandées \u0026amp; Races\u003c\/h2\u003e\n    \u003c!-- Peach Blossom au cœur + compléments modulaires Si... → Alors --\u003e\n    \u003cdiv class=\"aqr-assoc\"\u003e\n      \u003cp class=\"aqr-assoc-intro\"\u003eCompatible avec toute la gamme Special One. \u003cstrong\u003eNos alliances préférées :\u003c\/strong\u003e\u003c\/p\u003e\n\n      \u003cdiv class=\"aqr-assoc-rules\"\u003e\n        \u003cdiv class=\"aqr-assoc-rule\"\u003e\n          \u003cdiv class=\"aqr-assoc-if\"\u003e\n\u003cspan class=\"aqr-assoc-if-tag\"\u003eSI\u003c\/span\u003e \u003cspan\u003eun masque pré-bain est souhaité…\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"aqr-assoc-then\"\u003e\n\u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e \u003cstrong\u003eBio Energy Plus\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-assoc-rule\"\u003e\n          \u003cdiv class=\"aqr-assoc-if\"\u003e\n\u003cspan class=\"aqr-assoc-if-tag\"\u003eSI\u003c\/span\u003e \u003cspan\u003eune finition s'impose…\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"aqr-assoc-then\"\u003e\n\u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e \u003cstrong\u003eHydrating Cream · Villanelle\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"aqr-assoc-rule\"\u003e\n          \u003cdiv class=\"aqr-assoc-if\"\u003e\n\u003cspan class=\"aqr-assoc-if-tag\"\u003eSI\u003c\/span\u003e \u003cspan\u003eun effet volume est recherché…\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"aqr-assoc-then\"\u003e\n\u003cspan class=\"aqr-assoc-then-arrow\"\u003e→\u003c\/span\u003e \u003cstrong\u003eAbsolute 4Poodle · Style 360\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \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\n\n    \u003c!-- Races en pilules arrondies --\u003e\n    \u003ch3 style=\"font-size: 13px; font-weight: 600; color: #1a1a1a; margin: 0 0 12px;\"\u003eLà où Peach Blossom fait vraiment la différence :\u003c\/h3\u003e\n    \u003cdiv class=\"aqr-races-mosaic\"\u003e\n      \u003cspan class=\"aqr-race-tag\"\u003e🐺 Spitz, Samoyèdes \u0026amp; primitifs \u003cspan\u003e(volume, texture souple, zéro pesanteur)\u003c\/span\u003e\u003c\/span\u003e\n      \u003cspan class=\"aqr-race-tag\"\u003e🐩 Fourrures frisées \u003cspan\u003e(Caniches, Bichons Frisés)\u003c\/span\u003e\u003c\/span\u003e\n      \u003cspan class=\"aqr-race-tag\"\u003e🧸 Poils doubles complexes \u003cspan\u003e(Bouvier Bernois, Berger Australien, Terre-Neuve, Berger Allemand)\u003c\/span\u003e\u003c\/span\u003e\n      \u003cspan class=\"aqr-race-tag\"\u003e🌬️ Fourrures mi-longues \u003cspan\u003e(volume doux, sous contrôle)\u003c\/span\u003e\u003c\/span\u003e\n      \u003cspan class=\"aqr-race-tag\"\u003e✂️ Coupe ciseaux \u003cspan\u003e(base propre, soulevée, prête à sculpter)\u003c\/span\u003e\u003c\/span\u003e\n    \u003c\/div\u003e\n    \u003cp style=\"margin-top: 14px; font-size: 11px; color: #888; font-style: italic;\"\u003eListe non exhaustive — idéal pour toutes les fourrures recherchant volume et légèreté.\u003c\/p\u003e\n\n    \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\n\n    \u003cdiv style=\"margin-top: 30px; text-align: center; border-top: 1px solid #eee; padding-top: 20px;\"\u003e\n      \u003cp style=\"font-size: 11px; color: #888; text-transform: uppercase;\"\u003eBiodégradable +90% | Sans SLES, DEA, Paraben, Silicone | Non testé sur les animaux | PEHD02 Recyclable\u003c\/p\u003e\n      \u003cp style=\"font-size: 11px; color: #c0392b; font-weight: 600; margin-top: 8px; text-transform: uppercase;\"\u003e⏳ Édition limitée — disponible jusqu'au 31 août 2026 uniquement, dans la limite des stocks disponibles\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Endemik Sas","offers":[{"title":"Default Title","offer_id":57896607842649,"sku":"(447)","price":169.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6305\/9635\/files\/Peach_Blossom_Special_One.jpg?v=1778064993"}],"url":"https:\/\/petdesign.fr\/es\/collections\/les-cosmetiques-indispensables.oembed","provider":"Petdesign.fr","version":"1.0","type":"link"}