{"title":"Découvrez nos produits","description":null,"products":[{"product_id":"oreiller-papillon-generation-1","title":"Oreiller Papillon Ergonomique Génération 1","description":"\u003cp\u003e \u003c\/p\u003e\n\u003cstyle\u003e\n.spn{font-family:'DM Sans',sans-serif;color:#072f63;padding:24px 0 8px;}\n\n.spn-sep{height:1px;background:rgba(11,61,94,0.09);margin:24px 0;}\n\n.spn-label{\n  font-size:11px;font-weight:700;letter-spacing:.18em;\n  text-transform:uppercase;color:#1A6B9A;\n  margin-bottom:16px;display:flex;align-items:center;gap:8px;\n}\n.spn-label::before{content:'';width:20px;height:1px;background:#20C5BC;display:block;}\n\n.spn-title{\n  font-family:'Cormorant Garamond',serif;\n  font-size:clamp(22px,2.5vw,30px);\n  font-weight:500;line-height:1.15;\n  color:#072f63;letter-spacing:-.01em;\n  margin-bottom:16px;\n}\n.spn-title em{font-style:italic;font-weight:400;color:#1A6B9A;}\n\n.spn-text{\n  font-size:15px;line-height:1.8;\n  color:#4d6c90;font-weight:300;\n  margin-bottom:24px;\n}\n\n.spn-pts{display:flex;flex-direction:column;}\n.spn-pt{\n  display:flex;align-items:flex-start;gap:16px;\n  padding:16px 0;border-bottom:1px solid rgba(11,61,94,0.07);\n}\n.spn-pt:first-child{border-top:1px solid rgba(11,61,94,0.07);}\n.spn-pt-n{\n  font-family:'Cormorant Garamond',serif;\n  font-size:26px;font-weight:300;\n  color:rgba(11,61,94,0.15);line-height:1;\n  flex-shrink:0;width:22px;padding-top:2px;\n}\n.spn-pt-body h4{font-size:13px;font-weight:700;color:#072f63;margin-bottom:3px;}\n.spn-pt-body p{font-size:13px;color:#6B8899;line-height:1.6;font-weight:300;margin:0;}\n\n.spn-review{\n  background:#F7FAFC;border-radius:12px;\n  padding:20px 22px;margin-top:24px;\n}\n.spn-review-stars{color:#F4956A;font-size:13px;letter-spacing:2px;margin-bottom:8px;}\n.spn-review-txt{\n  font-family:'Cormorant Garamond',serif;\n  font-size:18px;font-style:italic;font-weight:400;\n  color:#072f63;line-height:1.5;margin-bottom:10px;\n}\n.spn-review-auth{\n  font-size:12px;color:#6B8899;\n  display:flex;align-items:center;gap:8px;\n}\n.spn-verified{\n  background:#EAF7EF;border:1px solid #B8E0C8;\n  border-radius:20px;padding:2px 8px;\n  font-size:10px;color:#2A7848;font-weight:600;\n}\n\n.spn-garanties{\n  display:flex;gap:0;\n  border:1px solid rgba(11,61,94,0.09);\n  border-radius:10px;overflow:hidden;\n  margin-top:24px;\n}\n.spn-gar{\n  flex:1;text-align:center;padding:14px 8px;\n  border-right:1px solid rgba(11,61,94,0.09);\n}\n.spn-gar:last-child{border-right:none;}\n.spn-gar-ico{font-size:18px;margin-bottom:4px;}\n.spn-gar-title{font-size:11px;font-weight:700;color:#072f63;margin-bottom:2px;}\n.spn-gar-sub{font-size:10px;color:#6B8899;font-weight:300;}\n\n@media(max-width:768px){\n  .spn-garanties{flex-wrap:wrap;}\n  .spn-gar{min-width:50%;border-bottom:1px solid rgba(11,61,94,0.09);}\n  .spn-gar:nth-child(2){border-right:none;}\n  .spn-gar:nth-child(3),.spn-gar:last-child{border-bottom:none;}\n}\n\u003c\/style\u003e\n\u003cdiv class=\"spn\"\u003e\n\u003cdiv class=\"spn-label\"\u003ePourquoi Somnicare\u003c\/div\u003e\n\u003ch2 class=\"spn-title\"\u003ePas juste un oreiller.\u003cbr\u003e\u003cem\u003eUn soutien pensé pour votre sommeil.\u003c\/em\u003e\n\u003c\/h2\u003e\n\u003cp class=\"spn-text\"\u003eChaque nuit, un oreiller mal adapté peut nuire au confort de votre nuque. L'oreiller Somnicare épouse la courbe naturelle de votre cou pour un sommeil plus serein.\u003c\/p\u003e\n\u003cdiv class=\"spn-pts\"\u003e\n\u003cdiv class=\"spn-pt\"\u003e\n\u003cdiv class=\"spn-pt-n\"\u003e01\u003c\/div\u003e\n\u003cdiv class=\"spn-pt-body\"\u003e\n\u003ch4\u003eForme ergonomique anatomique\u003c\/h4\u003e\n\u003cp\u003eÉpouse la courbe naturelle du cou et accompagne son alignement dès que vous posez la tête.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-pt\"\u003e\n\u003cdiv class=\"spn-pt-n\"\u003e02\u003c\/div\u003e\n\u003cdiv class=\"spn-pt-body\"\u003e\n\u003ch4\u003eMousse à mémoire de forme\u003c\/h4\u003e\n\u003cp\u003eS'adapte à votre morphologie. Soutien constant — aucun affaissement avec le temps.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-pt\"\u003e\n\u003cdiv class=\"spn-pt-n\"\u003e03\u003c\/div\u003e\n\u003cdiv class=\"spn-pt-body\"\u003e\n\u003ch4\u003eHousse respirante lavable\u003c\/h4\u003e\n\u003cp\u003eMicrofibre douce, déhoussable et lavable en machine à 30°C.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-pt\"\u003e\n\u003cdiv class=\"spn-pt-n\"\u003e04\u003c\/div\u003e\n\u003cdiv class=\"spn-pt-body\"\u003e\n\u003ch4\u003eCompatible dos et côté\u003c\/h4\u003e\n\u003cp\u003eConçu pour accompagner votre sommeil quelle que soit votre position habituelle.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-sep\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"spn-review\"\u003e\n\u003cdiv class=\"spn-review-stars\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"spn-review-txt\"\u003e\"Dès la première nuit, j'ai retrouvé un vrai confort de sommeil. C'est de loin le meilleur oreiller que j'ai jamais eu.\"\u003c\/p\u003e\n\u003cdiv class=\"spn-review-auth\"\u003eM***d · 08 janvier 2026 \u003cspan class=\"spn-verified\"\u003e✓ Vérifié\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-garanties\"\u003e\n\u003cdiv class=\"spn-gar\"\u003e\n\u003cdiv class=\"spn-gar-ico\"\u003e🚚\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-title\"\u003eLivraison suivie\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-sub\"\u003e7 à 10 jours\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-gar\"\u003e\n\u003cdiv class=\"spn-gar-ico\"\u003e🔒\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-title\"\u003ePaiement sécurisé\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-sub\"\u003eTransactions protégées\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spn-gar\"\u003e\n\u003cdiv class=\"spn-gar-ico\"\u003e↩\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-title\"\u003eRetour 90 jours\u003c\/div\u003e\n\u003cdiv class=\"spn-gar-sub\"\u003eSi non conforme\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"SOMNICARE","offers":[{"title":"NOIR \/ taille standard","offer_id":53048500945234,"sku":"14:193#black;5:201298991#As show","price":69.9,"currency_code":"EUR","in_stock":true},{"title":"GRIS \/ taille standard","offer_id":53048501010770,"sku":"14:175#gray;5:201298991#As show","price":69.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/OREILLER_SUR_LE_LIT_v2_eed2228c-94f6-421f-a810-37a85b6319eb.png?v=1786187345"},{"product_id":"housse-de-rechange-generation-1","title":"Housse de rechange Génération 1","description":"\u003cstyle\u003e\n.main-page-container,\n.main-page-content,\n.page-width,\n.shopify-section,\narticle,\n.article-template,\n.template-page .page-width {\n  max-width: 100% !important;\n  padding-left: 0 !important;\n  padding-right: 0 !important;\n}\n\u003c\/style\u003e\n\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=DM+Sans:wght@300;400;500;600;700\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\n\u003cstyle\u003e\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n:root{\n  --navy:#072f63;--blue:#1A6B9A;--blue-acc:#2E86C8;--teal:#20C5BC;\n  --orange:#F4956A;--white:#fff;--off:#F7FAFC;--ice:#EDF5FB;\n  --muted:#5a7a96;--border:rgba(11,61,94,0.09);\n  --fb:'DM Sans',sans-serif;\n  --radius:12px;\n}\n.hpx{font-family:var(--fb);color:var(--navy);background:var(--white);overflow-x:clip;width:100%;max-width:100%;-webkit-font-smoothing:antialiased}\n.hpx *{font-family:var(--fb) !important;}\n.hpx img{display:block;max-width:100%}\n.hpx a{text-decoration:none;color:inherit}\n\n@keyframes hpx-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}\n.hpx-fu{opacity:0;animation:hpx-up .7s ease forwards}\n.hpx-d1{animation-delay:.1s}\n\n.hpx-main{\n  width:100%;max-width:1200px;margin:0 auto;padding:40px 40px 80px;\n  display:grid;grid-template-columns:100px 1fr 460px;gap:0 32px;align-items:start;\n}\n.hpx-gallery{display:contents;}\n.hpx-thumbs{display:flex;flex-direction:column;gap:14px;}\n.hpx-thumb{width:80px;height:80px;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;background:#ffffff;flex-shrink:0;}\n.hpx-thumb img{width:100%;height:100%;object-fit:cover;display:block;}\n.hpx-thumb:hover{border-color:rgba(26,107,154,.3);transform:translateX(2px)}\n.hpx-thumb.active{border-color:var(--blue-acc);box-shadow:0 4px 16px rgba(46,134,200,.2)}\n.hpx-main-img{width:100%;height:auto;min-height:520px;border-radius:20px;background:#ffffff;overflow:hidden;display:flex;align-items:center;justify-content:center;}\n.hpx-main-img img{width:100%;height:auto;max-height:600px;object-fit:contain !important;display:block;}\n\n.hpx-content{display:block !important;padding-top:20px;}\n.hpx-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;display:flex;align-items:center;gap:8px;}\n.hpx-eyebrow::before{content:'';width:20px;height:1px;background:var(--teal);display:block;flex-shrink:0;}\n.hpx-title{font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.02em;margin-bottom:16px;}\n.hpx-desc{font-size:16px;line-height:1.8;color:var(--muted);font-weight:300;margin-bottom:26px;max-width:420px;}\n\n.hpx-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}\n.hpx-benefit{display:flex;align-items:center;gap:12px;font-size:15.5px;color:var(--navy);font-weight:400;}\n.hpx-benefit-ico{width:26px;height:26px;border-radius:50%;background:var(--ice);display:flex;align-items:center;justify-content:center;flex-shrink:0;}\n.hpx-benefit-ico svg{width:12px;height:12px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round}\n\n.hpx-offer{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:26px;margin-bottom:20px;}\n.hpx-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:22px;flex-wrap:wrap;}\n.hpx-price{font-size:38px;font-weight:700;color:var(--navy);line-height:1;}\n.hpx-price-old{font-size:21px;color:var(--muted);font-weight:400;text-decoration:line-through;}\n.hpx-price-badge{display:inline-flex;align-items:center;background:#F4956A;color:#fff;font-size:13px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.02em;}\n\n.hpx-variants{margin-bottom:22px;}\n.hpx-variants-label{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;}\n.hpx-variant-opts{display:flex;gap:10px;flex-wrap:wrap;}\n.hpx-variant-opt{cursor:pointer;}\n.hpx-variant-opt input{position:absolute;opacity:0;width:0;height:0;}\n.hpx-variant-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--navy);transition:all .18s;background:#fff;}\n.hpx-variant-opt input:checked + .hpx-variant-pill{border-color:var(--navy);background:var(--navy);color:#fff;}\n.hpx-swatch{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex-shrink:0;}\n\n.hpx-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}\n.hpx-perk{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted);}\n.hpx-perk::before{content:'✔';color:var(--teal);font-weight:700;font-size:12px;}\n\n.hpx-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 32px;border-radius:10px;background:var(--navy);color:#fff !important;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;text-decoration:none;transition:all .22s;}\n.hpx-cta:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 12px 36px rgba(11,61,94,.22)}\n.hpx-secure{text-align:center;font-size:13px;color:var(--muted);margin-top:14px;display:flex;align-items:center;justify-content:center;gap:6px;}\n.hpx-secure svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;flex-shrink:0;}\n\n@media(max-width:960px){\n  .hpx-main{display:block !important;grid-template-columns:none !important;padding:24px 16px 60px;width:100%;max-width:100%;}\n  .hpx-gallery{display:block;width:100%;}\n  .hpx-thumbs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:8px 0 0 0;order:2;width:100%;}\n  .hpx-thumbs::-webkit-scrollbar{display:none}\n  .hpx-thumb{width:60px;height:60px;flex-shrink:0;}\n  .hpx-main-img{min-height:320px;order:1;border-radius:16px;width:100%;max-width:100%;margin-bottom:8px;}\n  .hpx-main-img img{max-height:360px;width:100%;height:auto;object-fit:contain !important;}\n  .hpx-content{padding-top:12px;width:100%;}\n  .hpx-cta{width:100% !important;justify-content:center;}\n}\n@media(max-width:480px){.hpx-price{font-size:32px;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"hpx\"\u003e\n\n\u003cdiv class=\"hpx-main\"\u003e\n\n  \u003cdiv class=\"hpx-gallery\"\u003e\n    \u003cdiv class=\"hpx-thumbs\"\u003e\n      \u003cdiv class=\"hpx-thumb active\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_noir.png?v=1783288129', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_noir.png?v=1783288129\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_grise.png?v=1783288129', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_grise.png?v=1783288129\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_DEHOUSABLE.png?v=1783288154', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_DEHOUSABLE.png?v=1783288154\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_DOUCE_ET_AGREABLE.png?v=1783288129', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_DOUCE_ET_AGREABLE.png?v=1783288129\"\u003e\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hpx-main-img\"\u003e\n      \u003cimg id=\"hpx-main-image\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_noir.png?v=1783288129\" alt=\"Housse de rechange Somnicare\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"hpx-content hpx-fu hpx-d1\"\u003e\n\n    \u003cdiv class=\"hpx-eyebrow\"\u003eAccessoire Somnicare\u003c\/div\u003e\n    \u003ch1 class=\"hpx-title\"\u003eHousse de rechange pour oreiller papillon\u003c\/h1\u003e\n    \u003cp class=\"hpx-desc\"\u003eUne housse de rechange douce et respirante, conçue pour épouser parfaitement la forme de votre oreiller Somnicare. Pratique pour alterner pendant le lavage.\u003c\/p\u003e\n\n    \u003cdiv class=\"hpx-benefits\"\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eÉpouse la forme papillon de l'oreiller\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eDouce, respirante et agréable\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eDéhoussable et lavable en machine à 30°C\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eDisponible en noir et gris\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"hpx-offer\"\u003e\n      \u003cdiv class=\"hpx-price-row\"\u003e\n        {% if product.compare_at_price \u0026gt; product.price %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-old\"\u003e{{ product.compare_at_price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-badge\"\u003eSOLDES -30%\u003c\/span\u003e\n        {% else %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n        {% endif %}\n      \u003c\/div\u003e\n\n      {% form 'product', product %}\n        {% unless product.has_only_default_variant %}\n          {% for option in product.options_with_values %}\n            \u003cdiv class=\"hpx-variants\"\u003e\n              \u003cdiv class=\"hpx-variants-label\"\u003e{{ option.name }}\u003c\/div\u003e\n              \u003cdiv class=\"hpx-variant-opts\"\u003e\n                {% for value in option.values %}\n                  \u003clabel class=\"hpx-variant-opt\"\u003e\n                    \u003cinput type=\"radio\" name=\"options[{{ option.name }}]\" value=\"{{ value | escape }}\" if option.selected_value=\"=\" endif onchange=\"hpxUpdateVariant()\"\u003e\n                    \u003cspan class=\"hpx-variant-pill\"\u003e\n                      {% assign vl = value | downcase %}\n                      {% if vl contains 'noir' %}\u003cspan class=\"hpx-swatch\" style=\"background:#1a1a1a;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'gris' %}\u003cspan class=\"hpx-swatch\" style=\"background:#9aa0a6;\"\u003e\u003c\/span\u003e\n                      {% endif %}\n                      {{ value }}\n                    \u003c\/span\u003e\n                  \u003c\/label\u003e\n                {% endfor %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          {% endfor %}\n        {% endunless %}\n\n        \u003cselect name=\"id\" id=\"hpx-variant-id\" style=\"display:none;\"\u003e\n          {% for variant in product.variants %}\n            \u003coption value=\"{{ variant.id }}\" if variant=\"=\" product.selected_or_first_available_variant endif unless variant.available endunless data-options=\"{{ variant.options | join: ' \/ ' | escape }}\"\u003e\n              {{ variant.title }}\n            \u003c\/option\u003e\n          {% endfor %}\n        \u003c\/select\u003e\n\n        \u003cdiv class=\"hpx-perks\"\u003e\n          \u003cdiv class=\"hpx-perk\"\u003eLivraison suivie\u003c\/div\u003e\n          \u003cdiv class=\"hpx-perk\"\u003eLavable en machine à 30°C\u003c\/div\u003e\n          \u003cdiv class=\"hpx-perk\"\u003ePaiement sécurisé\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"submit\" name=\"add\" class=\"hpx-cta\"\u003e\n          Ajouter au panier →\n        \u003c\/button\u003e\n      {% endform %}\n\n      \u003cp class=\"hpx-secure\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\"\u003e\u003crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M7 11V7a5 5 0 0110 0v4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Paiement sécurisé — Données protégées\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003cscript\u003e\nfunction hpxSetImg(url, el){\n  var main = document.getElementById('hpx-main-image');\n  if(main){ main.src = url; }\n  document.querySelectorAll('.hpx-thumb').forEach(function(t){ t.classList.remove('active'); });\n  if(el){ el.classList.add('active'); }\n}\nfunction hpxUpdateVariant(){\n  var sel = {};\n  document.querySelectorAll('input[name^=\"options[\"]:checked').forEach(function(r){\n    sel[r.name] = r.value;\n  });\n  var chosen = Object.keys(sel).map(function(k){ return sel[k]; }).join(' \/ ');\n  var select = document.getElementById('hpx-variant-id');\n  if(!select) return;\n  for(var i=0;i\u003cselect.options.length;i++){\n    if(select.options[i].getAttribute('data-options') === chosen){\n      select.selectedIndex = i;\n      break;\n    }\n  }\n}\n\u003c\/script\u003e","brand":"SOMNICARE","offers":[{"title":"Gris","offer_id":53934058963282,"sku":"14:193#Grey","price":18.9,"currency_code":"EUR","in_stock":true},{"title":"Noir","offer_id":53934058996050,"sku":"14:366#Black","price":18.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/houssenoir.png?v=1783288868"},{"product_id":"oreiller-papillon-generation-2","title":"Oreiller Ergonomique Génération 2","description":"\u003cstyle\u003e\n.main-page-container,\n.main-page-content,\n.page-width,\n.shopify-section,\narticle,\n.article-template,\n.template-page .page-width {\n  max-width: 100% !important;\n  padding-left: 0 !important;\n  padding-right: 0 !important;\n}\n\u003c\/style\u003e\n\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=DM+Sans:wght@300;400;500;600;700\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\n\u003cstyle\u003e\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n:root{\n  --navy:#072f63;--blue:#1A6B9A;--blue-acc:#2E86C8;--teal:#20C5BC;\n  --orange:#F4956A;--white:#fff;--off:#F7FAFC;--ice:#EDF5FB;\n  --muted:#5a7a96;--border:rgba(11,61,94,0.09);\n  --fb:'DM Sans',sans-serif;\n  --radius:12px;\n}\n.olx{font-family:var(--fb);color:var(--navy);background:var(--white);overflow-x:clip;width:100%;max-width:100%;-webkit-font-smoothing:antialiased}\n.olx *{font-family:var(--fb) !important;}\n.olx img{display:block;max-width:100%}\n.olx a{text-decoration:none;color:inherit}\n\n@keyframes olx-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}\n.olx-fu{opacity:0;animation:olx-up .7s ease forwards}\n.olx-d1{animation-delay:.1s}\n\n.olx-main{\n  width:100%;max-width:100%;margin:0;padding:40px 0 80px;\n  display:grid;grid-template-columns:100px 1fr 480px;gap:0 32px;align-items:start;\n}\n.olx-gallery{display:contents;}\n.olx-thumbs{display:flex;flex-direction:column;gap:14px;padding:0 0 0 32px;}\n.olx-thumb{width:80px;height:80px;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;background:#ffffff;flex-shrink:0;}\n.olx-thumb img{width:100%;height:100%;object-fit:cover;display:block;}\n.olx-thumb:hover{border-color:rgba(26,107,154,.3);transform:translateX(2px)}\n.olx-thumb.active{border-color:var(--blue-acc);box-shadow:0 4px 16px rgba(46,134,200,.2)}\n.olx-main-img{width:100%;height:auto;min-height:560px;border-radius:20px;background:#ffffff;overflow:hidden;display:flex;align-items:center;justify-content:center;}\n.olx-main-img img{width:100%;height:auto;max-height:640px;object-fit:contain !important;display:block;}\n\n.olx-content{display:block !important;padding-top:20px;padding-right:40px;}\n.olx-social-proof{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap;}\n.olx-badge{display:inline-flex;align-items:center;gap:6px;background:var(--ice);border:1px solid rgba(32,197,188,.2);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600;color:var(--blue);}\n.olx-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal);display:block;flex-shrink:0;}\n\n.olx-title{font-size:clamp(28px,3.2vw,42px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.02em;margin-bottom:16px;}\n.olx-desc{font-size:17px;line-height:1.8;color:var(--muted);font-weight:300;margin-bottom:28px;max-width:400px;}\n\n.olx-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}\n.olx-benefit{display:flex;align-items:center;gap:12px;font-size:16px;color:var(--navy);font-weight:400;}\n.olx-benefit-ico{width:28px;height:28px;border-radius:50%;background:var(--ice);display:flex;align-items:center;justify-content:center;flex-shrink:0;}\n.olx-benefit-ico svg{width:13px;height:13px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round}\n\n.olx-sep{height:1px;background:var(--border);margin:24px 0;}\n\n.olx-specs-inline{margin-bottom:28px;}\n.olx-spec-item{border-top:1px solid var(--border);padding:16px 0;}\n.olx-spec-item:last-child{border-bottom:1px solid var(--border);}\n.olx-spec-q{display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;}\n.olx-spec-q span:first-child{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;}\n.olx-spec-ico{font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;}\n.olx-spec-a{display:none;padding-top:14px;font-size:14.5px;color:var(--muted);line-height:1.85;font-weight:300;}\n\n.olx-offer{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:28px;margin-bottom:20px;}\n.olx-offer-label{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:16px;display:flex;align-items:center;gap:8px;}\n.olx-offer-label::before,.olx-offer-label::after{content:'';flex:1;height:1px;background:rgba(244,149,106,.2)}\n.olx-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:18px;}\n.olx-price{font-size:40px;font-weight:700;color:var(--navy);line-height:1;}\n.olx-price-unit{font-size:15px;color:var(--muted);font-weight:400;}\n.olx-price-old{font-size:22px;color:var(--muted);font-weight:400;text-decoration:line-through;}\n.olx-price-badge{display:inline-flex;align-items:center;background:#F4956A;color:#fff;font-size:13px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.02em;}\n\n.olx-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}\n.olx-perk{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted);}\n.olx-perk::before{content:'✔';color:var(--teal);font-weight:700;font-size:12px;}\n\n.olx-upsell{border:1.5px dashed rgba(32,197,188,0.5);border-radius:12px;padding:16px;margin-bottom:22px;background:var(--ice);}\n.olx-upsell-title{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:12px;}\n.olx-upsell-row{display:flex;align-items:center;gap:12px;}\n.olx-upsell-img{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#fff;border:1px solid var(--border);cursor:pointer;}\n.olx-upsell-img img{width:100%;height:100%;object-fit:cover;}\n.olx-upsell-info{flex:1;min-width:0;}\n.olx-upsell-name{font-size:13.5px;font-weight:600;color:var(--navy);line-height:1.3;margin-bottom:3px;transition:color .18s;}\n.olx-upsell-name:hover{color:var(--teal);}\n.olx-upsell-price{font-size:13px;color:var(--muted);}\n.olx-upsell-price .now{color:var(--navy);font-weight:700;}\n.olx-upsell-price .was{text-decoration:line-through;margin-left:6px;font-size:12px;}\n.olx-upsell-btn{background:var(--navy);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .2s;font-family:var(--fb);}\n.olx-upsell-btn:hover{background:var(--teal);}\n.olx-upsell-btn:disabled{background:var(--teal);cursor:default;}\n\n.olx-variants{margin-bottom:22px;}\n.olx-variants-label{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;}\n.olx-variant-opts{display:flex;gap:10px;flex-wrap:wrap;}\n.olx-variant-opt{cursor:pointer;}\n.olx-variant-opt input{position:absolute;opacity:0;width:0;height:0;}\n.olx-variant-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--navy);transition:all .18s;background:#fff;}\n.olx-variant-opt input:checked + .olx-variant-pill{border-color:var(--navy);background:var(--navy);color:#fff;}\n.olx-swatch{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex-shrink:0;}\n\n.olx-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 32px;border-radius:10px;background:var(--navy);color:#fff !important;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;text-decoration:none;transition:all .22s;font-family:var(--fb);}\n.olx-cta:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 12px 36px rgba(11,61,94,.22)}\n.olx-secure{text-align:center;font-size:13px;color:var(--muted);margin-top:14px;display:flex;align-items:center;justify-content:center;gap:6px;}\n.olx-secure svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;flex-shrink:0;}\n\n.olx-sections{max-width:100%;margin:0 auto;padding:0 60px 80px;}\n.olx-section{padding:72px 0;border-top:1px solid var(--border);}\n.olx-section-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;display:flex;align-items:center;gap:8px;}\n.olx-section-eyebrow::before{content:'';width:20px;height:1px;background:var(--teal);display:block;flex-shrink:0;}\n.olx-section-title{font-size:clamp(26px,3.5vw,42px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.015em;margin-bottom:12px;}\n\n.olx-two{display:grid;grid-template-columns:repeat(2,1fr);gap:56px;max-width:900px;margin:0 auto;}\n.olx-three-num{font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--teal);margin-bottom:14px;}\n.olx-three-item h3{font-size:21px;font-weight:600;color:var(--navy);margin-bottom:12px;line-height:1.25;}\n.olx-three-item p{font-size:15.5px;color:var(--muted);line-height:1.75;font-weight:300;}\n\n.olx-heights{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:900px;margin:40px auto 0;}\n.olx-height-card{border:1px solid var(--border);border-radius:var(--radius);padding:28px;}\n.olx-height-card h3{font-size:20px;font-weight:600;color:var(--navy);margin-bottom:10px;}\n.olx-height-card p{font-size:15px;color:var(--muted);line-height:1.7;font-weight:300;}\n\n.olx-rev-quote{font-size:clamp(20px,2.8vw,30px);font-weight:400;color:var(--navy);line-height:1.4;font-style:italic;margin-bottom:24px;}\n.olx-reviews-wrap{position:relative;overflow:hidden;width:100%;max-width:100%;}\n#olx-reviews{width:100%;max-width:100%;}\n\n.olx-cta-bar{background:var(--navy);border-radius:16px;padding:40px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-top:72px;}\n.olx-cta-bar-title{font-size:clamp(22px,2.6vw,34px);font-weight:600;color:#fff;margin-bottom:6px;line-height:1.15;}\n.olx-cta-bar p{font-size:14px;color:rgba(255,255,255,.5);margin:0;}\n.olx-cta-bar-right{display:flex;align-items:center;gap:24px;flex-shrink:0;}\n.olx-cta-bar-price .main{font-size:34px;font-weight:700;color:#fff;line-height:1;}\n.olx-cta-bar-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--navy) !important;padding:16px 28px;border-radius:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;}\n\n@media(max-width:960px){\n  .olx-main{display:block !important;grid-template-columns:none !important;padding:24px 16px 60px;width:100%;max-width:100%;}\n  .olx-gallery{display:block;width:100%;}\n  .olx-thumbs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:8px 0 0 0;order:2;width:100%;}\n  .olx-thumbs::-webkit-scrollbar{display:none}\n  .olx-thumb{width:60px;height:60px;flex-shrink:0;}\n  .olx-main-img{min-height:340px;order:1;border-radius:16px;width:100%;max-width:100%;margin-bottom:8px;}\n  .olx-main-img img{max-height:380px;width:100%;height:auto;object-fit:contain !important;}\n  .olx-content{padding-right:0;padding-top:12px;width:100%;}\n  .olx-sections{padding:0 16px 60px;width:100%;max-width:100%;}\n  .olx-section{padding:48px 0;}\n  .olx-two{grid-template-columns:1fr;gap:36px;}\n  .olx-heights{grid-template-columns:1fr;gap:20px;}\n  .olx-cta-bar{flex-direction:column;text-align:center;padding:32px 24px;}\n  .olx-cta-bar-right{flex-direction:column;align-items:center;width:100%;}\n  .olx-cta-bar-btn{width:100%;justify-content:center;}\n  .olx-cta{width:100% !important;justify-content:center;}\n  #olx-reviews \u003e div{padding:0 16px !important;}\n}\n@media(max-width:480px){.olx-price{font-size:34px;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"olx\"\u003e\n\n\u003cdiv class=\"olx-main\"\u003e\n\n  \u003cdiv class=\"olx-gallery\"\u003e\n    \u003cdiv class=\"olx-thumbs\"\u003e\n      \u003cdiv class=\"olx-thumb active\" onclick=\"olxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_gris.png?v=1785765865', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_gris.png?v=1785765865\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"olx-thumb\" onclick=\"olxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Image_technique_oreiller_3.0.png?v=1785765865', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Image_technique_oreiller_3.0.png?v=1785765865\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"olx-thumb\" onclick=\"olxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_sous_tout_les_cotes.png?v=1785765865', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_sous_tout_les_cotes.png?v=1785765865\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"olx-thumb\" onclick=\"olxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/entretien_housse_oreiller_3.0.png?v=1785765865', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/entretien_housse_oreiller_3.0.png?v=1785765865\"\u003e\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"olx-main-img\"\u003e\n      \u003cimg id=\"olx-main-image\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_gris.png?v=1785765865\" alt=\"Oreiller papillon large Somnicare\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"olx-content olx-fu olx-d1\"\u003e\n\n    \u003cdiv class=\"olx-social-proof\"\u003e\n      \u003cspan class=\"olx-badge\"\u003eNouveau tissu\u003c\/span\u003e\n    \u003c\/div\u003e\n\n    \u003ch1 class=\"olx-title\"\u003eOreiller papillon large — tissu doux et frais\u003c\/h1\u003e\n\n    \u003cp class=\"olx-desc\"\u003eUn tissu plus doux et plus frais au contact, une surface plus large, et des zones dessinées pour les bras. Notre modèle le plus confortable.\u003c\/p\u003e\n\n    \u003cdiv class=\"olx-benefits\"\u003e\n      \u003cdiv class=\"olx-benefit\"\u003e\n\u003cdiv class=\"olx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eTissu plus doux et plus frais au contact\u003c\/div\u003e\n      \u003cdiv class=\"olx-benefit\"\u003e\n\u003cdiv class=\"olx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eRéversible : un côté haut, un côté bas\u003c\/div\u003e\n      \u003cdiv class=\"olx-benefit\"\u003e\n\u003cdiv class=\"olx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eZones de bras : le bras du dessous a sa place\u003c\/div\u003e\n      \u003cdiv class=\"olx-benefit\"\u003e\n\u003cdiv class=\"olx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003e62 × 37 cm : de la place pour bouger la nuit\u003c\/div\u003e\n      \u003cdiv class=\"olx-benefit\"\u003e\n\u003cdiv class=\"olx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eHousse déhoussable, lavable en machine à 30°C\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"olx-sep\"\u003e\u003c\/div\u003e\n\n    \u003cdiv style=\"font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:8px;\"\u003eCaractéristiques\u003c\/div\u003e\n    \u003cdiv class=\"olx-specs-inline\" id=\"olx-specs\"\u003e\n      \u003cdiv class=\"olx-spec-item\"\u003e\n        \u003cdiv class=\"olx-spec-q\"\u003e\n\u003cspan\u003eMatériaux \u0026amp; dimensions\u003c\/span\u003e\u003cspan class=\"olx-spec-ico\"\u003e+\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"olx-spec-a\"\u003eGarnissage : mousse à mémoire de forme\u003cbr\u003eHousse : tissu doux et frais, déhoussable, fermeture éclair intégrale\u003cbr\u003eDimensions : 62 × 37 cm\u003cbr\u003eForme : papillon réversible, deux hauteurs\u003cbr\u003eColoris : gris\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"olx-spec-item\"\u003e\n        \u003cdiv class=\"olx-spec-q\"\u003e\n\u003cspan\u003eInstructions de lavage\u003c\/span\u003e\u003cspan class=\"olx-spec-ico\"\u003e+\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"olx-spec-a\"\u003eLa housse se retire par la fermeture éclair et se lave en machine à 30°C. Le cœur en mousse ne se lave pas : un aérage régulier suffit. Jamais de sèche-linge, la chaleur abîme la mousse.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"olx-spec-item\"\u003e\n        \u003cdiv class=\"olx-spec-q\"\u003e\n\u003cspan\u003eÀ la réception\u003c\/span\u003e\u003cspan class=\"olx-spec-ico\"\u003e+\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"olx-spec-a\"\u003eL'oreiller arrive compressé pour l'expédition et reprend sa forme en quelques heures à l'air libre. Une légère odeur de mousse neuve est possible pendant 24 à 72 h : c'est normal sur tous les produits en mousse à mémoire de forme.\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"olx-spec-item\"\u003e\n        \u003cdiv class=\"olx-spec-q\"\u003e\n\u003cspan\u003eLivraison\u003c\/span\u003e\u003cspan class=\"olx-spec-ico\"\u003e+\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"olx-spec-a\"\u003eLivraison suivie, numéro de suivi envoyé par e-mail dès l'expédition.\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"olx-offer\"\u003e\n      \u003cdiv class=\"olx-offer-label\"\u003eNotre offre\u003c\/div\u003e\n\n      \u003cdiv class=\"olx-price-row\"\u003e\n        {% if product.compare_at_price \u0026gt; product.price %}\n          \u003cspan class=\"olx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"olx-price-old\"\u003e{{ product.compare_at_price | money }}\u003c\/span\u003e\n          \u003cspan class=\"olx-price-badge\"\u003eSOLDES -30%\u003c\/span\u003e\n        {% else %}\n          \u003cspan class=\"olx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"olx-price-unit\"\u003el'oreiller\u003c\/span\u003e\n        {% endif %}\n      \u003c\/div\u003e\n\n      {%- assign housse = all_products['housse-de-coussin-en-mousse-a-memoire-de-forme-protege-coussin-cervical-housse-de-coussin-de-literie-en-tissu-rafraichissant-portable-cadeau-pour-la-maison-et-les-vacances'] -%}\n      {% if housse and housse.available %}\n        \u003cdiv class=\"olx-upsell\"\u003e\n          \u003cdiv class=\"olx-upsell-title\"\u003eComplétez votre confort\u003c\/div\u003e\n          \u003cdiv class=\"olx-upsell-row\"\u003e\n            \u003ca href=\"{{%20housse.url%20}}\" class=\"olx-upsell-img\"\u003e\u003cimg src=\"{{%20housse.featured_image%20|%20image_url:%20width:%20120%20}}\" alt=\"Housse de rechange\"\u003e\u003c\/a\u003e\n            \u003cdiv class=\"olx-upsell-info\"\u003e\n              \u003ca href=\"{{%20housse.url%20}}\" class=\"olx-upsell-name\" style=\"display:block;text-decoration:none;\"\u003eAjoutez une housse de rechange\u003c\/a\u003e\n              \u003cdiv class=\"olx-upsell-price\"\u003e\n                \u003cspan class=\"now\"\u003e{{ housse.price | money }}\u003c\/span\u003e\n                {% if housse.compare_at_price \u0026gt; housse.price %}\u003cspan class=\"was\"\u003e{{ housse.compare_at_price | money }}\u003c\/span\u003e{% endif %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cbutton type=\"button\" class=\"olx-upsell-btn\" onclick=\"olxAddHousse(this)\" data-variant=\"{{ housse.selected_or_first_available_variant.id }}\"\u003e+ Ajouter\u003c\/button\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      {% endif %}\n\n      {% form 'product', product %}\n        {% unless product.has_only_default_variant %}\n          {% for option in product.options_with_values %}\n            \u003cdiv class=\"olx-variants\"\u003e\n              \u003cdiv class=\"olx-variants-label\"\u003e{{ option.name }}\u003c\/div\u003e\n              \u003cdiv class=\"olx-variant-opts\"\u003e\n                {% for value in option.values %}\n                  \u003clabel class=\"olx-variant-opt\"\u003e\n                    \u003cinput type=\"radio\" name=\"options[{{ option.name }}]\" value=\"{{ value | escape }}\" if option.selected_value=\"=\" endif onchange=\"olxUpdateVariant()\"\u003e\n                    \u003cspan class=\"olx-variant-pill\"\u003e\n                      {% assign vl = value | downcase %}\n                      {% if vl contains 'noir' %}\u003cspan class=\"olx-swatch\" style=\"background:#1a1a1a;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'gris' %}\u003cspan class=\"olx-swatch\" style=\"background:#9aa0a6;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'blanc' %}\u003cspan class=\"olx-swatch\" style=\"background:#f2f2f2;\"\u003e\u003c\/span\u003e\n                      {% endif %}\n                      {{ value }}\n                    \u003c\/span\u003e\n                  \u003c\/label\u003e\n                {% endfor %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          {% endfor %}\n        {% endunless %}\n\n        \u003cselect name=\"id\" id=\"olx-variant-id\" style=\"display:none;\"\u003e\n          {% for variant in product.variants %}\n            \u003coption value=\"{{ variant.id }}\" if variant=\"=\" product.selected_or_first_available_variant endif unless variant.available endunless data-options=\"{{ variant.options | join: ' \/ ' | escape }}\"\u003e\n              {{ variant.title }}\n            \u003c\/option\u003e\n          {% endfor %}\n        \u003c\/select\u003e\n\n        \u003cdiv class=\"olx-perks\"\u003e\n          \u003cdiv class=\"olx-perk\"\u003eLivraison suivie\u003c\/div\u003e\n          \u003cdiv class=\"olx-perk\"\u003eHousse lavable en machine\u003c\/div\u003e\n          \u003cdiv class=\"olx-perk\"\u003ePaiement sécurisé\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"submit\" name=\"add\" class=\"olx-cta\"\u003e\n          Ajouter au panier →\n        \u003c\/button\u003e\n      {% endform %}\n\n      \u003cp class=\"olx-secure\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\"\u003e\u003crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M7 11V7a5 5 0 0110 0v4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Paiement sécurisé — Données protégées\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cdiv class=\"olx-sections\"\u003e\n\n  \u003cdiv class=\"olx-section olx-fu\"\u003e\n    \u003cdiv style=\"text-align:center;max-width:640px;margin:0 auto 56px;\"\u003e\n      \u003cdiv class=\"olx-section-eyebrow\" style=\"justify-content:center;\"\u003eCe qui le distingue\u003c\/div\u003e\n      \u003ch2 class=\"olx-section-title\" style=\"margin-bottom:14px;\"\u003eCe qu'on a changé sur ce modèle\u003c\/h2\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"olx-two\"\u003e\n      \u003cdiv class=\"olx-three-item\"\u003e\n        \u003cdiv class=\"olx-three-num\"\u003e01\u003c\/div\u003e\n        \u003ch3\u003eUn tissu plus doux, plus frais\u003c\/h3\u003e\n        \u003cp\u003eC'est la seule chose que vous touchez pendant sept heures. La plupart des oreillers à mémoire de forme sont habillés d'un polyester rêche qui chauffe au fil de la nuit — et c'est le reproche qui revient le plus souvent, tous modèles confondus.\u003c\/p\u003e\n        \u003cp style=\"margin-top:14px;\"\u003eLe tissu de cette housse est plus doux au contact et reste plus frais. Vous le sentez à la seconde où vous posez la joue dessus, et vous le sentez encore à quatre heures du matin.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"olx-three-item\"\u003e\n        \u003cdiv class=\"olx-three-num\"\u003e02\u003c\/div\u003e\n        \u003ch3\u003eLe bras du dessous a sa place\u003c\/h3\u003e\n        \u003cp\u003eQuand on dort sur le côté, le bras finit toujours au même endroit : sous la tête, où il s'engourdit, ou dans le vide, où l'épaule tire.\u003c\/p\u003e\n        \u003cp style=\"margin-top:14px;\"\u003eLes découpes latérales sont dessinées pour l'accueillir. C'est une différence qu'on ne voit pas sur une photo de face, et qui change la nuit.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"olx-section olx-fu\"\u003e\n    \u003cdiv style=\"text-align:center;max-width:640px;margin:0 auto;\"\u003e\n      \u003cdiv class=\"olx-section-eyebrow\" style=\"justify-content:center;\"\u003eChoisir son côté\u003c\/div\u003e\n      \u003ch2 class=\"olx-section-title\" style=\"margin-bottom:14px;\"\u003eDeux hauteurs dans un seul oreiller\u003c\/h2\u003e\n      \u003cp style=\"font-size:16px;color:var(--muted);line-height:1.6;font-weight:300;\"\u003eIl suffit de le retourner. Testez les deux pendant la première semaine.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"olx-heights\"\u003e\n      \u003cdiv class=\"olx-height-card\"\u003e\n        \u003ch3\u003eLe côté bas\u003c\/h3\u003e\n        \u003cp\u003ePour les carrures fines, les matelas moelleux, et ceux qui dorment surtout sur le dos. La tête s'enfonce moins, la nuque reste dans l'axe.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"olx-height-card\"\u003e\n        \u003ch3\u003eLe côté haut\u003c\/h3\u003e\n        \u003cp\u003ePour les épaules larges, les matelas fermes, et ceux qui dorment sur le côté. C'est la hauteur qui comble l'espace entre l'épaule et l'oreille.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cp style=\"text-align:center;font-size:15px;color:var(--muted);margin-top:28px;font-weight:300;\"\u003eEn cas de doute, commencez par le côté haut : c'est le plus polyvalent.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"olx-section olx-fu\"\u003e\n    \u003cdiv style=\"text-align:center;margin-bottom:48px;\"\u003e\n      \u003cdiv class=\"olx-section-eyebrow\" style=\"justify-content:center;\"\u003eIls l'ont acheté\u003c\/div\u003e\n      \u003ch2 class=\"olx-section-title\" style=\"margin-bottom:10px;\"\u003eCe qu'en disent les acheteurs\u003c\/h2\u003e\n      \u003cp style=\"font-size:13px;color:var(--muted);font-weight:300;\"\u003e\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"olx-reviews-wrap\"\u003e\n      \u003cdiv id=\"olx-reviews\" style=\"display:flex;transition:transform .4s cubic-bezier(.25,.46,.45,.94);\"\u003e\n        \u003cdiv style=\"flex:0 0 100%;padding:0 40px;text-align:center;box-sizing:border-box;\"\u003e\n          \u003cp class=\"olx-rev-quote\"\u003e\"Le trou central s'adapte parfaitement à la tête, les rabats latéraux aident à soulager la tension sur les épaules en favorisant une position détendue des bras.\"\u003c\/p\u003e\n          \u003cdiv style=\"font-size:13px;font-weight:600;color:var(--navy);\"\u003e— s***i\u003c\/div\u003e\n          \u003cdiv style=\"font-size:12px;color:var(--muted);margin-top:4px;\"\u003e22 septembre 2025\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"flex:0 0 100%;padding:0 40px;text-align:center;box-sizing:border-box;\"\u003e\n          \u003cp class=\"olx-rev-quote\"\u003e\"J'ai beaucoup hésité avant de l'acheter mais je ne le regrette vraiment pas. J'ai passé ma première nuit avec et j'ai beaucoup moins remué.\"\u003c\/p\u003e\n          \u003cdiv style=\"font-size:13px;font-weight:600;color:var(--navy);\"\u003e— C***f\u003c\/div\u003e\n          \u003cdiv style=\"font-size:12px;color:var(--muted);margin-top:4px;\"\u003e9 décembre 2025\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"flex:0 0 100%;padding:0 40px;text-align:center;box-sizing:border-box;\"\u003e\n          \u003cp class=\"olx-rev-quote\"\u003e\"Étonnamment confortable, même en dormant sur le côté comme je le fais. J'étais un peu inquiet, mais ça me convient.\"\u003c\/p\u003e\n          \u003cdiv style=\"font-size:13px;font-weight:600;color:var(--navy);\"\u003e— G***d\u003c\/div\u003e\n          \u003cdiv style=\"font-size:12px;color:var(--muted);margin-top:4px;\"\u003e12 octobre 2025\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"flex:0 0 100%;padding:0 40px;text-align:center;box-sizing:border-box;\"\u003e\n          \u003cp class=\"olx-rev-quote\"\u003e\"Grand et très confortable. La housse est agréable au toucher, fraîche, amovible et lavable.\"\u003c\/p\u003e\n          \u003cdiv style=\"font-size:13px;font-weight:600;color:var(--navy);\"\u003e— M***k\u003c\/div\u003e\n          \u003cdiv style=\"font-size:12px;color:var(--muted);margin-top:4px;\"\u003e30 novembre 2025\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"flex:0 0 100%;padding:0 40px;text-align:center;box-sizing:border-box;\"\u003e\n          \u003cp class=\"olx-rev-quote\"\u003e\"J'utilise différents types d'oreillers en mousse à mémoire de forme, mais celui-ci surpasse tout.\"\u003c\/p\u003e\n          \u003cdiv style=\"font-size:13px;font-weight:600;color:var(--navy);\"\u003e— P***c\u003c\/div\u003e\n          \u003cdiv style=\"font-size:12px;color:var(--muted);margin-top:4px;\"\u003e26 novembre 2025\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv style=\"display:flex;justify-content:center;gap:8px;margin-top:36px;\" id=\"olx-rdots\"\u003e\n        \u003cdiv style=\"width:20px;height:4px;border-radius:2px;background:var(--navy);cursor:pointer;transition:all .2s;\"\u003e\u003c\/div\u003e\n        \u003cdiv style=\"width:6px;height:4px;border-radius:2px;background:var(--border);cursor:pointer;transition:all .2s;\"\u003e\u003c\/div\u003e\n        \u003cdiv style=\"width:6px;height:4px;border-radius:2px;background:var(--border);cursor:pointer;transition:all .2s;\"\u003e\u003c\/div\u003e\n        \u003cdiv style=\"width:6px;height:4px;border-radius:2px;background:var(--border);cursor:pointer;transition:all .2s;\"\u003e\u003c\/div\u003e\n        \u003cdiv style=\"width:6px;height:4px;border-radius:2px;background:var(--border);cursor:pointer;transition:all .2s;\"\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"olx-section olx-fu\"\u003e\n    \u003cdiv style=\"max-width:680px;margin:0 auto;\"\u003e\n      \u003cdiv class=\"olx-section-eyebrow\"\u003eQuestions fréquentes\u003c\/div\u003e\n      \u003ch2 class=\"olx-section-title\" style=\"margin-bottom:48px;\"\u003eCe que vous voulez savoir\u003c\/h2\u003e\n      \u003cdiv id=\"olx-faq\"\u003e\n        \u003cdiv class=\"olx-faq-item\" style=\"border-top:1px solid var(--border);padding:24px 0;\"\u003e\n          \u003cdiv class=\"olx-faq-q\" style=\"display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;\"\u003e\n            \u003cspan style=\"font-size:16px;font-weight:600;color:var(--navy);\"\u003eQuelle différence avec votre autre oreiller papillon ?\u003c\/span\u003e\n            \u003cspan class=\"olx-faq-ico\" style=\"font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;\"\u003e+\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"olx-faq-a\" style=\"display:none;padding-top:14px;font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;\"\u003eLe tissu, d'abord : celui-ci est plus doux et plus frais au contact. Ensuite les zones de bras, dessinées sur les côtés. Si vous dormez sur le côté sans savoir où mettre votre bras, c'est celui-là. Sinon, l'autre modèle fait très bien le travail pour dix euros de moins.\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"olx-faq-item\" style=\"border-top:1px solid var(--border);padding:24px 0;\"\u003e\n          \u003cdiv class=\"olx-faq-q\" style=\"display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;\"\u003e\n            \u003cspan style=\"font-size:16px;font-weight:600;color:var(--navy);\"\u003eQuel côté choisir ?\u003c\/span\u003e\n            \u003cspan class=\"olx-faq-ico\" style=\"font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;\"\u003e+\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"olx-faq-a\" style=\"display:none;padding-top:14px;font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;\"\u003eÉpaules larges ou matelas ferme : côté haut. Carrure fine ou matelas moelleux : côté bas. En cas de doute, commencez par le côté haut, et testez l'autre au bout de quelques nuits.\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"olx-faq-item\" style=\"border-top:1px solid var(--border);padding:24px 0;\"\u003e\n          \u003cdiv class=\"olx-faq-q\" style=\"display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;\"\u003e\n            \u003cspan style=\"font-size:16px;font-weight:600;color:var(--navy);\"\u003eCombien de temps pour m'y habituer ?\u003c\/span\u003e\n            \u003cspan class=\"olx-faq-ico\" style=\"font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;\"\u003e+\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"olx-faq-a\" style=\"display:none;padding-top:14px;font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;\"\u003eComptez deux à trois nuits, parfois plus. La forme est très différente d'un oreiller classique : la tête est tenue au lieu de s'enfoncer. Ne jugez pas à la première nuit.\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"olx-faq-item\" style=\"border-top:1px solid var(--border);padding:24px 0;\"\u003e\n          \u003cdiv class=\"olx-faq-q\" style=\"display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;\"\u003e\n            \u003cspan style=\"font-size:16px;font-weight:600;color:var(--navy);\"\u003eEst-ce lavable ?\u003c\/span\u003e\n            \u003cspan class=\"olx-faq-ico\" style=\"font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;\"\u003e+\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"olx-faq-a\" style=\"display:none;padding-top:14px;font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;\"\u003eLa housse se retire par la fermeture éclair et passe en machine à 30°C. Le cœur en mousse ne se lave pas : un aérage régulier suffit, et surtout pas de sèche-linge.\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"olx-faq-item\" style=\"border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px 0;\"\u003e\n          \u003cdiv class=\"olx-faq-q\" style=\"display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:16px;\"\u003e\n            \u003cspan style=\"font-size:16px;font-weight:600;color:var(--navy);\"\u003eQuel est le délai de livraison ?\u003c\/span\u003e\n            \u003cspan class=\"olx-faq-ico\" style=\"font-size:20px;color:var(--blue);font-weight:300;flex-shrink:0;\"\u003e+\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"olx-faq-a\" style=\"display:none;padding-top:14px;font-size:15px;color:var(--muted);line-height:1.75;font-weight:300;\"\u003eUn numéro de suivi vous est envoyé par e-mail dès l'expédition, et vous pouvez suivre le colis jusqu'à votre porte.\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"olx-cta-bar olx-fu\"\u003e\n    \u003cdiv\u003e\n      \u003ch2 class=\"olx-cta-bar-title\"\u003eVous passez un tiers de votre vie dessus.\u003c\/h2\u003e\n      \u003cp\u003eLivraison suivie · Housse lavable · Paiement sécurisé\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"olx-cta-bar-right\"\u003e\n      \u003cdiv class=\"olx-cta-bar-price\"\u003e\n        \u003cdiv class=\"main\"\u003e{{ product.price | money }}\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003ca href=\"#olx-specs\" onclick=\"document.querySelector('.olx-cta').scrollIntoView({behavior:'smooth',block:'center'});return false;\" class=\"olx-cta-bar-btn\"\u003eCommander →\u003c\/a\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003cscript\u003e\nfunction olxSetImg(url, el){\n  var main = document.getElementById('olx-main-image');\n  if(main){ main.src = url; }\n  document.querySelectorAll('.olx-thumb').forEach(function(t){ t.classList.remove('active'); });\n  if(el){ el.classList.add('active'); }\n}\nvar olxRi = 0;\nfunction olxGoTo(n){\n  olxRi = ((n % 5) + 5) % 5;\n  var track = document.getElementById('olx-reviews');\n  if(track) track.style.transform = 'translateX(-' + (olxRi*100) + '%)';\n  document.querySelectorAll('#olx-rdots div').forEach(function(d,i){\n    d.style.width = i===olxRi ? '20px' : '6px';\n    d.style.background = i===olxRi ? '#072f63' : 'rgba(11,61,94,0.09)';\n  });\n}\ndocument.querySelectorAll('#olx-rdots div').forEach(function(d,i){ d.addEventListener('click', function(){ olxGoTo(i); }); });\nsetInterval(function(){ olxGoTo(olxRi+1); }, 5000);\ndocument.querySelectorAll('.olx-faq-item').forEach(function(item){\n  var q = item.querySelector('.olx-faq-q');\n  if(!q) return;\n  q.addEventListener('click', function(){\n    var a = item.querySelector('.olx-faq-a');\n    var ico = item.querySelector('.olx-faq-ico');\n    var open = a.style.display === 'block';\n    document.querySelectorAll('.olx-faq-a').forEach(function(el){ el.style.display='none'; });\n    document.querySelectorAll('.olx-faq-ico').forEach(function(el){ el.textContent='+'; });\n    if(!open){ a.style.display='block'; ico.textContent='−'; }\n  });\n});\ndocument.querySelectorAll('.olx-spec-item').forEach(function(item){\n  var q = item.querySelector('.olx-spec-q');\n  if(!q) return;\n  q.addEventListener('click', function(){\n    var a = item.querySelector('.olx-spec-a');\n    var ico = item.querySelector('.olx-spec-ico');\n    var open = a.style.display === 'block';\n    document.querySelectorAll('.olx-spec-a').forEach(function(el){ el.style.display='none'; });\n    document.querySelectorAll('.olx-spec-ico').forEach(function(el){ el.textContent='+'; });\n    if(!open){ a.style.display='block'; ico.textContent='−'; }\n  });\n});\nfunction olxAddHousse(btn){\n  var vid = btn.getAttribute('data-variant');\n  btn.disabled = true;\n  btn.textContent = 'Ajout...';\n  fetch('\/cart\/add.js', {\n    method:'POST',\n    headers:{'Content-Type':'application\/json'},\n    body: JSON.stringify({ id: vid, quantity: 1 })\n  })\n  .then(function(r){ return r.json(); })\n  .then(function(){\n    btn.textContent = 'Ajoutée';\n    setTimeout(function(){ window.location.href = '\/cart'; }, 700);\n  })\n  .catch(function(){\n    btn.disabled = false;\n    btn.textContent = '+ Ajouter';\n    alert(\"Impossible d'ajouter la housse pour le moment.\");\n  });\n}\nfunction olxUpdateVariant(){\n  var sel = {};\n  document.querySelectorAll('input[name^=\"options[\"]:checked').forEach(function(r){\n    sel[r.name] = r.value;\n  });\n  var chosen = Object.keys(sel).map(function(k){ return sel[k]; }).join(' \/ ');\n  var select = document.getElementById('olx-variant-id');\n  if(!select) return;\n  for(var i=0;i\u003cselect.options.length;i++){\n    if(select.options[i].getAttribute('data-options') === chosen){\n      select.selectedIndex = i;\n      break;\n    }\n  }\n}\n\u003c\/script\u003e","brand":"SOMNICARE","offers":[{"title":"Gris","offer_id":54149963776338,"sku":"14:10#Grey","price":79.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_3.0_gris.png?v=1785765865"},{"product_id":"housse-de-rechange-generation-2","title":"Housse de rechange Génération 2","description":"\u003cstyle\u003e\n.main-page-container,\n.main-page-content,\n.page-width,\n.shopify-section,\narticle,\n.article-template,\n.template-page .page-width {\n  max-width: 100% !important;\n  padding-left: 0 !important;\n  padding-right: 0 !important;\n}\n\u003c\/style\u003e\n\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=DM+Sans:wght@300;400;500;600;700\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\n\u003cstyle\u003e\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n:root{\n  --navy:#072f63;--blue:#1A6B9A;--blue-acc:#2E86C8;--teal:#20C5BC;\n  --orange:#F4956A;--white:#fff;--off:#F7FAFC;--ice:#EDF5FB;\n  --muted:#5a7a96;--border:rgba(11,61,94,0.09);\n  --fb:'DM Sans',sans-serif;\n  --radius:12px;\n}\n.hpx{font-family:var(--fb);color:var(--navy);background:var(--white);overflow-x:clip;width:100%;max-width:100%;-webkit-font-smoothing:antialiased}\n.hpx *{font-family:var(--fb) !important;}\n.hpx img{display:block;max-width:100%}\n.hpx a{text-decoration:none;color:inherit}\n\n@keyframes hpx-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}\n.hpx-fu{opacity:0;animation:hpx-up .7s ease forwards}\n.hpx-d1{animation-delay:.1s}\n\n.hpx-main{\n  width:100%;max-width:1200px;margin:0 auto;padding:40px 40px 80px;\n  display:grid;grid-template-columns:100px 1fr 460px;gap:0 32px;align-items:start;\n}\n.hpx-gallery{display:contents;}\n.hpx-thumbs{display:flex;flex-direction:column;gap:14px;}\n.hpx-thumb{width:80px;height:80px;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;background:#ffffff;flex-shrink:0;}\n.hpx-thumb img{width:100%;height:100%;object-fit:cover;display:block;}\n.hpx-thumb:hover{border-color:rgba(26,107,154,.3);transform:translateX(2px)}\n.hpx-thumb.active{border-color:var(--blue-acc);box-shadow:0 4px 16px rgba(46,134,200,.2)}\n.hpx-main-img{width:100%;height:auto;min-height:520px;border-radius:20px;background:#ffffff;overflow:hidden;display:flex;align-items:center;justify-content:center;}\n.hpx-main-img img{width:100%;height:auto;max-height:600px;object-fit:contain !important;display:block;}\n\n.hpx-content{display:block !important;padding-top:20px;}\n.hpx-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;display:flex;align-items:center;gap:8px;}\n.hpx-eyebrow::before{content:'';width:20px;height:1px;background:var(--teal);display:block;flex-shrink:0;}\n.hpx-title{font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.02em;margin-bottom:16px;}\n.hpx-desc{font-size:16px;line-height:1.8;color:var(--muted);font-weight:300;margin-bottom:26px;max-width:420px;}\n\n.hpx-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}\n.hpx-benefit{display:flex;align-items:center;gap:12px;font-size:15.5px;color:var(--navy);font-weight:400;}\n.hpx-benefit-ico{width:26px;height:26px;border-radius:50%;background:var(--ice);display:flex;align-items:center;justify-content:center;flex-shrink:0;}\n.hpx-benefit-ico svg{width:12px;height:12px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round}\n\n.hpx-note{background:var(--ice);border-radius:10px;padding:14px 16px;margin-bottom:24px;font-size:14.5px;line-height:1.6;color:var(--navy);}\n.hpx-note strong{font-weight:600;}\n\n.hpx-offer{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:26px;margin-bottom:20px;}\n.hpx-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:22px;flex-wrap:wrap;}\n.hpx-price{font-size:38px;font-weight:700;color:var(--navy);line-height:1;}\n.hpx-price-old{font-size:21px;color:var(--muted);font-weight:400;text-decoration:line-through;}\n.hpx-price-badge{display:inline-flex;align-items:center;background:#F4956A;color:#fff;font-size:13px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.02em;}\n\n.hpx-variants{margin-bottom:22px;}\n.hpx-variants-label{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;}\n.hpx-variant-opts{display:flex;gap:10px;flex-wrap:wrap;}\n.hpx-variant-opt{cursor:pointer;}\n.hpx-variant-opt input{position:absolute;opacity:0;width:0;height:0;}\n.hpx-variant-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--navy);transition:all .18s;background:#fff;}\n.hpx-variant-opt input:checked + .hpx-variant-pill{border-color:var(--navy);background:var(--navy);color:#fff;}\n.hpx-swatch{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex-shrink:0;}\n\n.hpx-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}\n.hpx-perk{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted);}\n.hpx-perk::before{content:'✔';color:var(--teal);font-weight:700;font-size:12px;}\n\n.hpx-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 32px;border-radius:10px;background:var(--navy);color:#fff !important;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;text-decoration:none;transition:all .22s;font-family:var(--fb);}\n.hpx-cta:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 12px 36px rgba(11,61,94,.22)}\n.hpx-secure{text-align:center;font-size:13px;color:var(--muted);margin-top:14px;display:flex;align-items:center;justify-content:center;gap:6px;}\n.hpx-secure svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;flex-shrink:0;}\n\n@media(max-width:960px){\n  .hpx-main{display:block !important;grid-template-columns:none !important;padding:24px 16px 60px;width:100%;max-width:100%;}\n  .hpx-gallery{display:block;width:100%;}\n  .hpx-thumbs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:8px 0 0 0;order:2;width:100%;}\n  .hpx-thumbs::-webkit-scrollbar{display:none}\n  .hpx-thumb{width:60px;height:60px;flex-shrink:0;}\n  .hpx-main-img{min-height:320px;order:1;border-radius:16px;width:100%;max-width:100%;margin-bottom:8px;}\n  .hpx-main-img img{max-height:360px;width:100%;height:auto;object-fit:contain !important;}\n  .hpx-content{padding-top:12px;width:100%;}\n  .hpx-cta{width:100% !important;justify-content:center;}\n}\n@media(max-width:480px){.hpx-price{font-size:32px;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"hpx\"\u003e\n\n\u003cdiv class=\"hpx-main\"\u003e\n\n  \u003cdiv class=\"hpx-gallery\"\u003e\n    \u003cdiv class=\"hpx-thumbs\"\u003e\n      \u003cdiv class=\"hpx-thumb active\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_oreiller_3.0.png?v=1785866142', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_oreiller_3.0.png?v=1785866142\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_Grise_oreiller_3.0.png?v=1785866142', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSE_Grise_oreiller_3.0.png?v=1785866142\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/entretien_housse_oreiller_3.0_12a11e5a-d73e-4fab-8008-4199afb41701.png?v=1785866143', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/entretien_housse_oreiller_3.0_12a11e5a-d73e-4fab-8008-4199afb41701.png?v=1785866143\"\u003e\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hpx-main-img\"\u003e\n      \u003cimg id=\"hpx-main-image\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/housse_oreiller_3.0.png?v=1785866142\" alt=\"Housse de rechange pour oreiller papillon large Somnicare\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"hpx-content hpx-fu hpx-d1\"\u003e\n\n    \u003cdiv class=\"hpx-eyebrow\"\u003eAccessoire Somnicare\u003c\/div\u003e\n    \u003ch1 class=\"hpx-title\"\u003eHousse de rechange — Oreiller papillon large\u003c\/h1\u003e\n    \u003cp class=\"hpx-desc\"\u003eLe même tissu doux et frais que celui livré avec l'oreiller papillon large. Pratique pour alterner pendant le lavage, sans passer une nuit sur la mousse nue.\u003c\/p\u003e\n\n    \u003cdiv class=\"hpx-benefits\"\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eTissu doux au contact, qui reste frais la nuit\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eÉpouse la forme papillon large et ses zones de bras\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eFermeture éclair intégrale, se retire en quatre gestes\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eLavable en machine à 30°C\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"hpx-note\"\u003e\n      \u003cstrong\u003eCompatible uniquement avec l'oreiller papillon large.\u003c\/strong\u003e Elle ne va pas sur notre premier modèle papillon : la forme est différente.\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"hpx-offer\"\u003e\n      \u003cdiv class=\"hpx-price-row\"\u003e\n        {% if product.compare_at_price \u0026gt; product.price %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-old\"\u003e{{ product.compare_at_price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-badge\"\u003eSOLDES -30%\u003c\/span\u003e\n        {% else %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n        {% endif %}\n      \u003c\/div\u003e\n\n      {% form 'product', product %}\n        {% unless product.has_only_default_variant %}\n          {% for option in product.options_with_values %}\n            \u003cdiv class=\"hpx-variants\"\u003e\n              \u003cdiv class=\"hpx-variants-label\"\u003e{{ option.name }}\u003c\/div\u003e\n              \u003cdiv class=\"hpx-variant-opts\"\u003e\n                {% for value in option.values %}\n                  \u003clabel class=\"hpx-variant-opt\"\u003e\n                    \u003cinput type=\"radio\" name=\"options[{{ option.name }}]\" value=\"{{ value | escape }}\" if option.selected_value=\"=\" endif onchange=\"hpxUpdateVariant()\"\u003e\n                    \u003cspan class=\"hpx-variant-pill\"\u003e\n                      {% assign vl = value | downcase %}\n                      {% if vl contains 'noir' %}\u003cspan class=\"hpx-swatch\" style=\"background:#1a1a1a;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'gris' %}\u003cspan class=\"hpx-swatch\" style=\"background:#9aa0a6;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'blanc' %}\u003cspan class=\"hpx-swatch\" style=\"background:#f2f2f2;\"\u003e\u003c\/span\u003e\n                      {% endif %}\n                      {{ value }}\n                    \u003c\/span\u003e\n                  \u003c\/label\u003e\n                {% endfor %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          {% endfor %}\n        {% endunless %}\n\n        \u003cselect name=\"id\" id=\"hpx-variant-id\" style=\"display:none;\"\u003e\n          {% for variant in product.variants %}\n            \u003coption value=\"{{ variant.id }}\" if variant=\"=\" product.selected_or_first_available_variant endif unless variant.available endunless data-options=\"{{ variant.options | join: ' \/ ' | escape }}\"\u003e\n              {{ variant.title }}\n            \u003c\/option\u003e\n          {% endfor %}\n        \u003c\/select\u003e\n\n        \u003cdiv class=\"hpx-perks\"\u003e\n          \u003cdiv class=\"hpx-perk\"\u003eLivraison suivie\u003c\/div\u003e\n          \u003cdiv class=\"hpx-perk\"\u003eLavable en machine à 30°C\u003c\/div\u003e\n          \u003cdiv class=\"hpx-perk\"\u003ePaiement sécurisé\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"submit\" name=\"add\" class=\"hpx-cta\"\u003e\n          Ajouter au panier →\n        \u003c\/button\u003e\n      {% endform %}\n\n      \u003cp class=\"hpx-secure\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\"\u003e\u003crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M7 11V7a5 5 0 0110 0v4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Paiement sécurisé — Données protégées\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003cscript\u003e\nfunction hpxSetImg(url, el){\n  var main = document.getElementById('hpx-main-image');\n  if(main){ main.src = url; }\n  document.querySelectorAll('.hpx-thumb').forEach(function(t){ t.classList.remove('active'); });\n  if(el){ el.classList.add('active'); }\n}\nfunction hpxUpdateVariant(){\n  var sel = {};\n  document.querySelectorAll('input[name^=\"options[\"]:checked').forEach(function(r){\n    sel[r.name] = r.value;\n  });\n  var chosen = Object.keys(sel).map(function(k){ return sel[k]; }).join(' \/ ');\n  var select = document.getElementById('hpx-variant-id');\n  if(!select) return;\n  for(var i=0;i\u003cselect.options.length;i++){\n    if(select.options[i].getAttribute('data-options') === chosen){\n      select.selectedIndex = i;\n      break;\n    }\n  }\n}\n\u003c\/script\u003e","brand":"SOMNICARE","offers":[{"title":"Gris","offer_id":54149967348050,"sku":"14:193#Grey","price":18.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/HOUSSEGriseoreiller3.0.png?v=1785924228"},{"product_id":"masque-de-sommeil-3d","title":"Masque de sommeil 3D à mémoire de forme","description":"\u003cstyle\u003e\n.main-page-container,\n.main-page-content,\n.page-width,\n.shopify-section,\narticle,\n.article-template,\n.template-page .page-width {\n  max-width: 100% !important;\n  padding-left: 0 !important;\n  padding-right: 0 !important;\n}\n\u003c\/style\u003e\n\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=DM+Sans:wght@300;400;500;600;700\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\n\u003cstyle\u003e\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n:root{\n  --navy:#072f63;--blue:#1A6B9A;--blue-acc:#2E86C8;--teal:#20C5BC;\n  --orange:#F4956A;--white:#fff;--off:#F7FAFC;--ice:#EDF5FB;\n  --muted:#5a7a96;--border:rgba(11,61,94,0.09);\n  --fb:'DM Sans',sans-serif;\n  --radius:12px;\n}\n.hpx{font-family:var(--fb);color:var(--navy);background:var(--white);overflow-x:clip;width:100%;max-width:100%;-webkit-font-smoothing:antialiased}\n.hpx *{font-family:var(--fb) !important;}\n.hpx img{display:block;max-width:100%}\n.hpx a{text-decoration:none;color:inherit}\n\n@keyframes hpx-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}\n.hpx-fu{opacity:0;animation:hpx-up .7s ease forwards}\n.hpx-d1{animation-delay:.1s}\n\n.hpx-main{\n  width:100%;max-width:1200px;margin:0 auto;padding:40px 40px 80px;\n  display:grid;grid-template-columns:100px 1fr 460px;gap:0 32px;align-items:start;\n}\n.hpx-gallery{display:contents;}\n.hpx-thumbs{display:flex;flex-direction:column;gap:14px;}\n.hpx-thumb{width:80px;height:80px;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;background:#ffffff;flex-shrink:0;}\n.hpx-thumb img{width:100%;height:100%;object-fit:cover;display:block;}\n.hpx-thumb:hover{border-color:rgba(26,107,154,.3);transform:translateX(2px)}\n.hpx-thumb.active{border-color:var(--blue-acc);box-shadow:0 4px 16px rgba(46,134,200,.2)}\n.hpx-main-img{width:100%;height:auto;min-height:520px;border-radius:20px;background:#ffffff;overflow:hidden;display:flex;align-items:center;justify-content:center;}\n.hpx-main-img img{width:100%;height:auto;max-height:600px;object-fit:contain !important;display:block;}\n\n.hpx-content{display:block !important;padding-top:20px;}\n.hpx-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;display:flex;align-items:center;gap:8px;}\n.hpx-eyebrow::before{content:'';width:20px;height:1px;background:var(--teal);display:block;flex-shrink:0;}\n.hpx-title{font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.02em;margin-bottom:16px;}\n\n.hpx-honest{\n  font-size:16.5px;line-height:1.75;color:var(--muted);font-weight:300;\n  margin-bottom:26px;max-width:420px;\n}\n.hpx-honest strong{color:var(--navy);font-weight:600;}\n\n.hpx-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}\n.hpx-benefit{display:flex;align-items:center;gap:12px;font-size:15.5px;color:var(--navy);font-weight:400;}\n.hpx-benefit-ico{width:26px;height:26px;border-radius:50%;background:var(--ice);display:flex;align-items:center;justify-content:center;flex-shrink:0;}\n.hpx-benefit-ico svg{width:12px;height:12px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round}\n\n.hpx-offer{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:26px;margin-bottom:20px;}\n.hpx-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:22px;flex-wrap:wrap;}\n.hpx-price{font-size:38px;font-weight:700;color:var(--navy);line-height:1;}\n.hpx-price-old{font-size:21px;color:var(--muted);font-weight:400;text-decoration:line-through;}\n.hpx-price-badge{display:inline-flex;align-items:center;background:#F4956A;color:#fff;font-size:13px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.02em;}\n\n.hpx-variants{margin-bottom:22px;}\n.hpx-variants-label{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;}\n.hpx-variant-opts{display:flex;gap:10px;flex-wrap:wrap;}\n.hpx-variant-opt{cursor:pointer;}\n.hpx-variant-opt input{position:absolute;opacity:0;width:0;height:0;}\n.hpx-variant-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--navy);transition:all .18s;background:#fff;}\n.hpx-variant-opt input:checked + .hpx-variant-pill{border-color:var(--navy);background:var(--navy);color:#fff;}\n.hpx-swatch{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex-shrink:0;}\n\n.hpx-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}\n.hpx-perk{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted);}\n.hpx-perk::before{content:'✔';color:var(--teal);font-weight:700;font-size:12px;}\n\n.hpx-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 32px;border-radius:10px;background:var(--navy);color:#fff !important;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;text-decoration:none;transition:all .22s;}\n.hpx-cta:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 12px 36px rgba(11,61,94,.22)}\n.hpx-secure{text-align:center;font-size:13px;color:var(--muted);margin-top:14px;display:flex;align-items:center;justify-content:center;gap:6px;}\n.hpx-secure svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;flex-shrink:0;}\n\n@media(max-width:960px){\n  .hpx-main{display:block !important;grid-template-columns:none !important;padding:24px 16px 60px;width:100%;max-width:100%;}\n  .hpx-gallery{display:block;width:100%;}\n  .hpx-thumbs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:8px 0 0 0;order:2;width:100%;}\n  .hpx-thumbs::-webkit-scrollbar{display:none}\n  .hpx-thumb{width:60px;height:60px;flex-shrink:0;}\n  .hpx-main-img{min-height:320px;order:1;border-radius:16px;width:100%;max-width:100%;margin-bottom:8px;}\n  .hpx-main-img img{max-height:360px;width:100%;height:auto;object-fit:contain !important;}\n  .hpx-content{padding-top:12px;width:100%;}\n  .hpx-honest{max-width:100%;}\n  .hpx-cta{width:100% !important;justify-content:center;}\n}\n@media(max-width:480px){.hpx-price{font-size:32px;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"hpx\"\u003e\n\n\u003cdiv class=\"hpx-main\"\u003e\n\n  \u003cdiv class=\"hpx-gallery\"\u003e\n    \u003cdiv class=\"hpx-thumbs\"\u003e\n      \u003cdiv class=\"hpx-thumb active\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_caracteristique_masque_ac352c46-750f-4397-8014-7090d81ff3f8.png?v=1785700248', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_caracteristique_masque_ac352c46-750f-4397-8014-7090d81ff3f8.png?v=1785700248\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/masque_3D_vu_de_l_interieur.png?v=1786136354', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/masque_3D_vu_de_l_interieur.png?v=1786136354\" alt=\"Vue intérieure du masque, coques creusées\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/IMAGE_MASQUE_YEUX.png?v=1786018725', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/IMAGE_MASQUE_YEUX.png?v=1786018725\" alt=\"Masque de sommeil 3D posé sur un lit\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_monsieur_avec_masque_de_nuit.png?v=1785697661', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_monsieur_avec_masque_de_nuit.png?v=1785697661\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"hpx-thumb\" onclick=\"hpxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_monsieur_avec_masque_sur_le_cote.png?v=1785697902', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_monsieur_avec_masque_sur_le_cote.png?v=1785697902\"\u003e\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hpx-main-img\"\u003e\n      \u003cimg id=\"hpx-main-image\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_caracteristique_masque_ac352c46-750f-4397-8014-7090d81ff3f8.png?v=1785700248\" alt=\"Masque de sommeil Somnicare\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"hpx-content hpx-fu hpx-d1\"\u003e\n\n    \u003cdiv class=\"hpx-eyebrow\"\u003eAccessoire Somnicare\u003c\/div\u003e\n    \u003ch1 class=\"hpx-title\"\u003eMasque de sommeil 3D en mousse à mémoire de forme\u003c\/h1\u003e\n\n    \u003cp class=\"hpx-honest\"\u003e\u003cstrong\u003eMoins joli qu'un masque en soie.\u003c\/strong\u003e On l'assume : les coques creusées font un peu technique. Mais vos cils ne frottent pas contre le tissu, et il ne passe pas de lumière par le nez.\u003c\/p\u003e\n\n    \u003cdiv class=\"hpx-benefits\"\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eOccultation totale, y compris autour du nez\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eCoques 3D : aucune pression sur les yeux\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eBords inclinés : sur le dos comme sur le côté\u003c\/div\u003e\n      \u003cdiv class=\"hpx-benefit\"\u003e\n\u003cdiv class=\"hpx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eLavable en machine à 30°C\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"hpx-offer\"\u003e\n      \u003cdiv class=\"hpx-price-row\"\u003e\n        {% if product.compare_at_price \u0026gt; product.price %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-old\"\u003e{{ product.compare_at_price | money }}\u003c\/span\u003e\n          \u003cspan class=\"hpx-price-badge\"\u003eSOLDES -30%\u003c\/span\u003e\n        {% else %}\n          \u003cspan class=\"hpx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n        {% endif %}\n      \u003c\/div\u003e\n\n      {% form 'product', product %}\n        {% unless product.has_only_default_variant %}\n          {% for option in product.options_with_values %}\n            \u003cdiv class=\"hpx-variants\"\u003e\n              \u003cdiv class=\"hpx-variants-label\"\u003e{{ option.name }}\u003c\/div\u003e\n              \u003cdiv class=\"hpx-variant-opts\"\u003e\n                {% for value in option.values %}\n                  \u003clabel class=\"hpx-variant-opt\"\u003e\n                    \u003cinput type=\"radio\" name=\"options[{{ option.name }}]\" value=\"{{ value | escape }}\" if option.selected_value=\"=\" endif onchange=\"hpxUpdateVariant()\"\u003e\n                    \u003cspan class=\"hpx-variant-pill\"\u003e\n                      {% assign vl = value | downcase %}\n                      {% if vl contains 'noir' %}\u003cspan class=\"hpx-swatch\" style=\"background:#1a1a1a;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'gris' %}\u003cspan class=\"hpx-swatch\" style=\"background:#9aa0a6;\"\u003e\u003c\/span\u003e\n                      {% endif %}\n                      {{ value }}\n                    \u003c\/span\u003e\n                  \u003c\/label\u003e\n                {% endfor %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          {% endfor %}\n        {% endunless %}\n\n        \u003cselect name=\"id\" id=\"hpx-variant-id\" style=\"display:none;\"\u003e\n          {% for variant in product.variants %}\n            \u003coption value=\"{{ variant.id }}\" if variant=\"=\" product.selected_or_first_available_variant endif unless variant.available endunless data-options=\"{{ variant.options | join: ' \/ ' | escape }}\"\u003e\n              {{ variant.title }}\n            \u003c\/option\u003e\n          {% endfor %}\n        \u003c\/select\u003e\n\n        \u003cdiv class=\"hpx-perks\"\u003e\n          \u003cdiv class=\"hpx-perk\"\u003eLivraison suivie\u003c\/div\u003e\n          \u003cdiv class=\"hpx-perk\"\u003ePaiement sécurisé\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"submit\" name=\"add\" class=\"hpx-cta\"\u003e\n          Ajouter au panier →\n        \u003c\/button\u003e\n      {% endform %}\n\n      \u003cp class=\"hpx-secure\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\"\u003e\u003crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M7 11V7a5 5 0 0110 0v4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Paiement sécurisé — Données protégées\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003cscript\u003e\nfunction hpxSetImg(url, el){\n  var main = document.getElementById('hpx-main-image');\n  if(main){ main.src = url; }\n  document.querySelectorAll('.hpx-thumb').forEach(function(t){ t.classList.remove('active'); });\n  if(el){ el.classList.add('active'); }\n}\nfunction hpxUpdateVariant(){\n  var sel = {};\n  document.querySelectorAll('input[name^=\"options[\"]:checked').forEach(function(r){\n    sel[r.name] = r.value;\n  });\n  var chosen = Object.keys(sel).map(function(k){ return sel[k]; }).join(' \/ ');\n  var select = document.getElementById('hpx-variant-id');\n  if(!select) return;\n  for(var i=0;i\u003cselect.options.length;i++){\n    if(select.options[i].getAttribute('data-options') === chosen){\n      select.selectedIndex = i;\n      break;\n    }\n  }\n}\n\u003c\/script\u003e","brand":"SOMNICARE","offers":[{"title":"Default Title","offer_id":54150237782354,"sku":"\u003cnone\u003e","price":19.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/masque_3D_vu_de_l_interieur_d3255786-9728-4d2f-b836-540ecf470453.png?v=1786188733"},{"product_id":"oreiller-de-voyage","title":"Oreiller de voyage à mémoire de forme","description":"\u003cstyle\u003e\n.main-page-container,\n.main-page-content,\n.page-width,\n.shopify-section,\narticle,\n.article-template,\n.template-page .page-width {\n  max-width: 100% !important;\n  padding-left: 0 !important;\n  padding-right: 0 !important;\n}\n\u003c\/style\u003e\n\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=DM+Sans:wght@300;400;500;600;700\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\n\u003cstyle\u003e\n*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}\n:root{\n  --navy:#072f63;--blue:#1A6B9A;--blue-acc:#2E86C8;--teal:#20C5BC;\n  --orange:#F4956A;--white:#fff;--off:#F7FAFC;--ice:#EDF5FB;\n  --muted:#5a7a96;--border:rgba(11,61,94,0.09);\n  --fb:'DM Sans',sans-serif;\n  --radius:12px;\n}\n.vyx{font-family:var(--fb);color:var(--navy);background:var(--white);overflow-x:clip;width:100%;max-width:100%;-webkit-font-smoothing:antialiased}\n.vyx *{font-family:var(--fb) !important;}\n.vyx img{display:block;max-width:100%}\n.vyx a{text-decoration:none;color:inherit}\n\n@keyframes vyx-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}\n.vyx-fu{opacity:0;animation:vyx-up .7s ease forwards}\n.vyx-d1{animation-delay:.1s}\n\n.vyx-main{\n  width:100%;max-width:1200px;margin:0 auto;padding:40px 40px 80px;\n  display:grid;grid-template-columns:100px 1fr 460px;gap:0 32px;align-items:start;\n}\n.vyx-gallery{display:contents;}\n.vyx-thumbs{display:flex;flex-direction:column;gap:14px;}\n.vyx-thumb{width:80px;height:80px;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;background:#fff;flex-shrink:0;}\n.vyx-thumb img{width:100%;height:100%;object-fit:cover;display:block;}\n.vyx-thumb:hover{border-color:rgba(26,107,154,.3);transform:translateX(2px)}\n.vyx-thumb.active{border-color:var(--blue-acc);box-shadow:0 4px 16px rgba(46,134,200,.2)}\n.vyx-main-img{width:100%;height:auto;min-height:520px;border-radius:20px;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;}\n.vyx-main-img img{width:100%;height:auto;max-height:600px;object-fit:contain !important;display:block;}\n\n.vyx-content{display:block !important;padding-top:20px;}\n.vyx-eyebrow{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;display:flex;align-items:center;gap:8px;}\n.vyx-eyebrow::before{content:'';width:20px;height:1px;background:var(--teal);display:block;flex-shrink:0;}\n.vyx-title{font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.1;color:var(--navy);letter-spacing:-.02em;margin-bottom:16px;}\n\n.vyx-honest{font-size:16.5px;line-height:1.75;color:var(--muted);font-weight:300;margin-bottom:26px;max-width:420px;}\n.vyx-honest strong{color:var(--navy);font-weight:600;}\n\n.vyx-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;}\n.vyx-benefit{display:flex;align-items:center;gap:12px;font-size:15.5px;color:var(--navy);font-weight:400;}\n.vyx-benefit-ico{width:26px;height:26px;border-radius:50%;background:var(--ice);display:flex;align-items:center;justify-content:center;flex-shrink:0;}\n.vyx-benefit-ico svg{width:12px;height:12px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round}\n\n.vyx-offer{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:26px;margin-bottom:20px;}\n.vyx-price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:22px;flex-wrap:wrap;}\n.vyx-price{font-size:38px;font-weight:700;color:var(--navy);line-height:1;}\n.vyx-price-old{font-size:21px;color:var(--muted);font-weight:400;text-decoration:line-through;}\n.vyx-price-badge{display:inline-flex;align-items:center;background:var(--orange);color:#fff;font-size:13px;font-weight:700;padding:5px 12px;border-radius:20px;letter-spacing:.02em;}\n\n.vyx-variants{margin-bottom:22px;}\n.vyx-variants-label{font-size:13px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px;}\n.vyx-variant-opts{display:flex;gap:10px;flex-wrap:wrap;}\n.vyx-variant-opt{cursor:pointer;}\n.vyx-variant-opt input{position:absolute;opacity:0;width:0;height:0;}\n.vyx-variant-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--navy);transition:all .18s;background:#fff;}\n.vyx-variant-opt input:checked + .vyx-variant-pill{border-color:var(--navy);background:var(--navy);color:#fff;}\n.vyx-swatch{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex-shrink:0;}\n\n.vyx-perks{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}\n.vyx-perk{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted);}\n.vyx-perk::before{content:'✔';color:var(--teal);font-weight:700;font-size:12px;}\n\n.vyx-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:18px 32px;border-radius:10px;background:var(--navy);color:#fff !important;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;transition:all .22s;}\n.vyx-cta:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 12px 36px rgba(11,61,94,.22)}\n.vyx-secure{text-align:center;font-size:13px;color:var(--muted);margin-top:14px;display:flex;align-items:center;justify-content:center;gap:6px;}\n.vyx-secure svg{width:13px;height:13px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;flex-shrink:0;}\n\n@media(max-width:960px){\n  .vyx-main{display:block !important;grid-template-columns:none !important;padding:24px 16px 60px;width:100%;max-width:100%;}\n  .vyx-gallery{display:block;width:100%;}\n  .vyx-thumbs{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:8px 0 0 0;order:2;width:100%;}\n  .vyx-thumbs::-webkit-scrollbar{display:none}\n  .vyx-thumb{width:60px;height:60px;flex-shrink:0;}\n  .vyx-main-img{min-height:320px;order:1;border-radius:16px;width:100%;margin-bottom:8px;}\n  .vyx-main-img img{max-height:360px;}\n  .vyx-content{padding-top:12px;width:100%;}\n  .vyx-honest{max-width:100%;}\n  .vyx-cta{width:100% !important;}\n}\n@media(max-width:480px){.vyx-price{font-size:32px;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"vyx\"\u003e\n\n\u003cdiv class=\"vyx-main\"\u003e\n\n  \u003cdiv class=\"vyx-gallery\"\u003e\n    \u003cdiv class=\"vyx-thumbs\"\u003e\n      \u003cdiv class=\"vyx-thumb active\" onclick=\"vyxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_oreiller_de_voyage.png?v=1786137484', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_oreiller_de_voyage.png?v=1786137484\" alt=\"Oreiller de voyage enroulable porté en avion\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"vyx-thumb\" onclick=\"vyxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Oreiller_ergo_de_voyage_Noir.png?v=1786137484', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Oreiller_ergo_de_voyage_Noir.png?v=1786137484\" alt=\"Oreiller de voyage noir\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"vyx-thumb\" onclick=\"vyxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_ergo_de_voyage_Gris_Fonce.png?v=1786137484', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_ergo_de_voyage_Gris_Fonce.png?v=1786137484\" alt=\"Oreiller de voyage gris foncé\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"vyx-thumb\" onclick=\"vyxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_ergo_de_voyage_Gris_claire.png?v=1786137484', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_ergo_de_voyage_Gris_claire.png?v=1786137484\" alt=\"Oreiller de voyage gris clair\"\u003e\u003c\/div\u003e\n\n      \u003cdiv class=\"vyx-thumb\" onclick=\"vyxSetImg('https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Avantage_et_inconveinient_Oreiller_ergonomique_voyage.png?v=1786137567', this)\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/Avantage_et_inconveinient_Oreiller_ergonomique_voyage.png?v=1786137567\" alt=\"Avantages et inconvénients de l'oreiller de voyage\"\u003e\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"vyx-main-img\"\u003e\n      \u003cimg id=\"vyx-main-image\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/image_oreiller_de_voyage.png?v=1786137484\" alt=\"Oreiller de voyage enroulable Somnicare\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"vyx-content vyx-fu vyx-d1\"\u003e\n\n    \u003cdiv class=\"vyx-eyebrow\"\u003eOreiller Somnicare\u003c\/div\u003e\n    \u003ch1 class=\"vyx-title\"\u003eOreiller de voyage enroulable\u003c\/h1\u003e\n\n    \u003cp class=\"vyx-honest\"\u003e\u003cstrong\u003eLe vrai problème d'un oreiller de voyage, c'est la tête qui bascule.\u003c\/strong\u003e Un coussin en U soutient l'arrière du cou et laisse les côtés libres. Celui-ci fait le tour complet : l'appui existe à gauche comme à droite.\u003c\/p\u003e\n\n    \u003cdiv class=\"vyx-benefits\"\u003e\n      \u003cdiv class=\"vyx-benefit\"\u003e\n\u003cdiv class=\"vyx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eTour de cou complet : la tête est tenue des deux côtés\u003c\/div\u003e\n      \u003cdiv class=\"vyx-benefit\"\u003e\n\u003cdiv class=\"vyx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eS'enroule et se règle à votre tour de cou\u003c\/div\u003e\n      \u003cdiv class=\"vyx-benefit\"\u003e\n\u003cdiv class=\"vyx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eAucun noyau rigide : se roule et s'écrase dans un sac\u003c\/div\u003e\n      \u003cdiv class=\"vyx-benefit\"\u003e\n\u003cdiv class=\"vyx-benefit-ico\"\u003e\u003csvg viewbox=\"0 0 10 10\"\u003e\u003cpolyline points=\"2,5 4,7 8,3\"\u003e\u003c\/polyline\u003e\u003c\/svg\u003e\u003c\/div\u003eAvion, train, voiture passager\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"vyx-offer\"\u003e\n      \u003cdiv class=\"vyx-price-row\"\u003e\n        {% if product.compare_at_price \u0026gt; product.price %}\n          {% assign vyx_off = product.compare_at_price | minus: product.price | times: 100.0 | divided_by: product.compare_at_price | round %}\n          \u003cspan class=\"vyx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n          \u003cspan class=\"vyx-price-old\"\u003e{{ product.compare_at_price | money }}\u003c\/span\u003e\n          \u003cspan class=\"vyx-price-badge\"\u003e-{{ vyx_off }}%\u003c\/span\u003e\n        {% else %}\n          \u003cspan class=\"vyx-price\"\u003e{{ product.price | money }}\u003c\/span\u003e\n        {% endif %}\n      \u003c\/div\u003e\n\n      {% form 'product', product %}\n        {% unless product.has_only_default_variant %}\n          {% for option in product.options_with_values %}\n            \u003cdiv class=\"vyx-variants\"\u003e\n              \u003cdiv class=\"vyx-variants-label\"\u003e{{ option.name }}\u003c\/div\u003e\n              \u003cdiv class=\"vyx-variant-opts\"\u003e\n                {% for value in option.values %}\n                  \u003clabel class=\"vyx-variant-opt\"\u003e\n                    \u003cinput type=\"radio\" name=\"options[{{ option.name }}]\" value=\"{{ value | escape }}\" if option.selected_value=\"=\" endif onchange=\"vyxUpdateVariant()\"\u003e\n                    \u003cspan class=\"vyx-variant-pill\"\u003e\n                      {% assign vl = value | downcase %}\n                      {% if vl contains 'noir' %}\u003cspan class=\"vyx-swatch\" style=\"background:#1a1a1a;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'clair' %}\u003cspan class=\"vyx-swatch\" style=\"background:#b9bec4;\"\u003e\u003c\/span\u003e\n                      {% elsif vl contains 'gris' %}\u003cspan class=\"vyx-swatch\" style=\"background:#6e747a;\"\u003e\u003c\/span\u003e\n                      {% endif %}\n                      {{ value }}\n                    \u003c\/span\u003e\n                  \u003c\/label\u003e\n                {% endfor %}\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          {% endfor %}\n        {% endunless %}\n\n        \u003cselect name=\"id\" id=\"vyx-variant-id\" style=\"display:none;\"\u003e\n          {% for variant in product.variants %}\n            \u003coption value=\"{{ variant.id }}\" if variant=\"=\" product.selected_or_first_available_variant endif unless variant.available endunless data-options=\"{{ variant.options | join: ' \/ ' | escape }}\"\u003e\n              {{ variant.title }}\n            \u003c\/option\u003e\n          {% endfor %}\n        \u003c\/select\u003e\n\n        \u003cdiv class=\"vyx-perks\"\u003e\n          \u003cdiv class=\"vyx-perk\"\u003eLivraison suivie\u003c\/div\u003e\n          \u003cdiv class=\"vyx-perk\"\u003ePaiement sécurisé\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"submit\" name=\"add\" class=\"vyx-cta\"\u003e\n          Ajouter au panier →\n        \u003c\/button\u003e\n      {% endform %}\n\n      \u003cp class=\"vyx-secure\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\"\u003e\u003crect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M7 11V7a5 5 0 0110 0v4\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Paiement sécurisé — Données protégées\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\u003cscript\u003e\nfunction vyxSetImg(url, el){\n  var main = document.getElementById('vyx-main-image');\n  if(main){ main.src = url; }\n  document.querySelectorAll('.vyx-thumb').forEach(function(t){ t.classList.remove('active'); });\n  if(el){ el.classList.add('active'); }\n}\nfunction vyxUpdateVariant(){\n  var sel = {};\n  document.querySelectorAll('input[name^=\"options[\"]:checked').forEach(function(r){\n    sel[r.name] = r.value;\n  });\n  var chosen = Object.keys(sel).map(function(k){ return sel[k]; }).join(' \/ ');\n  var select = document.getElementById('vyx-variant-id');\n  if(!select) return;\n  for(var i=0;i\u003cselect.options.length;i++){\n    if(select.options[i].getAttribute('data-options') === chosen){\n      select.selectedIndex = i;\n      break;\n    }\n  }\n}\n\u003c\/script\u003e","brand":"SOMNICARE","offers":[{"title":"Noir","offer_id":54159225389394,"sku":"14:173#Black","price":29.9,"currency_code":"EUR","in_stock":true},{"title":"Gris foncé","offer_id":54159225422162,"sku":"14:175#Dark gray","price":29.9,"currency_code":"EUR","in_stock":true},{"title":"Gris Clair","offer_id":54159225454930,"sku":"14:193#Light Gray","price":29.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1056\/0054\/9202\/files\/oreiller_ergo_de_voyage_noir_V2.png?v=1786188524"}],"url":"https:\/\/somnicare.fr\/collections\/decouvrez-nos-produits.oembed","provider":"SOMNICARE","version":"1.0","type":"link"}