{"product_id":"le-trapeze-noir","title":"Le trapèze noir","description":"\u003cstyle\u003e\n\/* --- STRUCTURE DES ACCORDÉONS --- *\/\n.omy-accordion-wrapper {\n  border-top: 1px solid #ece7e3;\n  margin: 20px 0;\n}\n\n.omy-details {\n  border-bottom: 1px solid #ece7e3;\n  background: transparent;\n  display: block; \/* Nécessaire pour la transition *\/\n}\n\n.omy-summary {\n  list-style: none;\n  padding: 16px 0;\n  cursor: pointer;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  font-weight: 600;\n  color: #732C39; \/* Bordeaux signature *\/\n  letter-spacing: 0.1em;\n  font-size: 13px;\n  text-transform: uppercase;\n}\n\n.omy-summary::-webkit-details-marker { display: none; }\n\n.omy-icon {\n  font-size: 18px;\n  color: #9a908b;\n  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n\/* Rotation de l'icône via la classe active gérée par JS *\/\n.omy-details.is-open .omy-icon { \n  transform: rotate(45deg); \n}\n\n\/* --- LE WRAPPER POUR L'ANIMATION FLUIDE --- *\/\n.omy-content-wrapper {\n  display: grid;\n  grid-template-rows: 0fr; \n  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease;\n  opacity: 0;\n}\n\n.omy-details.is-open .omy-content-wrapper {\n  grid-template-rows: 1fr;\n  opacity: 1;\n}\n\n.omy-content-inner {\n  overflow: hidden; \/* Empêche le texte de dépasser pendant le mouvement *\/\n}\n\n.omy-content { \n  padding-bottom: 20px; \n}\n\n\/* --- VOS STYLES ORIGINAUX CONSERVÉS --- *\/\n.omy-features {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 14px 20px;\n  margin-bottom: 18px;\n}\n\n.omy-feature {\n  display: flex;\n  align-items: center;\n  font-size: 14px;\n  color: #1f1f1f;\n  font-weight: 500;\n}\n\n.omy-dot {\n  width: 10px;\n  height: 10px;\n  border-radius: 50%;\n  background: linear-gradient(135deg,#d8a3a3,#b76262);\n  margin-right: 12px;\n  flex-shrink: 0;\n}\n\n.omy-text {\n  font-size: 14px;\n  line-height: 1.7;\n  color: #5f5955;\n  margin-bottom: 14px;\n}\n\n.omy-meta {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: 10px;\n  margin-top: 10px;\n}\n\n.omy-box {\n  border: 1px solid #ece7e3;\n  border-radius: 14px;\n  padding: 14px;\n  background: #faf8f6;\n}\n\n.omy-meta-label {\n  font-size: 10px;\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  color: #9a908b;\n  margin-bottom: 6px;\n  display: block;\n}\n\n.omy-meta-value {\n  font-size: 13px;\n  color: #3f3a37;\n  line-height: 1.5;\n}\n\n@media screen and (max-width:749px){\n  .omy-features { grid-template-columns: 1fr 1fr; gap: 10px 15px; }\n  .omy-feature { font-size: 13px; }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"omy-accordion-wrapper\"\u003e\n  \u003c!-- SECTION 1 : DÉTAILS --\u003e\n  \u003cdetails class=\"omy-details is-open\" open=\"\"\u003e\n    \u003csummary class=\"omy-summary\"\u003eDÉTAILS \u0026amp; DIMENSIONS \u003cspan class=\"omy-icon\"\u003e+\u003c\/span\u003e\u003c\/summary\u003e\n    \u003cdiv class=\"omy-content-wrapper\"\u003e\n      \u003cdiv class=\"omy-content-inner\"\u003e\n        \u003cdiv class=\"omy-content\"\u003e\n          \u003cdiv class=\"omy-features\"\u003e\n            \u003cdiv class=\"omy-feature\"\u003e\n\u003cspan class=\"omy-dot\"\u003e\u003c\/span\u003e Simili-cuir crocodile\u003c\/div\u003e\n            \u003cdiv class=\"omy-feature\"\u003e\n\u003cspan class=\"omy-dot\"\u003e\u003c\/span\u003e Poignée crochetée\u003c\/div\u003e\n            \u003cdiv class=\"omy-feature\"\u003e\n\u003cspan class=\"omy-dot\"\u003e\u003c\/span\u003e Fil de t-shirt\u003c\/div\u003e\n            \u003cdiv class=\"omy-feature\"\u003e\n\u003cspan class=\"omy-dot\"\u003e\u003c\/span\u003e Franges latérales\u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"omy-text\"\u003eChaque pièce est réalisée à la main en Belgique, rendant votre sac unique. Le simili-cuir est soigneusement sélectionné en Italie. Les variations de texture font partie du caractère de la matière et rendent chaque pièce unique.\u003c\/p\u003e\n          \u003cp class=\"omy-text\" style=\"font-weight: 600;\"\u003eDimensions : L35 cm x H39 cm x Ouverture 10 cm\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/details\u003e\n\n  \u003c!-- SECTION 2 : ENTRETIEN --\u003e\n  \u003cdetails class=\"omy-details\"\u003e\n    \u003csummary class=\"omy-summary\"\u003eCONSEILS D'ENTRETIEN \u003cspan class=\"omy-icon\"\u003e+\u003c\/span\u003e\u003c\/summary\u003e\n    \u003cdiv class=\"omy-content-wrapper\"\u003e\n      \u003cdiv class=\"omy-content-inner\"\u003e\n        \u003cdiv class=\"omy-content\"\u003e\n          \u003cp class=\"omy-text\"\u003ePour préserver sa qualité, évitez l’exposition prolongée au soleil, à l’eau, aux cosmétiques et aux sources de chaleur. Conservez le sac dans un endroit sec lorsqu’il n’est pas utilisé.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/details\u003e\n\n  \u003c!-- SECTION 3 : ORIGINE --\u003e\n  \u003cdetails class=\"omy-details\"\u003e\n    \u003csummary class=\"omy-summary\"\u003eCOMPOSITION \u0026amp; FABRICATION \u003cspan class=\"omy-icon\"\u003e+\u003c\/span\u003e\u003c\/summary\u003e\n    \u003cdiv class=\"omy-content-wrapper\"\u003e\n      \u003cdiv class=\"omy-content-inner\"\u003e\n        \u003cdiv class=\"omy-content\"\u003e\n          \u003cdiv class=\"omy-meta\"\u003e\n            \u003cdiv class=\"omy-box\"\u003e\n              \u003cspan class=\"omy-meta-label\"\u003eComposition\u003c\/span\u003e \u003cspan class=\"omy-meta-value\"\u003eSimili-cuir italien \/ Fil de t-shirt – 100% polyester\u003c\/span\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"omy-box\"\u003e\n              \u003cspan class=\"omy-meta-label\"\u003eFabrication\u003c\/span\u003e \u003cspan class=\"omy-meta-value\"\u003eBelgique - Fait main\u003c\/span\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/details\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.querySelectorAll('.omy-details').forEach((el) =\u003e {\n    const summary = el.querySelector('summary');\n    \n    \/\/ Initialisation pour l'état ouvert au chargement\n    if (el.hasAttribute('open')) {\n      el.classList.add('is-open');\n    }\n\n    summary.addEventListener('click', (e) =\u003e {\n      e.preventDefault(); \/\/ On bloque le comportement par défaut\n\n      if (el.open) {\n        \/\/ --- FERMETURE AVEC ANIMATION ---\n        el.classList.remove('is-open');\n        setTimeout(() =\u003e {\n          el.removeAttribute('open');\n        }, 500); \/\/ Temps synchro avec transition CSS (0.5s)\n      } else {\n        \/\/ --- OUVERTURE AVEC ANIMATION ---\n        el.setAttribute('open', '');\n        requestAnimationFrame(() =\u003e {\n          el.classList.add('is-open');\n        });\n      }\n    });\n  });\n\u003c\/script\u003e","brand":"Oh My Maille","offers":[{"title":"Default Title","offer_id":56576261423479,"sku":null,"price":79.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0982\/7808\/0887\/files\/ADSCARREOMM.png?v=1779031821","url":"https:\/\/www.ohmymaille.com\/products\/le-trapeze-noir","provider":"Oh My Maille","version":"1.0","type":"link"}