{"title":"collection Aquadjini","description":"\u003cbody\u003e\n\n\n  \u003cmeta charset=\"UTF-8\"\u003e\n  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n  \u003ctitle\u003eAquadjini – La pureté qui se remplit d'elle-même | emmewasser.ch\u003c\/title\u003e\n  \u003cmeta name=\"description\" content=\"Aquadjini : La carafe en verre auto-remplissante avec osmose inverse. Contrôlée intelligemment, pure médicalement, magnifiquement conçue. Pour la maison et le B2B.\"\u003e\n  \u003clink rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"\u003e\n  \u003clink rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin\u003e\n  \u003clink href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400\u0026amp;family=Inter:wght@300;400;500;600\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n  \u003cscript src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/gsap\/3.12.5\/gsap.min.js\"\u003e\u003c\/script\u003e\n  \u003cstyle\u003e\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n    :root {\n      --abyss:   #010818;\n      --deep:    #020f2a;\n      --ocean:   #031825;\n      --mid:     #02111f;\n      --bright:  #0ea5e9;\n      --cyan:    #38bdf8;\n      --ice:     #bae6fd;\n      --teal:    #06b6d4;\n      --aqua:    #22d3ee;\n    }\n    html { scroll-behavior: smooth; }\n    body { font-family: 'Inter', system-ui, sans-serif; background: var(--abyss); color: #fff; overflow-x: hidden; }\n\n    \/* ── HERO ── *\/\n    #hero { position: relative; height: 100vh; min-height: 600px; overflow: hidden; background: var(--abyss); }\n    #hero-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }\n    .hero-ui { position: relative; z-index: 10; height: 100%; display: flex; flex-direction: column; justify-content: space-between; padding: 2.5rem 3rem; }\n    .hero-label { color: rgba(186,230,253,0.65); font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.22em; font-weight: 500; line-height: 2; }\n    .hero-bottom { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; }\n    .hero-words { list-style: none; }\n    .hero-word {\n      display: block; margin-bottom: -0.05em;\n      font-family: 'Cormorant Garamond', serif;\n      font-size: clamp(3rem, 8.5vw, 8.5rem);\n      font-weight: 600; line-height: 0.95;\n      text-decoration: none; cursor: pointer;\n      background: linear-gradient(135deg, #fff 40%, #bae6fd);\n      -webkit-background-clip: text; background-clip: text; color: transparent;\n      transform-style: preserve-3d; perspective: 1000px;\n      transition: filter 0.4s ease;\n    }\n    .hero-word:hover { filter: brightness(1.3) saturate(1.5); }\n    .hero-right { text-align: right; max-width: 300px; flex-shrink: 0; }\n    .hero-kicker { font-size: 0.85rem; font-weight: 600; color: #fff; line-height: 1.55; margin-bottom: 0.35rem; }\n    .hero-copy { font-size: 0.78rem; color: rgba(186,230,253,0.55); line-height: 1.7; margin-bottom: 1.5rem; }\n    .hero-domain { font-size: 0.72rem; font-weight: 600; letter-spacing: 0.06em; background: linear-gradient(135deg, #38bdf8, #22d3ee); -webkit-background-clip: text; background-clip: text; color: transparent; margin-top: 0.75rem; display: block; }\n    .hero-fade { position: absolute; bottom: 0; left: 0; right: 0; height: 260px; background: linear-gradient(to bottom, transparent, var(--deep)); pointer-events: none; z-index: 5; }\n\n    \/* ── BUTTONS ── *\/\n    .btn { display: inline-block; padding: 0.75rem 1.75rem; text-decoration: none; font-size: 0.82rem; font-weight: 600; letter-spacing: 0.06em; border-radius: 2px; cursor: pointer; border: none; transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease; }\n    .btn-primary { background: linear-gradient(135deg, #0ea5e9, #06b6d4); color: #fff; }\n    .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(14,165,233,0.45); filter: brightness(1.1); }\n    .btn-outline { background: transparent; color: rgba(186,230,253,0.8); border: 1px solid rgba(56,189,248,0.3); }\n    .btn-outline:hover { border-color: rgba(56,189,248,0.7); background: rgba(56,189,248,0.08); color: var(--ice); }\n\n    \/* ── TRUST BAR ── *\/\n    #trust { background: linear-gradient(to bottom, var(--deep), var(--ocean)); padding: 2.5rem 2rem; }\n    .trust-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 1.75rem 3rem; max-width: 960px; margin: 0 auto; }\n    .trust-item { display: flex; align-items: center; gap: 0.55rem; font-size: 0.78rem; color: rgba(186,230,253,0.6); font-weight: 500; }\n    .trust-dot { width: 5px; height: 5px; border-radius: 50%; background: linear-gradient(135deg, #38bdf8, #06b6d4); flex-shrink: 0; }\n\n    \/* ── SHARED SECTION ── *\/\n    section { position: relative; }\n    .wrap { max-width: 1100px; margin: 0 auto; padding: 0 2rem; }\n    .eyebrow { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.25em; color: var(--cyan); font-weight: 600; margin-bottom: 0.9rem; }\n    h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(2rem, 4.5vw, 3.25rem); font-weight: 400; line-height: 1.15; color: #fff; margin-bottom: 1.5rem; }\n    h2 em { font-style: italic; color: var(--cyan); }\n\n    \/* ── PROBLEM ── *\/\n    #problem { background: linear-gradient(to bottom, var(--ocean), var(--mid)); padding: 7rem 0 8rem; }\n    .problem-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5rem; align-items: start; }\n    .problem-text p { font-size: 0.95rem; color: rgba(255,255,255,0.62); line-height: 1.85; margin-bottom: 1.15rem; }\n    .problem-text strong { color: rgba(186,230,253,0.88); }\n    .prob-list { list-style: none; margin: 1.5rem 0; }\n    .prob-list li { display: flex; align-items: flex-start; gap: 0.7rem; padding: 0.65rem 0; border-bottom: 1px solid rgba(255,255,255,0.05); color: rgba(255,255,255,0.55); font-size: 0.875rem; line-height: 1.5; }\n    .prob-list li::before { content: '—'; color: rgba(56,189,248,0.45); flex-shrink: 0; }\n    .problem-quote { margin-top: 2rem; padding: 1.5rem 1.5rem 1.5rem 1.75rem; border-left: 2px solid rgba(56,189,248,0.25); background: rgba(56,189,248,0.03); }\n    .problem-quote p { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; font-style: italic; color: rgba(186,230,253,0.65); line-height: 1.75; }\n    .stats-col { display: flex; flex-direction: column; gap: 1rem; }\n    .stat-card { background: rgba(56,189,248,0.05); border: 1px solid rgba(56,189,248,0.1); border-radius: 3px; padding: 1.5rem; }\n    .stat-num { font-family: 'Cormorant Garamond', serif; font-size: 2.5rem; font-weight: 300; color: var(--cyan); line-height: 1; margin-bottom: 0.3rem; }\n    .stat-label { font-size: 0.78rem; color: rgba(186,230,253,0.5); line-height: 1.6; }\n\n    \/* ── SOLUTION ── *\/\n    #solution { background: linear-gradient(to bottom, var(--mid), #011a2e); padding: 7rem 0 8rem; }\n    .solution-head { text-align: center; margin-bottom: 4rem; }\n    .solution-head p { color: rgba(255,255,255,0.45); font-size: 0.95rem; max-width: 580px; margin: 0 auto; line-height: 1.8; }\n    .features { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.25rem; }\n    .feat { background: rgba(255,255,255,0.025); border: 1px solid rgba(56,189,248,0.09); border-radius: 3px; padding: 2rem; transition: background 0.4s, border-color 0.4s, transform 0.3s; }\n    .feat:hover { background: rgba(56,189,248,0.055); border-color: rgba(56,189,248,0.22); transform: translateY(-3px); }\n    .feat-glyph { font-size: 1.3rem; margin-bottom: 1rem; opacity: 0.7; }\n    .feat-cat { font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.22em; color: var(--cyan); font-weight: 600; margin-bottom: 0.6rem; }\n    .feat-title { font-family: 'Cormorant Garamond', serif; font-size: 1.35rem; font-weight: 400; color: #fff; margin-bottom: 0.35rem; line-height: 1.3; }\n    .feat-tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 0.92rem; color: rgba(186,230,253,0.5); margin-bottom: 1rem; }\n    .feat-body { font-size: 0.845rem; color: rgba(255,255,255,0.48); line-height: 1.8; }\n\n    \/* ── HOW IT WORKS ── *\/\n    #how { background: linear-gradient(to bottom, #011a2e, #020f20); padding: 7rem 0 8rem; }\n    .how-head { text-align: center; margin-bottom: 5rem; }\n    .steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; position: relative; }\n    .steps::before { content: ''; position: absolute; top: 2rem; left: calc(16.67% + 1rem); right: calc(16.67% + 1rem); height: 1px; background: linear-gradient(to right, rgba(56,189,248,0.15), rgba(56,189,248,0.4), rgba(56,189,248,0.15)); pointer-events: none; }\n    .step { text-align: center; padding: 0 0.75rem; }\n    .step-n { width: 4rem; height: 4rem; border-radius: 50%; border: 1px solid rgba(56,189,248,0.25); display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; background: rgba(56,189,248,0.04); font-family: 'Cormorant Garamond', serif; font-size: 1.2rem; color: var(--cyan); position: relative; z-index: 1; }\n    .step-title { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; font-weight: 400; color: #fff; margin-bottom: 0.75rem; }\n    .step-body { font-size: 0.84rem; color: rgba(255,255,255,0.45); line-height: 1.8; }\n    .how-cta { text-align: center; margin-top: 4rem; }\n\n    \/* ── PRODUCTS ── *\/\n    #products { background: linear-gradient(to bottom, #020f20, var(--deep)); padding: 7rem 0 8rem; }\n    .products-head { text-align: center; margin-bottom: 4rem; }\n    .product-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; }\n    .pcard { background: rgba(255,255,255,0.025); border: 1px solid rgba(56,189,248,0.09); border-radius: 3px; padding: 1.75rem 1.4rem; display: flex; flex-direction: column; transition: background 0.4s, border-color 0.4s, transform 0.3s; }\n    .pcard:hover { background: rgba(56,189,248,0.055); border-color: rgba(56,189,248,0.28); transform: translateY(-4px); }\n    .pcard.hi { border-color: rgba(56,189,248,0.22); background: rgba(56,189,248,0.045); }\n    .pcard-badge { font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.2em; color: var(--cyan); margin-bottom: 0.65rem; font-weight: 600; }\n    .pcard-name { font-family: 'Cormorant Garamond', serif; font-size: 1.5rem; font-weight: 400; color: #fff; margin-bottom: 0.4rem; line-height: 1.2; }\n    .pcard-ideal { font-size: 0.73rem; color: rgba(186,230,253,0.42); margin-bottom: 1.5rem; line-height: 1.55; }\n    .pcard-list { list-style: none; margin-bottom: 2rem; flex: 1; }\n    .pcard-list li { display: flex; align-items: center; gap: 0.45rem; padding: 0.38rem 0; font-size: 0.76rem; color: rgba(255,255,255,0.5); border-bottom: 1px solid rgba(255,255,255,0.04); }\n    .pcard-list li .y { color: var(--cyan); font-size: 0.65rem; flex-shrink: 0; }\n    .pcard-list li .n { color: rgba(255,255,255,0.18); font-size: 0.65rem; flex-shrink: 0; }\n    .pcard-btn { display: block; text-align: center; padding: 0.6rem 1rem; border: 1px solid rgba(56,189,248,0.28); color: rgba(186,230,253,0.75); text-decoration: none; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; border-radius: 2px; transition: all 0.3s; cursor: pointer; }\n    .pcard-btn:hover, .pcard.hi .pcard-btn { background: linear-gradient(135deg,#0ea5e9,#06b6d4); border-color: transparent; color: #fff; }\n    .products-note { text-align: center; margin-top: 2.5rem; font-size: 0.8rem; color: rgba(186,230,253,0.35); line-height: 1.75; }\n    .products-note a { color: rgba(56,189,248,0.6); text-decoration: none; }\n    .products-note a:hover { color: var(--cyan); }\n\n    \/* ── TESTIMONIALS ── *\/\n    #testi { background: linear-gradient(to bottom, var(--deep), var(--ocean)); padding: 7rem 0 8rem; }\n    .testi-head { text-align: center; margin-bottom: 4rem; }\n    .testi-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }\n    .tcard { background: rgba(255,255,255,0.025); border: 1px solid rgba(56,189,248,0.07); border-radius: 3px; padding: 2rem; }\n    .tcard-quote { font-family: 'Cormorant Garamond', serif; font-size: 1.05rem; font-style: italic; color: rgba(255,255,255,0.7); line-height: 1.78; margin-bottom: 1.5rem; }\n    .tcard-author { font-size: 0.73rem; color: rgba(186,230,253,0.38); font-weight: 500; }\n    .badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.8rem; margin-top: 4rem; }\n    .badge { display: flex; align-items: center; gap: 0.45rem; padding: 0.45rem 1rem; background: rgba(56,189,248,0.04); border: 1px solid rgba(56,189,248,0.1); border-radius: 2px; font-size: 0.73rem; color: rgba(186,230,253,0.6); font-weight: 500; }\n\n    \/* ── FAQ ── *\/\n    #faq { background: linear-gradient(to bottom, var(--ocean), var(--mid)); padding: 7rem 0 8rem; }\n    .faq-head { text-align: center; margin-bottom: 4rem; }\n    .faq-list { max-width: 740px; margin: 0 auto; }\n    .faq-item { border-bottom: 1px solid rgba(56,189,248,0.09); }\n    .faq-q { width: 100%; background: none; border: none; text-align: left; padding: 1.4rem 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; color: rgba(255,255,255,0.82); font-size: 0.92rem; font-weight: 500; font-family: 'Inter', sans-serif; gap: 1rem; }\n    .faq-q:hover { color: var(--cyan); }\n    .faq-icon { color: var(--cyan); font-size: 1.15rem; flex-shrink: 0; transition: transform 0.3s ease; line-height: 1; }\n    .faq-item.open .faq-icon { transform: rotate(45deg); }\n    .faq-a { max-height: 0; overflow: hidden; transition: max-height 0.45s ease; }\n    .faq-item.open .faq-a { max-height: 400px; }\n    .faq-a p { padding-bottom: 1.5rem; font-size: 0.86rem; color: rgba(255,255,255,0.48); line-height: 1.85; }\n\n    \/* ── FINAL CTA ── *\/\n    #cta { background: linear-gradient(to bottom, var(--mid), var(--deep)); padding: 8rem 0; text-align: center; position: relative; overflow: hidden; }\n    #cta::before { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 700px; height: 700px; background: radial-gradient(ellipse at center, rgba(14,165,233,0.07) 0%, transparent 70%); pointer-events: none; }\n    .cta-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2rem, 4.5vw, 3.5rem); font-weight: 300; color: #fff; margin-bottom: 1.25rem; line-height: 1.2; }\n    .cta-title em { font-style: italic; color: var(--cyan); }\n    .cta-sub { font-size: 0.97rem; color: rgba(255,255,255,0.48); max-width: 560px; margin: 0 auto 2.5rem; line-height: 1.78; }\n    .cta-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; margin-bottom: 3rem; }\n    .cta-guarantees { display: flex; justify-content: center; flex-wrap: wrap; gap: 1.5rem; }\n    .cta-g { display: flex; align-items: center; gap: 0.4rem; font-size: 0.76rem; color: rgba(186,230,253,0.38); }\n    .cta-g span:first-child { color: rgba(56,189,248,0.55); }\n\n    \/* ── FOOTER ── *\/\n    footer { background: var(--deep); padding: 2rem 3rem; border-top: 1px solid rgba(56,189,248,0.07); display: flex; justify-content: space-between; align-items: center; font-size: 0.73rem; color: rgba(186,230,253,0.25); gap: 1rem; }\n    .footer-brand { font-family: 'Cormorant Garamond', serif; font-size: 0.95rem; color: rgba(186,230,253,0.45); }\n\n    \/* ── RESPONSIVE ── *\/\n    @media (max-width: 900px) {\n      .hero-ui { padding: 1.75rem; }\n      .hero-right { max-width: 220px; }\n      .problem-grid { grid-template-columns: 1fr; gap: 2.5rem; }\n      .features { grid-template-columns: 1fr; }\n      .steps { grid-template-columns: 1fr; gap: 2.5rem; }\n      .steps::before { display: none; }\n      .product-grid { grid-template-columns: repeat(2,1fr); }\n      .testi-grid { grid-template-columns: 1fr; }\n    }\n    @media (max-width: 600px) {\n      .hero-bottom { flex-direction: column; align-items: flex-start; }\n      .hero-right { text-align: left; max-width: 100%; }\n      .product-grid { grid-template-columns: 1fr; }\n      .wrap { padding: 0 1.25rem; }\n      footer { flex-direction: column; text-align: center; }\n    }\n  \u003c\/style\u003e\n\n\n\n\u003c!-- ══════════════════════════════ HERO ══════════════════════════════ --\u003e\n\u003csection id=\"hero\"\u003e\n  \u003ccanvas id=\"hero-canvas\"\u003e\u003c\/canvas\u003e\n  \u003cdiv class=\"hero-ui\"\u003e\n    \u003cdiv\u003e\n      \u003cp class=\"hero-label\"\u003eCarafe en verre auto-remplissante avec osmose inverse\u003c\/p\u003e\n      \u003cp class=\"hero-label\"\u003ePureté · Esthétique · Maison Intelligente\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hero-bottom\"\u003e\n      \u003cnav\u003e\n        \u003ca class=\"hero-word\" href=\"#solution\"\u003ePUR\u003c\/a\u003e\n        \u003ca class=\"hero-word\" href=\"#solution\"\u003eVIVANT\u003c\/a\u003e\n        \u003ca class=\"hero-word\" href=\"#how\"\u003eINTELLIGENT\u003c\/a\u003e\n        \u003ca class=\"hero-word\" href=\"#products\"\u003eUNIQUE\u003c\/a\u003e\n      \u003c\/nav\u003e\n      \u003cdiv class=\"hero-right\"\u003e\n        \u003cp class=\"hero-kicker\"\u003eUne eau à laquelle vous faites confiance les yeux fermés.\u003c\/p\u003e\n        \u003cp class=\"hero-kicker\"\u003eAutomatique. Intelligente. Magnifique.\u003c\/p\u003e\n        \u003cp class=\"hero-copy\"\u003eLa première carafe en verre Alladin auto-remplissante\u003cbr\u003eavec osmose inverse de qualité médicale.\u003c\/p\u003e\n        \u003ca href=\"#products\" class=\"btn btn-primary\"\u003eConfigurer maintenant\u003c\/a\u003e\n        \u003cspan class=\"hero-domain\"\u003eemmewasser.ch\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"hero-fade\"\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ TRUST ══════════════════════════════ --\u003e\n\u003cdiv id=\"trust\"\u003e\n  \u003cdiv class=\"trust-row\"\u003e\n    \u003cdiv class=\"trust-item\"\u003e\n\u003cspan class=\"trust-dot\"\u003e\u003c\/span\u003eTDS typiquement inférieur à 20 PPM\u003c\/div\u003e\n    \u003cdiv class=\"trust-item\"\u003e\n\u003cspan class=\"trust-dot\"\u003e\u003c\/span\u003eCarafe en verre Alladin fabriquée à la main\u003c\/div\u003e\n    \u003cdiv class=\"trust-item\"\u003e\n\u003cspan class=\"trust-dot\"\u003e\u003c\/span\u003eConception et ingénierie suisses\u003c\/div\u003e\n    \u003cdiv class=\"trust-item\"\u003e\n\u003cspan class=\"trust-dot\"\u003e\u003c\/span\u003eStérile grâce à la technologie Disruptor\u003c\/div\u003e\n    \u003cdiv class=\"trust-item\"\u003e\n\u003cspan class=\"trust-dot\"\u003e\u003c\/span\u003ePériode d'essai de 1 à 3 mois pour le B2B\u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- ══════════════════════════════ PROBLEM ══════════════════════════════ --\u003e\n\u003csection id=\"problem\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"problem-grid\"\u003e\n      \u003cdiv class=\"problem-text\"\u003e\n        \u003cp class=\"eyebrow\"\u003eLe problème\u003c\/p\u003e\n        \u003ch2\u003eCe que nous buvons quotidiennement reste invisible –\u003cbr\u003ejusqu'à ce que cela devienne \u003cem\u003esensible\u003c\/em\u003e.\u003c\/h2\u003e\n        \u003cp\u003eImaginez : vous vous servez un verre d'eau. Elle paraît claire. Le goût est neutre. Mais ce que vos yeux ne voient pas, pèse sur votre corps jour après jour.\u003c\/p\u003e\n        \u003cp\u003eDans de nombreux foyers, des résidus indésirables s'infiltrent dans l'eau potable en raison du vieillissement des conduites et des rejets industriels : \u003cstrong\u003ehormones, pesticides, métaux lourds et microplastiques.\u003c\/strong\u003e\u003c\/p\u003e\n        \u003cul class=\"prob-list\"\u003e\n          \u003cli\u003eLa lourde bouteille d'eau que vous transportez péniblement\u003c\/li\u003e\n          \u003cli\u003eLa carafe filtrante vide que personne ne remplit\u003c\/li\u003e\n          \u003cli\u003eLe goût de chlore que vous tentez de masquer\u003c\/li\u003e\n          \u003cli\u003eLe distributeur d'eau en plastique qui gâche votre ambiance\u003c\/li\u003e\n          \u003cli\u003eL'incertitude quant à savoir si l'eau est bonne pour votre famille\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003cdiv class=\"problem-quote\"\u003e\n          \u003cp\u003e« Je ne savais pas à quel point l'incertitude concernant mon eau du robinet me pesait, jusqu'à ce que je trouve une vraie solution. »\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"stats-col\"\u003e\n        \u003cdiv class=\"stat-card\"\u003e\n          \u003cdiv class=\"stat-num\"\u003e\u0026lt;20 PPM\u003c\/div\u003e\n          \u003cdiv class=\"stat-label\"\u003eValeur TDS typique après filtration Aquadjini — L'eau du robinet est souvent à 200–500 PPM\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat-card\"\u003e\n          \u003cdiv class=\"stat-num\"\u003e99%\u003c\/div\u003e\n          \u003cdiv class=\"stat-label\"\u003eSubstances nocives éliminées par l'osmose inverse à plusieurs étapes — Hormones, pesticides, métaux lourds, microplastiques\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat-card\"\u003e\n          \u003cdiv class=\"stat-num\"\u003e0 kg\u003c\/div\u003e\n          \u003cdiv class=\"stat-label\"\u003eBouteilles d'eau à transporter — la carafe se remplit automatiquement jusqu'au niveau souhaité\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"stat-card\"\u003e\n          \u003cdiv class=\"stat-num\"\u003e1×\/an\u003c\/div\u003e\n          \u003cdiv class=\"stat-label\"\u003eChangement de membrane (filtre principal) — entretien réduit et économique\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ SOLUTION ══════════════════════════════ --\u003e\n\u003csection id=\"solution\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"solution-head\"\u003e\n      \u003cp class=\"eyebrow\"\u003eLa solution\u003c\/p\u003e\n      \u003ch2\u003eAquadjini. \u003cem\u003eLa pureté qui se remplit toute seule.\u003c\/em\u003e\n\u003c\/h2\u003e\n      \u003cp\u003eLa technologie professionnelle d'osmose inverse se cache dans l'élégant socle. Au-dessus trône la carafe en verre Alladin, fabriquée à la main — un objet design qui rehausse n'importe quelle pièce.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"features\"\u003e\n      \u003cdiv class=\"feat\"\u003e\n        \u003cdiv class=\"feat-glyph\"\u003e◈\u003c\/div\u003e\n        \u003cdiv class=\"feat-cat\"\u003ePureté\u003c\/div\u003e\n        \u003cdiv class=\"feat-title\"\u003eOsmose inverse médicale + Disrupteur\u003c\/div\u003e\n        \u003cdiv class=\"feat-tagline\"\u003e« Pas seulement filtrée. Fondamentalement purifiée. »\u003c\/div\u003e\n        \u003cdiv class=\"feat-body\"\u003eNotre osmose inverse à plusieurs étapes élimine 99 % de tous les polluants — des hormones aux métaux lourds en passant par les microplastiques. Le préfiltre Disrupteur assure une stérilité durable. Le mesureur TDS intégré vous prouve la pureté en temps réel : typiquement inférieure à 20 PPM.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"feat\"\u003e\n        \u003cdiv class=\"feat-glyph\"\u003e◎\u003c\/div\u003e\n        \u003cdiv class=\"feat-cat\"\u003eIntelligence\u003c\/div\u003e\n        \u003cdiv class=\"feat-title\"\u003eContrôle intelligent — aussi flexible que votre vie\u003c\/div\u003e\n        \u003cdiv class=\"feat-tagline\"\u003e« Automatiquement intelligent. Manuellement contrôlable. »\u003c\/div\u003e\n        \u003cdiv class=\"feat-body\"\u003eDéfinissez via l'application ou le navigateur quand et combien d'eau doit se trouver dans la carafe. Niveaux de remplissage, dosage, durée de vie des filtres — tout dans une seule interface. Ou désactivez le Wi-Fi et utilisez la commande directe à un bouton. Sans rayonnement et sécurisé.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"feat\"\u003e\n        \u003cdiv class=\"feat-glyph\"\u003e◇\u003c\/div\u003e\n        \u003cdiv class=\"feat-cat\"\u003eVivacité\u003c\/div\u003e\n        \u003cdiv class=\"feat-title\"\u003eReminéralisation de l'Himalaya, au millilitre près\u003c\/div\u003e\n        \u003cdiv class=\"feat-tagline\"\u003e« Pur ne suffit pas. Il faut aussi un goût vivant. »\u003c\/div\u003e\n        \u003cdiv class=\"feat-body\"\u003eL'eau osmosée pure a un goût plat. C'est pourquoi Aquadjini dose automatiquement une solution saturée de sel de l'Himalaya — millilitre par millilitre, riche en oligo-éléments naturels. Réglable précisément via l'application, qu'il soit légèrement minéralisé ou fortement vivifié.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"feat\"\u003e\n        \u003cdiv class=\"feat-glyph\"\u003e◉\u003c\/div\u003e\n        \u003cdiv class=\"feat-cat\"\u003eEsthétique\u003c\/div\u003e\n        \u003cdiv class=\"feat-title\"\u003eUne carafe qui fait sensation\u003c\/div\u003e\n        \u003cdiv class=\"feat-tagline\"\u003e« Pourquoi cachons-nous l'eau dans du plastique ? »\u003c\/div\u003e\n        \u003cdiv class=\"feat-body\"\u003eLa carafe Alladin fabriquée à la main par Living Design n'est pas un récipient en plastique caché, mais un objet de design admiré. Avec son corps en verre élancé et son cylindre en pierre précieuse optionnel, elle deviendra un sujet de conversation dans votre cuisine, cabinet ou hall.\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ HOW IT WORKS ══════════════════════════════ --\u003e\n\u003csection id=\"how\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"how-head\"\u003e\n      \u003cp class=\"eyebrow\"\u003eComment ça marche\u003c\/p\u003e\n      \u003ch2\u003eAquadjini en 3 étapes.\u003c\/h2\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"steps\"\u003e\n      \u003cdiv class=\"step\"\u003e\n        \u003cdiv class=\"step-n\"\u003e01\u003c\/div\u003e\n        \u003cdiv class=\"step-title\"\u003eRaccordement \u0026amp; Configuration\u003c\/div\u003e\n        \u003cdiv class=\"step-body\"\u003eNotre partenaire spécialisé installe Aquadjini sur l'alimentation électrique, l'arrivée et l'évacuation d'eau — généralement en 1 à 2 heures. Dans l'application, vous définissez le niveau de remplissage souhaité et l'intensité de la minéralisation. Wi-Fi optionnel.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"step\"\u003e\n        \u003cdiv class=\"step-n\"\u003e02\u003c\/div\u003e\n        \u003cdiv class=\"step-title\"\u003eApprovisionnement automatique\u003c\/div\u003e\n        \u003cdiv class=\"step-body\"\u003eDès que le niveau d'eau descend en dessous de votre valeur minimale, Aquadjini démarre automatiquement. L'osmose inverse fonctionne silencieusement dans le socle, tandis que la carafe en verre trône visiblement comme un bijou.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"step\"\u003e\n        \u003cdiv class=\"step-n\"\u003e03\u003c\/div\u003e\n        \u003cdiv class=\"step-title\"\u003eProfiter \u0026amp; Faire confiance\u003c\/div\u003e\n        \u003cdiv class=\"step-body\"\u003eL'affichage TDS indique la pureté en temps réel. Profitez d'une eau minéralisée — sans porter, sans doute. L'application vous rappelle en douceur la maintenance à venir.\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"how-cta\"\u003e\n      \u003ca href=\"#products\" class=\"btn btn-primary\"\u003eConfigurer mon Aquadjini\u003c\/a\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ PRODUCTS ══════════════════════════════ --\u003e\n\u003csection id=\"products\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"products-head\"\u003e\n      \u003cp class=\"eyebrow\"\u003eLes variantes\u003c\/p\u003e\n      \u003ch2\u003eChoisissez votre \u003cem\u003eAquadjini parfait.\u003c\/em\u003e\n\u003c\/h2\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"product-grid\"\u003e\n      \u003cdiv class=\"pcard\"\u003e\n        \u003cdiv class=\"pcard-badge\"\u003eEntrée de gamme\u003c\/div\u003e\n        \u003cdiv class=\"pcard-name\"\u003ePure 5L\u003c\/div\u003e\n        \u003cdiv class=\"pcard-ideal\"\u003eCélibataires, couples, petits cabinets \u0026amp; bureaux\u003c\/div\u003e\n        \u003cul class=\"pcard-list\"\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Carafe Alladin 5 litres\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Osmose inverse multi-étapes\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Mesureur TDS intégré\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Dosage Himalaya\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Contrôle via appli \u0026amp; navigateur\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Désactivation Wi-Fi\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"n\"\u003e–\u003c\/span\u003e Vitalisation UMH\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"n\"\u003e–\u003c\/span\u003e Cylindre en pierre précieuse\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003ca href=\"#\" class=\"pcard-btn\"\u003eConfigurer\u003c\/a\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pcard\"\u003e\n        \u003cdiv class=\"pcard-badge\"\u003eFamille \u0026amp; B2B\u003c\/div\u003e\n        \u003cdiv class=\"pcard-name\"\u003ePure 10L\u003c\/div\u003e\n        \u003cdiv class=\"pcard-ideal\"\u003eFamilles, bureaux, hôtels \u0026amp; restaurants\u003c\/div\u003e\n        \u003cul class=\"pcard-list\"\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Carafe Alladin 10 litres\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Osmose inverse multi-étapes\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Mesureur TDS intégré\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Dosage Himalaya\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Contrôle via appli \u0026amp; navigateur\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Désactivation Wi-Fi\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"n\"\u003e–\u003c\/span\u003e Vitalisation UMH\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"n\"\u003e–\u003c\/span\u003e Cylindre en pierre précieuse\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003ca href=\"#\" class=\"pcard-btn\"\u003eConfigurer\u003c\/a\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pcard hi\"\u003e\n        \u003cdiv class=\"pcard-badge\"\u003ePremium · Bien-être\u003c\/div\u003e\n        \u003cdiv class=\"pcard-name\"\u003eVital 5L\u003c\/div\u003e\n        \u003cdiv class=\"pcard-ideal\"\u003eYoga, thérapeutes \u0026amp; centres de bien-être\u003c\/div\u003e\n        \u003cul class=\"pcard-list\"\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Carafe Alladin 5 litres\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Osmose inverse multi-étapes\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Mesureur TDS intégré\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Dosage Himalaya\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Contrôle via appli \u0026amp; navigateur\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Désactivation Wi-Fi\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Vitalisation UMH (5 ans)\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Cylindre en pierre précieuse\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003ca href=\"#\" class=\"pcard-btn\"\u003eConfigurer\u003c\/a\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"pcard hi\"\u003e\n        \u003cdiv class=\"pcard-badge\"\u003eFleuron · Luxe\u003c\/div\u003e\n        \u003cdiv class=\"pcard-name\"\u003eVital 10L\u003c\/div\u003e\n        \u003cdiv class=\"pcard-ideal\"\u003eSpas, hôtels de luxe \u0026amp; foyers premium\u003c\/div\u003e\n        \u003cul class=\"pcard-list\"\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Carafe Alladin 10 litres\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Osmose inverse multi-étapes\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Mesureur TDS intégré\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Dosage Himalaya\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Contrôle via appli \u0026amp; navigateur\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Désactivation Wi-Fi\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Vitalisation UMH (5 ans)\u003c\/li\u003e\n          \u003cli\u003e\n\u003cspan class=\"y\"\u003e✓\u003c\/span\u003e Cylindre en pierre précieuse\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003ca href=\"#\" class=\"pcard-btn\"\u003eConfigurer\u003c\/a\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cp class=\"products-note\"\u003e\n      Socle en bois personnalisé sur demande — notre ami artisan du bois fabrique des pièces uniques dans l'essence de bois de votre choix.\u003cbr\u003e\n      \u003ca href=\"#\"\u003eFaire une demande individuelle →\u003c\/a\u003e\n    \u003c\/p\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ TESTIMONIALS ══════════════════════════════ --\u003e\n\u003csection id=\"testi\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"testi-head\"\u003e\n      \u003cp class=\"eyebrow\"\u003eTémoignages\u003c\/p\u003e\n      \u003ch2\u003eAdopté par ceux\u003cbr\u003equi privilégient la \u003cem\u003equalité\u003c\/em\u003e.\u003c\/h2\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"testi-grid\"\u003e\n      \u003cdiv class=\"tcard\"\u003e\n        \u003cdiv class=\"tcard-quote\"\u003e« Dans notre cabinet, des bouteilles en plastique traînaient pendant des années. L'Aquadjini dans la zone d'accueil signale subtilement à nos patients : ici, on accorde de l'importance à la qualité et à l'hygiène. De plus : plus besoin de transporter. »\u003c\/div\u003e\n        \u003cdiv class=\"tcard-author\"\u003eDr. med. Beat Keller — Cabinet de naturopathie, Zurich\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"tcard\"\u003e\n        \u003cdiv class=\"tcard-quote\"\u003e« J'ai enfin l'assurance que mes enfants ne boivent pas d'eau avec des résidus hormonaux. L'application m'indique moins de 20 PPM. Et la carafe est tout simplement magnifique sur notre îlot de cuisine. »\u003c\/div\u003e\n        \u003cdiv class=\"tcard-author\"\u003eSarah M. — Mère de trois enfants, Berne\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"tcard\"\u003e\n        \u003cdiv class=\"tcard-quote\"\u003e« Nos clients demandent régulièrement la belle carafe à eau dans le hall. Les retours sont écrasants — cela paraît plus élégant que n'importe quel distributeur d'eau et est plus durable que l'eau en bouteille. »\u003c\/div\u003e\n        \u003cdiv class=\"tcard-author\"\u003eMarkus T. — Directeur d'exploitation Hôtel Boutique, Lucerne\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"badges\"\u003e\n      \u003cdiv class=\"badge\"\u003e✓ Vérifié TDS : typiquement \u0026lt;20 PPM\u003c\/div\u003e\n      \u003cdiv class=\"badge\"\u003e✓ Stérile grâce au Disrupteur\u003c\/div\u003e\n      \u003cdiv class=\"badge\"\u003e✓ Verre design fait main\u003c\/div\u003e\n      \u003cdiv class=\"badge\"\u003e✓ 2 ans de garantie sur l'installation\u003c\/div\u003e\n      \u003cdiv class=\"badge\"\u003e✓ 5 ans de garantie système UMH\u003c\/div\u003e\n      \u003cdiv class=\"badge\"\u003e✓ Modulaire et extensible\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ FAQ ══════════════════════════════ --\u003e\n\u003csection id=\"faq\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cdiv class=\"faq-head\"\u003e\n      \u003cp class=\"eyebrow\"\u003eQuestions fréquentes\u003c\/p\u003e\n      \u003ch2\u003eTout ce que vous voulez savoir.\u003c\/h2\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"faq-list\"\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003eQu'est-ce qui distingue Aquadjini d'un distributeur d'eau ou d'une carafe filtrante ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003eUn distributeur d'eau ne fait souvent que refroidir l'eau existante ou fonctionne avec des bouteilles externes. Une carafe filtrante ne réduit que les grosses impuretés. Aquadjini est un système d'osmose inverse stationnaire avec une performance de purification médicale (moins de 20 PPM), qui se remplit automatiquement dans une carafe en verre de haute qualité. Pas de transport, pas de bouteilles en plastique, pas de demi-filtration.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003eComment fonctionne exactement le remplissage automatique ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003eVous définissez dans l'application un niveau minimum et maximum (par ex. min. 5L, max. 10L). Si le niveau d'eau descend en dessous du minimum, le système démarre automatiquement et remplit jusqu'au maximum. Plusieurs niveaux de sécurité — protection contre le débordement, protection contre le fonctionnement à sec, capteurs de fuite — rendent le système absolument sûr.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003ePuis-je utiliser Aquadjini sans application et sans Wi-Fi ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003eAbsolument. La commande directe à un bouton sur l'appareil permet de démarrer et d'arrêter manuellement. Vous pouvez désactiver le Wi-Fi en permanence — le système fonctionne entièrement hors ligne. Idéal pour les utilisateurs sensibles aux radiations. Aucune fonctionnalité n'est perdue.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003eÀ quelle fréquence les filtres doivent-ils être changés ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003eLes pré-filtres et post-filtres durent environ 2 000 litres (environ six mois). La membrane principale dure environ 4 000 litres (environ un an). Grâce à sa conception modulaire, les filtres peuvent également être achetés auprès de fournisseurs européens compatibles — votre appareil ne sera jamais sans approvisionnement.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003eQu'est-ce que la vitalisation UMH et à quoi sert le cylindre en pierre précieuse ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003eLa vitalisation UMH vitalise l'eau par des processus de vortex et de fréquence spéciaux — perceptiblement plus douce et plus ronde en bouche. 5 ans de garantie inclus. Le cylindre en pierre précieuse est suspendu dans la carafe et enrichit énergétiquement l'eau — durablement et encapsulé de manière hygiénique.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"faq-item\"\u003e\n        \u003cbutton class=\"faq-q\"\u003eExiste-t-il une période d'essai ou un droit de retour ?\u003cspan class=\"faq-icon\"\u003e+\u003c\/span\u003e\u003c\/button\u003e\n        \u003cdiv class=\"faq-a\"\u003e\u003cp\u003ePour les clients B2B, nous offrons 1 à 3 mois d'essai — si vous n'êtes pas satisfait, nous reprenons l'appareil. Pour les clients B2C, le droit de rétractation légal de 30 jours s'applique. En cas de garantie, nous organisons l'enlèvement gratuit par un transporteur.\u003c\/p\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ CTA ══════════════════════════════ --\u003e\n\u003csection id=\"cta\"\u003e\n  \u003cdiv class=\"wrap\"\u003e\n    \u003cp class=\"eyebrow\"\u003ePrêt ?\u003c\/p\u003e\n    \u003ch2 class=\"cta-title\"\u003ePrêt pour une eau\u003cbr\u003eà laquelle vous faites \u003cem\u003evraiment\u003c\/em\u003e confiance ?\u003c\/h2\u003e\n    \u003cp class=\"cta-sub\"\u003eQue ce soit pour votre famille, vos patients ou vos invités — Aquadjini transforme votre eau du robinet en une expérience de pureté, de beauté et de sérénité.\u003c\/p\u003e\n    \u003cdiv class=\"cta-btns\"\u003e\n      \u003ca href=\"#\" class=\"btn btn-primary\"\u003eComposer mon Aquadjini\u003c\/a\u003e\n      \u003ca href=\"#\" class=\"btn btn-outline\"\u003eEntretien B2B — 3 mois d'essai\u003c\/a\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"cta-guarantees\"\u003e\n      \u003cdiv class=\"cta-g\"\u003e\n\u003cspan\u003e✓\u003c\/span\u003e\u003cspan\u003eDroit de rétractation de 30 jours (B2C)\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003cdiv class=\"cta-g\"\u003e\n\u003cspan\u003e✓\u003c\/span\u003e\u003cspan\u003ePériode d'essai de 1 à 3 mois (B2B)\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003cdiv class=\"cta-g\"\u003e\n\u003cspan\u003e✓\u003c\/span\u003e\u003cspan\u003eRetour gratuit en cas de garantie\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003cdiv class=\"cta-g\"\u003e\n\u003cspan\u003e✓\u003c\/span\u003e\u003cspan\u003eDisponibilité des filtres à vie\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003c!-- ══════════════════════════════ FOOTER ══════════════════════════════ --\u003e\n\u003cfooter\u003e\n  \u003cdiv class=\"footer-brand\"\u003eAquadjini — emmewasser.ch\u003c\/div\u003e\n  \u003cdiv\u003eDesign et ingénierie suisse · La pureté rencontre l'esthétique\u003c\/div\u003e\n  \u003cdiv\u003e© 2025 emmewasser.ch\u003c\/div\u003e\n\u003c\/footer\u003e\n\n\u003c!-- ══════════════════════════════ SCRIPTS ══════════════════════════════ --\u003e\n\u003cscript\u003e\n\/\/ ─── WebGL Water Shader ───\n(function () {\n  const VS = `\n    attribute vec4 position;\n    void main() { gl_Position = position; }\n  `;\n  const FS = `\n    precision mediump float;\n    uniform float u_time;\n    uniform vec2  u_resolution;\n    uniform vec2  u_mouse;\n    uniform float u_intensity;\n\n    vec3 hash3(vec2 p) {\n      vec3 q = vec3(dot(p,vec2(127.1,311.7)),dot(p,vec2(269.5,183.3)),dot(p,vec2(419.2,371.9)));\n      return fract(sin(q)*43758.5453);\n    }\n    float noise(vec2 p) {\n      vec2 i=floor(p),f=fract(p);\n      vec2 u=f*f*f*(f*(f*6.0-15.0)+10.0);\n      return mix(mix(dot(hash3(i+vec2(0,0)).xy,f-vec2(0,0)),dot(hash3(i+vec2(1,0)).xy,f-vec2(1,0)),u.x),\n                 mix(dot(hash3(i+vec2(0,1)).xy,f-vec2(0,1)),dot(hash3(i+vec2(1,1)).xy,f-vec2(1,1)),u.x),u.y);\n    }\n    float fbm(vec2 p,int oct) {\n      float v=0.0,a=1.0,fr=0.25;\n      for(int i=0;i\u003c10;i++){if(i\u003e=oct)break;v+=a*noise(p*fr);a*=0.52;fr*=1.13;}\n      return v;\n    }\n    float voronoi(vec2 p) {\n      vec2 n=floor(p),f=fract(p);float md=50.0;\n      for(int i=-2;i\u003c=2;i++)for(int j=-2;j\u003c=2;j++){\n        vec2 g=vec2(i,j),o=hash3(n+g).xy;\n        o=0.5+0.41*sin(u_time*1.5+6.28*o);\n        vec2 r=g+o-f;md=min(md,dot(r,r));\n      }\n      return sqrt(md);\n    }\n    float plasma(vec2 p,float t) {\n      return (sin(p.x*8.0+t*2.0)+sin(p.y*8.0+t*1.7)+sin((p.x+p.y)*6.0+t*1.3)+sin(sqrt(dot(p,p))*8.0+t*2.3))*0.5;\n    }\n    vec2 curl(vec2 p,float t) {\n      float e=0.5;\n      return vec2((fbm(p+vec2(0,e),6)-fbm(p-vec2(0,e),6))\/(2.0*e),(fbm(p-vec2(e,0),6)-fbm(p+vec2(e,0),6))\/(2.0*e));\n    }\n    float grain(vec2 uv,float t){return fract(sin(dot(uv*t,vec2(12.9898,78.233)))*43758.5453);}\n\n    void main() {\n      vec2 uv=gl_FragCoord.xy\/u_resolution.xy;\n      vec2 st=(uv-0.5)*2.0; st.x*=u_resolution.x\/u_resolution.y;\n      float time=u_time*0.25;\n\n      vec2 cf=curl(st*2.0,time)*0.6, ff=st+cf;\n      float d1=fbm(ff*1.5+time*1.2,8)*0.4,d2=fbm(ff*2.3-time*0.8,6)*0.3;\n      float d3=fbm(ff*3.1+time*1.8,4)*0.2,d4=fbm(ff*4.7-time*1.1,3)*0.15;\n      float cells=smoothstep(0.1,0.7,voronoi(ff*2.5+time*0.5));\n      float td=d1+d2+d3+d4+plasma(ff+vec2(d1,d2),time*1.5)*0.2;\n\n      float s1=smoothstep(0.3,0.7,sin((st.x+td)*15.0+time*3.0)*0.5+0.5);\n      float s2=smoothstep(0.2,0.8,sin((st.x+td*0.7)*25.0-time*2.0)*0.5+0.5);\n      float s3=smoothstep(0.4,0.6,sin((st.x+td*1.3)*35.0+time*4.0)*0.5+0.5);\n      float strk=s1*0.6+s2*0.4+s3*0.5;\n\n      float sh1=smoothstep(0.0,1.0,1.0-abs(st.x+td*0.6));\n      float sh2=smoothstep(0.1,0.9,1.0-abs(st.x+td*0.4+sin(st.y*3.0+time)*0.15));\n      float sh3=smoothstep(0.2,0.8,1.0-abs(st.x+td*0.8+cos(st.y*2.0-time)*0.1));\n      float fs=max(sh1*0.8,max(sh2*0.6,sh3*0.4));\n\n      \/\/ Water palette\n      vec3 c1=vec3(0.05,0.55,1.0),c2=vec3(0.0,0.78,1.0),c3=vec3(0.35,0.90,1.0);\n      vec3 c4=vec3(0.0,0.35,0.82),c5=vec3(0.08,0.98,0.92),c6=vec3(0.01,0.04,0.20),c7=vec3(0.60,0.92,1.0);\n\n      float g=1.0-uv.y;\n      float cn=fbm(ff*3.0+time*0.5,4)*0.5+0.5;\n      float cs=sin(time*1.5+st.y*2.0)*0.5+0.5;\n\n      vec3 fc=mix(c6,c7,smoothstep(0.0,0.15,g));\n      fc=mix(fc,c5,smoothstep(0.15,0.3,g));\n      fc=mix(fc,c4,smoothstep(0.3,0.5,g));\n      fc=mix(fc,c3,smoothstep(0.5,0.7,g));\n      fc=mix(fc,c2,smoothstep(0.7,0.85,g));\n      fc=mix(fc,c1,smoothstep(0.85,1.0,g));\n      fc=mix(fc,c1,cn*0.82);\n      fc=mix(fc,c5,cs*0.5);\n\n      vec3 ac=fc;\n      vec2 ab=cf*0.02;\n      ac.r=mix(fc.r,c4.r,length(ab)*2.0);\n      ac.b=mix(fc.b,c1.b,length(ab)*1.5);\n      ac.g=mix(fc.g,c5.g,length(ab)*1.2);\n\n      float p1=sin(time*3.0+st.y*6.0)*0.5+0.5,p2=sin(time*4.5-st.y*8.0)*0.5+0.5;\n      float ep=smoothstep(0.3,0.7,p1*p2);\n\n      float intensity=fs*strk*(1.0+ep*0.4)*(1.0+cells*0.2)*u_intensity;\n      vec2 mv=(u_mouse\/u_resolution.xy-0.5)*2.0; mv.x*=u_resolution.x\/u_resolution.y;\n      float mi=smoothstep(0.0,1.0,max(0.0,1.0-length(st-mv)*0.6));\n      intensity+=mi*0.6;\n      ac=mix(ac,c2,0.3);\n\n      vec3 res=ac*intensity+smoothstep(0.4,1.0,intensity)*0.54*fc;\n      res=pow(res,vec3(0.85));\n      res=mix(res,res*res,0.2);\n      float vig=smoothstep(0.2,1.0,1.0-length(uv-0.5)*0.85);\n      res=mix(vec3(0.01,0.04,0.18)+fc*0.03,res,smoothstep(0.0,0.4,intensity))*vig;\n      res=mix(vec3(dot(res,vec3(0.299,0.587,0.114))),res,1.4);\n      res+=(grain(uv,time*0.5)*2.0-1.0)*0.07;\n      res+=sin(uv.y*u_resolution.y*2.0)*0.025;\n\n      gl_FragColor=vec4(res,1.0);\n    }\n  `;\n\n  const canvas = document.getElementById('hero-canvas');\n  const gl = canvas.getContext('webgl');\n  if (!gl) return;\n\n  function mkShader(type, src) {\n    const s = gl.createShader(type);\n    gl.shaderSource(s, src); gl.compileShader(s);\n    if (!gl.getShaderParameter(s, gl.COMPILE_STATUS)) { console.error(gl.getShaderInfoLog(s)); return null; }\n    return s;\n  }\n  const prog = gl.createProgram();\n  gl.attachShader(prog, mkShader(gl.VERTEX_SHADER, VS));\n  gl.attachShader(prog, mkShader(gl.FRAGMENT_SHADER, FS));\n  gl.linkProgram(prog);\n\n  const buf = gl.createBuffer();\n  gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n  gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1,-1,1,-1,-1,1,1,1]), gl.STATIC_DRAW);\n\n  const posL = gl.getAttribLocation(prog, 'position');\n  const tL   = gl.getUniformLocation(prog, 'u_time');\n  const rL   = gl.getUniformLocation(prog, 'u_resolution');\n  const mL   = gl.getUniformLocation(prog, 'u_mouse');\n  const iL   = gl.getUniformLocation(prog, 'u_intensity');\n\n  const mouse = { x: 0, y: 0 };\n  let ival = 1.0, target = 1.0;\n  const t0 = Date.now();\n\n  function resize() {\n    const r = canvas.getBoundingClientRect();\n    canvas.width  = r.width  * devicePixelRatio;\n    canvas.height = r.height * devicePixelRatio;\n    gl.viewport(0, 0, canvas.width, canvas.height);\n  }\n  window.addEventListener('resize', resize); resize();\n\n  canvas.addEventListener('mousemove', e =\u003e {\n    const r = canvas.getBoundingClientRect();\n    mouse.x = (e.clientX - r.left) * devicePixelRatio;\n    mouse.y = (r.height - (e.clientY - r.top)) * devicePixelRatio;\n    target = 1.15;\n    clearTimeout(canvas._mt);\n    canvas._mt = setTimeout(() =\u003e { target = 1.0; }, 300);\n  });\n\n  function loop() {\n    ival += (target - ival) * 0.08;\n    const t = (Date.now() - t0) * 0.001;\n    gl.useProgram(prog);\n    gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n    gl.enableVertexAttribArray(posL);\n    gl.vertexAttribPointer(posL, 2, gl.FLOAT, false, 0, 0);\n    gl.uniform1f(tL, t);\n    gl.uniform2f(rL, canvas.width, canvas.height);\n    gl.uniform2f(mL, mouse.x, mouse.y);\n    gl.uniform1f(iL, ival);\n    gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);\n    requestAnimationFrame(loop);\n  }\n  loop();\n\n  \/\/ GSAP hero entrance\n  if (window.gsap) {\n    gsap.from('.hero-label',  { opacity:0, y:-12, stagger:0.15, duration:1,   delay:0.3, ease:'power3.out' });\n    gsap.from('.hero-word',   { opacity:0, y:50,  stagger:0.1,  duration:1,   delay:0.5, ease:'power3.out' });\n    gsap.from('.hero-right\u003e*',{ opacity:0, x:18,  stagger:0.08, duration:0.8, delay:0.9, ease:'power3.out' });\n    document.querySelectorAll('.hero-word').forEach(w =\u003e {\n      w.addEventListener('mouseenter', () =\u003e gsap.to(w, { scale:1.05, rotationX:-2, z:20, duration:0.6, ease:'power3.out' }));\n      w.addEventListener('mouseleave', () =\u003e gsap.to(w, { scale:1,    rotationX:0,  z:0,  duration:0.6, ease:'power3.out' }));\n    });\n  }\n})();\n\n\/\/ ─── FAQ Accordion ───\ndocument.querySelectorAll('.faq-q').forEach(btn =\u003e {\n  btn.addEventListener('click', () =\u003e {\n    const item = btn.closest('.faq-item');\n    const wasOpen = item.classList.contains('open');\n    document.querySelectorAll('.faq-item').forEach(i =\u003e i.classList.remove('open'));\n    if (!wasOpen) item.classList.add('open');\n  });\n});\n\n\/\/ ─── Scroll reveal ───\nconst io = new IntersectionObserver(entries =\u003e {\n  entries.forEach(e =\u003e {\n    if (e.isIntersecting) {\n      e.target.style.opacity = '1';\n      e.target.style.transform = 'translateY(0)';\n    }\n  });\n}, { threshold: 0.08 });\n\ndocument.querySelectorAll('.feat, .step, .pcard, .tcard, .stat-card').forEach(el =\u003e {\n  el.style.opacity = '0';\n  el.style.transform = 'translateY(28px)';\n  el.style.transition = 'opacity 0.65s ease, transform 0.65s ease';\n  io.observe(el);\n});\n\u003c\/script\u003e\n\n\n\u003c\/body\u003e","products":[{"product_id":"aquadjini-individuelles-holzpodest","title":"Aquadjini Socle individuel en bois","description":"\u003cp\u003e\u003cstrong\u003eSocle en bois sur mesure dans l'essence de bois de votre choix\u003c\/strong\u003e — notre ami artiste sur bois fabrique chaque socle Aquadjini comme une pièce unique.\u003c\/p\u003e\n\u003cp\u003eVous choisissez l'essence de bois, le veinage et la finition de surface. Veuillez prévoir un délai de livraison prolongé en raison de la fabrication individuelle.\u003c\/p\u003e\n\u003cp\u003eAprès réception de votre commande, l'artiste sur bois vous contactera directement pour convenir de l'essence de bois, du traitement et du délai.\u003c\/p\u003e\n\u003cp\u003eLe prix est indicatif et varie en fonction de vos exigences individuelles\u003c\/p\u003e","brand":"emmewasser","offers":[{"title":"Default Title","offer_id":56588123373894,"sku":"AQ-POD-IND","price":500.0,"currency_code":"CHF","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0819\/8337\/3638\/files\/ChatGPTImage11.Mai2026_23_19_22.png?v=1778792531"}],"url":"https:\/\/emmewasser.ch\/fr\/collections\/aquadjini-collection.oembed","provider":"EMMEWASSER","version":"1.0","type":"link"}