{"title":"Notre sélection de Noël","description":"\u003cp\u003eNos meilleures idées cadeaux pour (se) faire plaisir à Noël 🎄Craquez pour nos puzzles, cartes, affiches et autres objets à offrir. \u003c\/p\u003e","products":[{"product_id":"calendrier-des-anniversaires","title":"Calendrier des anniversaires","description":"\u003c!-- ANALYSE MPV\n  Produit : Calendrier des anniversaires perpétuel\n  Catégorie : OBJET DÉCO \/ DIVERS\n  Palette extraite des visuels :\n    - Pêche doux \/ abricot (fond couverture, rayures) → #F2D9C0\n    - Vert vif (casquette chien, mois septembre, ballons) → #1A8B4B\n    - Bleu roi (casquette) → #2B5DBA\n    - Bordeaux chaud (page décembre) → #6B1D2A\n    - Corail \/ rose des ballons cœurs → #E0766E\n  Ambiance : Joyeuse, familiale, ludique, illustrée, motifs animaliers enfantins mais design\n  Prefix : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eCalendrier des anniversaires\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eLe compagnon perpétuel qui veille sur toutes les dates précieuses de votre tribu, mois après mois, année après année.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eCombien de fois avez-vous réalisé, le matin même, que c'était l'anniversaire de quelqu'un que vous adorez ? Ce calendrier perpétuel est né de cette petite panique familière. On y note une seule fois les prénoms et les dates qui comptent, puis on le laisse faire son travail, accroché bien en vue dans la cuisine ou le couloir. Chaque mois dévoile une illustration originale — un teckel espiègle portant des ballons en forme de cœur, des oiseaux en plein vol, des colombes de fête — dans une palette généreuse qui change au fil des saisons. Pas besoin de le remplacer en janvier : il est intemporel, pensé pour durer et pour embellir votre quotidien tout en vous rendant un vrai service.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003ePerpétuel et sans prise de tête\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eAucune année imprimée, aucune date de péremption : vous inscrivez vos dates une fois et ce calendrier vous accompagne indéfiniment. Fini les agendas jetés chaque hiver et les rappels oubliés sur le téléphone.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e12 illustrations qui changent tout\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eChaque mois arbore un motif unique aux couleurs chaleureuses — du pêche lumineux au vert profond en passant par le bordeaux festif. Plus qu'un outil pratique, c'est un véritable objet déco qu'on a plaisir à regarder chaque jour.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #1A8B4B;\n  --dc-primary-dark: #145A33;\n  --dc-accent-peps: #E0766E;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dc-fadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes dc-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":62794269458781,"sku":"CAL-ANNI-CHIE-01","price":22.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CALENDRIER-DES-ANNIVERSAIRES.jpg?v=1764878978"},{"product_id":"calendrier-perpetuel","title":"Calendrier perpétuel","description":"\u003c!-- ANALYSE : \n  - Type : OBJET DÉCO\/DIVERS (calendrier perpétuel des anniversaires, papeterie illustrée)\n  - Palette extraite des images : terracotta chaud (#C1440E), lilas\/lavande (#9B8EC4), ocre moutarde (#B89B2D), rose poudré (#E8A4B8), vert sauge (#8B9B6B)\n  - Couleurs retenues : terracotta doux comme primary, lilas comme accent pep's, fond crème signature\n  - Ambiance : joyeuse, rétro-fleurie, familiale, quotidien coloré, esprit 70s moderne\n  - Prefix : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eCalendrier perpétuel des anniversaires\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eDouze mois illustrés, zéro anniversaire oublié — le compagnon joyeux qui veille sur vos dates préférées.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eCe calendrier perpétuel est né d'un constat tout simple : on aime les gens, mais on oublie leurs dates. Alors plutôt qu'un énième rappel noyé dans les notifications, on a imaginé un bel objet à remplir une seule fois et à garder pour toujours. Chaque mois dévoile une illustration florale unique, dans un esprit rétro coloré et chaleureux — des motifs graphiques à mi-chemin entre seventies assumées et douceur contemporaine. On le feuillette, on note, on anticipe. Il se pose sur un bureau, s'accroche au mur, s'intègre dans le quotidien comme un réflexe visuel. Pas de date de péremption, pas d'année imprimée : il vous accompagne aussi longtemps que vos amitiés. C'est un objet de papeterie qui rend le temps un peu plus doux et les liens un peu plus solides.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn compagnon pour la vie\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eSans année indiquée, ce calendrier se remplit une fois et se consulte indéfiniment. Douze pages illustrées avec 31 lignes par mois, une reliure spirale solide et une accroche murale intégrée : il est pensé pour durer et s'installer naturellement dans votre routine.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUne idée cadeau qui fait mouche\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eNoël, fête des mères, crémaillère ou juste pour faire plaisir : c'est le genre de présent à la fois utile, joli et personnel. Son design fleuri rétro plaît autant aux organisés qu'à ceux qui ont besoin d'un petit coup de pouce pour ne plus rater les dates qui comptent.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --dc-bg-cream: #FDFBF7;\n    --dc-white: #ffffff;\n    --dc-primary: #C1440E;\n    --dc-primary-dark: #8B3009;\n    --dc-accent-peps: #9B8EC4;\n    --dc-text-main: #2A2A2A;\n    --dc-text-muted: #666666;\n    --dc-border: #EFEBE4;\n    --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --dc-radius: 12px;\n  }\n\n  .dc-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--dc-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--dc-text-main);\n    line-height: 1.6;\n  }\n\n  .dc-hero {\n    background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--dc-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--dc-border);\n  }\n\n  .dc-badges-top { margin-bottom: 1rem; }\n\n  .dc-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--dc-white);\n    border: 1px solid var(--dc-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--dc-text-main);\n    margin: 0 4px;\n    box-shadow: var(--dc-shadow-soft);\n  }\n\n  .dc-hero-title {\n    display: block;\n    color: var(--dc-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .dc-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--dc-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .dc-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .dc-intro-text {\n    font-size: 13.5px;\n    color: var(--dc-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .dc-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .dc-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .dc-card {\n    background: var(--dc-white);\n    border-radius: var(--dc-radius);\n    padding: 2rem;\n    box-shadow: var(--dc-shadow-soft);\n    border: 1px solid var(--dc-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .dc-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--dc-shadow-hover);\n  }\n\n  .dc-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .dc-card-desc {\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .dc-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--dc-border);\n  }\n\n  .dc-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .dc-grid { grid-template-columns: 1fr; }\n    .dc-mpv-container { padding: 1.5rem 1rem; }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .dc-card { animation: dc-fadeInUp 0.5s ease backwards; }\n    .dc-card:nth-child(2) { animation-delay: 0.1s; }\n  }\n\n  @keyframes dc-fadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":62799045886301,"sku":"CAL-PERP-FLEU-01","price":22.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CALENDRIER-PERPETUEL.webp?v=1764913356"},{"product_id":"affiche-decorative-dalmatien-skate","title":"Affiche – Dalmatien Skate","description":"\u003c!-- ANALYSE MPV\n1. Type : AFFICHE (classique, non personnalisée)\n2. Palette : bleu lavande doux (#A2B0CF), rouge brique chaleureux (#C4392A), brun chocolat (#3A1F15)\n3. Ambiance : enfantine, joyeuse, graphique, skate culture douce, moderne et ludique\n4. Préfixe : af\n--\u003e\n\n\u003cdiv class=\"af-mpv-container\"\u003e\n\n  \u003cdiv class=\"af-hero\"\u003e\n    \u003cdiv class=\"af-hero-content\"\u003e\n      \u003cdiv class=\"af-badges-top\"\u003e\n        \u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e\n        \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"af-hero-title\"\u003eAffiche – Dalmatien Skate\u003c\/span\u003e\n      \u003cp class=\"af-subtitle\"\u003eUn dalmatien à casquette sur son skate rouge, prêt à glisser tout droit sur vos murs et dans vos cœurs.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"af-intro-text\"\u003eIl y a des affiches qu'on accroche et qu'on oublie. Et puis il y a celle-là. Un dalmatien tacheté, coiffé d'une casquette bleue, installé fièrement sur son skateboard rouge vif, le tout baigné dans un bleu lavande lumineux et apaisant. Ce n'est pas juste un chien mignon — c'est un personnage, une attitude, un petit état d'esprit joyeux qui s'invite dans votre quotidien. Imaginée pour apporter de la fraîcheur dans une chambre d'enfant, une touche de fantaisie dans un bureau ou un sourire dans un couloir, cette illustration graphique et intemporelle trouve sa place partout où la bonne humeur est la bienvenue. Associez-la à l'affiche Chat Léopard Rose de la même collection pour un duo plein de caractère.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-grid\"\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e✨ Des couleurs qui réveillent vos murs\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eBleu lavande, rouge brique, brun chocolat et touches de vert : une palette douce mais vibrante, pensée pour illuminer n'importe quel intérieur sans le surcharger. Les couleurs restent fidèles et lumineuses dans le temps grâce à une impression soignée sur papier épais.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e🛹 Une déco polyvalente et pleine de personnalité\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eAu-dessus d'un lit d'enfant, posée sur un meuble dans le salon, intégrée dans un mur galerie ou glissée dans un cadre en bois naturel : cette affiche s'adapte à tous les espaces et à tous les styles, du scandinave au joyeusement éclectique.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003csection class=\"af-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #A2B0CF;\n  --af-primary-dark: #3A4A6B;\n  --af-accent-peps: #C4392A;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: af-fadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes af-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":62799109456221,"sku":"AFF-DALM-SKAT-01","price":26.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/affiche-dalmatien-chien-chambre-enfants.webp?v=1765098855"},{"product_id":"affiche-decorative-good-food-good-mood-copie","title":"Affiche – Cool surfing dog Hawaï","description":"\u003c!-- ANALYSE MPV\n- Produit : Affiche – Cool surfing dog Hawaï\n- Catégorie : AFFICHE (classique)\n- Palette : Terracotta chaud #C4956A, brun chocolat #6B3A2A, ocre\/olive #8B7A2E\n- Accent pep's : Ocre doré chaud\n- Ambiance : Surf, été, enfance joyeuse, nonchalance estivale, tons chauds naturels\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eCool surfing dog Hawaï\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eUn chien stylé, une planche sous le bras et l'esprit Hawaï dans les yeux — la touche de bonne humeur qui manquait à votre mur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eIl y a des illustrations qui font sourire dès le premier regard. Celle-ci en fait partie. Imaginez un chien décontracté, casquette vissée sur la tête, short à rayures, planche de surf sous le bras et l'air parfaitement cool. Avec sa palette de terracotta chaud, de caramel et d'ocre doré, cette affiche s'intègre avec une facilité déconcertante dans les intérieurs contemporains, bohèmes ou simplement joyeux. À mi-chemin entre le poster vintage surf des années 70 et l'illustration graphique moderne, elle apporte une dose d'évasion et d'humour à chaque pièce où elle s'installe.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eDes couleurs chaudes et lumineuses\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLa palette terracotta, caramel et ocre offre un éclat doux et enveloppant qui réchauffe n'importe quel espace. Les teintes sont pensées pour rester fidèles et vibrantes dans le temps, grâce à une impression haute définition sur papier mat premium.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eUn format standard, facile à encadrer\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eDisponible en format standard (30 x 40 cm), cette affiche se glisse sans effort dans un cadre en bois naturel ou blanchi pour un rendu soigné et intemporel. Chambre d'enfant, salon, bureau ou couloir : elle trouve sa place partout où la bonne humeur est bienvenue.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --af-bg-cream: #FDFBF7;\n    --af-white: #ffffff;\n    --af-primary: #C4956A;\n    --af-primary-dark: #6B3A2A;\n    --af-accent-peps: #8B7A2E;\n    --af-text-main: #2A2A2A;\n    --af-text-muted: #666666;\n    --af-border: #EFEBE4;\n    --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --af-radius: 12px;\n  }\n\n  .af-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--af-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--af-text-main);\n    line-height: 1.6;\n  }\n\n  .af-hero {\n    background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--af-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--af-border);\n  }\n\n  .af-badges-top {\n    margin-bottom: 1rem;\n  }\n\n  .af-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--af-white);\n    border: 1px solid var(--af-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--af-text-main);\n    margin: 0 4px;\n    box-shadow: var(--af-shadow-soft);\n  }\n\n  .af-hero-title {\n    display: block;\n    color: var(--af-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .af-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--af-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .af-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .af-intro-text {\n    font-size: 13.5px;\n    color: var(--af-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .af-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--af-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .af-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .af-card {\n    background: var(--af-white);\n    border-radius: var(--af-radius);\n    padding: 2rem;\n    box-shadow: var(--af-shadow-soft);\n    border: 1px solid var(--af-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .af-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--af-shadow-hover);\n  }\n\n  .af-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--af-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .af-card-desc {\n    font-size: 14px;\n    color: var(--af-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .af-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--af-border);\n  }\n\n  .af-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--af-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .af-grid {\n      grid-template-columns: 1fr;\n    }\n    .af-mpv-container {\n      padding: 1.5rem 1rem;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .af-card {\n      animation: af-fadeInUp 0.5s ease backwards;\n    }\n    .af-card:nth-child(2) {\n      animation-delay: 0.1s;\n    }\n  }\n\n  @keyframes af-fadeInUp {\n    from {\n      opacity: 0;\n      transform: translateY(20px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":62803602538845,"sku":"AFF-COOL-SUR-01","price":26.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/affiche-chien-planche-surf.jpg?v=1765097932"},{"product_id":"affiche-decorative-chien-skateur","title":"Affiche – Chien skateur","description":"\u003c!-- ANALYSE MPV\n  Produit : Affiche – Chien skateur\n  Catégorie : AFFICHE (classique, non personnalisée)\n  Palette extraite des visuels : fond pêche rosé (#F5DED0), lilas\/violet doux (#9B8BBE), terracotta brun (#6B3A2A), orange corail vif (#E5542C), crème chaud\n  Ambiance : Fun, enfantine, moderne, colorée, pleine de personnalité\n  Préfixe : af\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eAffiche – Chien skateur\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eUn teckel en casquette sur son skate violet, prêt à apporter une dose de bonne humeur sur vos murs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eIl roule, il swague et il fait sourire tout le monde — sans même avoir de permis. Avec son imprimé léopard, sa casquette lilas et son skate aux roues orange vif, ce petit teckel décomplexé transforme n'importe quel mur en coin de bonne humeur instantanée. Les tons pêche, lilas et terracotta se fondent avec élégance dans les intérieurs contemporains tout en affichant une personnalité bien trempée. Loin des affiches trop sages, cette illustration joue la carte de l'humour graphique avec un vrai sens du détail : la posture du chien, les couleurs, le style vestimentaire — chaque élément est pensé pour provoquer un sourire franc dès le premier regard.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eDes couleurs qui réchauffent\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLa palette pêche, lilas et terracotta a été pensée pour apporter de la chaleur et de la vie à vos espaces. Les teintes restent lumineuses et contemporaines, aussi à l'aise dans une chambre d'enfant que dans un salon ou un bureau.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eFacile à encadrer, facile à aimer\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eDisponible en format horizontal 30x40cm, cette affiche s'intègre parfaitement dans les cadres du commerce. Associez-la à un cadre en bois clair pour sublimer ses tons chauds — ou composez un mur galerie avec d'autres illustrations de la collection.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #9B8BBE;\n  --af-primary-dark: #5C4A7E;\n  --af-accent-peps: #E5542C;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title { font-size: 16px; font-weight: 700; color: var(--af-primary-dark); margin-top: 0; margin-bottom: 0.75rem; }\n\n.af-card-desc { font-size: 14px; color: var(--af-text-muted); margin: 0; line-height: 1.5; }\n\n.af-section-final { text-align: center; padding: 1.5rem 0 0 0; border-top: 1px solid var(--af-border); }\n\n.af-final-text { font-style: italic; font-size: 14px; color: var(--af-text-muted); max-width: 550px; margin: 0 auto; }\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: afFadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes afFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":62803694911837,"sku":"AFF-CHIE-SKA-01","price":26.0,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/chien-skate-affiche-cadre-deco-enfant.webp?v=1776064622"},{"product_id":"affiche-prenom-printemps","title":"Affiche prénom – Printemps","description":"\u003c!-- ANALYSE --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Type : AFFICHE PERSONNALISÉE (prénom + date de naissance personnalisables) --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Palette : Rose bonbon doux #E8A0B4, crème chaud #F2E2C9, rouge cœur profond #8B1A1A, vert feuille #3A6B35 --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Ambiance : Pop, joyeuse, printanière, rayures et fleurs-cœurs, enfantine mais design --\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom – Printemps\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eDes rayures douces, des fleurs-cœurs et un prénom qui s'affiche fièrement : le printemps s'invite dans la chambre.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eDes rayures roses et crème comme un bonbon acidulé, des petites fleurs dont les pétales sont des cœurs rouge profond, et au centre : le prénom de votre enfant, bien ancré, plein de caractère. Cette affiche capture l'énergie joyeuse du printemps dans un style pop et assumé. Elle est pensée pour donner de la personnalité à un mur, célébrer une naissance ou simplement rappeler chaque jour que la vie est belle — et colorée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eChoisissez le prénom, la date et le format qui vous conviennent pour créer une affiche unique.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous les envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier de qualité, puis expédiée dans un emballage protecteur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🌷 Un motif pop et printanier\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLes fleurs-cœurs parsemées sur un fond rayé rose et crème donnent à cette affiche une énergie joyeuse et un caractère affirmé. Un design qui ne passe pas inaperçu.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Une déco qui a de la personnalité\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eFacile à encadrer et pensée pour s'intégrer aussi bien dans une chambre d'enfant que dans un salon coloré, elle apporte une touche audacieuse et pleine de bonne humeur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #E8A0B4;\n  --ap-primary-dark: #8B1A1A;\n  --ap-accent-peps: #C73B3B;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 700px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.ap-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1.25rem;\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-step-number {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  min-width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: var(--ap-primary);\n  color: var(--ap-white);\n  font-weight: 700;\n  font-size: 15px;\n  flex-shrink: 0;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.35rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes apFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63084655346013,"sku":"AFF-PRE-PRIN-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-PRINTEMPS-CADRE.webp?v=1768225765"},{"product_id":"affiche-prenom-dalmatien-skate","title":"Affiche Prénom - Dalmatien Skate","description":"\u003c!-- ANALYSE : \n- Type : AFFICHE PERSONNALISÉE (prénom intégré dans l'illustration)\n- Palette extraite des images : bleu ardoise doux (#8FA4BD), bleu roi (#2D4DA0), rouge skateboard (#C93A2A), crème dalmatien (#F5E6D0), marron taches (#3B1F1A), vert collier (#2E7D5B)\n- Palette Pep's \u0026 Douceur retenue : bleu ardoise poétique (primary), rouge skate chaleureux (accent pep's), crème doux (fond)\n- Ambiance : Enfantine, joyeuse, rétro-moderne, colorée mais douce\n- Prefix : ap (affiche personnalisée)\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Dalmatien skate\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn dalmatien en casquette qui file sur son skate rouge, avec le prénom de votre enfant glissé sur son dos comme une signature joyeuse.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eIl a des taches partout, une casquette vissée sur la tête et un skateboard rouge sous les pattes. Ce dalmatien-là ne fait rien comme les autres — et c'est exactement pour ça qu'on l'aime. Posé sur un fond bleu ardoise apaisant, il embarque le prénom de votre enfant dans sa balade, comme s'il en avait toujours fait partie. Une affiche personnalisée au style rétro et coloré, pensée pour illuminer un coin de chambre avec du caractère et beaucoup de tendresse.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un prénom qui fait partie du décor\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe prénom de votre enfant s'intègre directement dans l'illustration, en harmonie avec les couleurs et la composition. Il ne flotte pas au-dessus : il vit dans l'image, naturellement.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🤍 Des couleurs franches et joyeuses\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eBleu ardoise doux, rouge vif, crème et marron profond : une palette qui apporte du pep's sans agresser, et qui s'accorde aussi bien dans une chambre colorée que dans un univers plus sobre.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-text\"\u003e\n\u003cstrong\u003eRenseignez vos options personnalisées\u003c\/strong\u003e\u003cbr\u003eSsaisissez le prénom de votre enfant dans le champ dédié.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-text\"\u003e\n\u003cstrong\u003eRelecture avant validation\u003c\/strong\u003e\u003cbr\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003cbr\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-text\"\u003e\n\u003cstrong\u003eImpression et livraison soignée\u003c\/strong\u003e\u003cbr\u003eVotre affiche est imprimée avec soin puis expédiée dans un emballage protecteur, prête à être encadrée et accrochée.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #8FA4BD;\n    --ap-primary-dark: #2D4DA0;\n    --ap-accent-peps: #C93A2A;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top { margin-bottom: 1rem; }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    margin: 0 4px;\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-howto {\n    max-width: 750px;\n    margin: 0 auto 3.5rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem;\n    box-shadow: var(--ap-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-step:hover {\n    transform: translateY(-3px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-step-number {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    min-width: 40px;\n    height: 40px;\n    border-radius: 50%;\n    background: var(--ap-accent-peps);\n    color: var(--ap-white);\n    font-weight: 700;\n    font-size: 16px;\n    flex-shrink: 0;\n  }\n\n  .ap-step-text {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    line-height: 1.55;\n  }\n\n  .ap-step-text strong {\n    color: var(--ap-text-main);\n    font-size: 15px;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid { grid-template-columns: 1fr; }\n    .ap-mpv-container { padding: 1.5rem 1rem; }\n    .ap-step { flex-direction: column; align-items: center; text-align: center; }\n    .ap-step-number { margin-bottom: 0.25rem; }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n    .ap-card:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n    .ap-step:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step:nth-child(3) { animation-delay: 0.2s; }\n  }\n\n  @keyframes apFadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63087400681821,"sku":"AFF-PRE-DALM-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-DALMATIEN.webp?v=1768491541"},{"product_id":"affiche-prenom-bel-amour","title":"Affiche Prénom - Bel Amour","description":"\u003c!-- ANALYSE MPV\n • Type : AFFICHE PERSONNALISÉE (prénom + date de naissance)\n • Palette : fond nude poudré #F2DCC8, bleu gris colombe #7A9BAE, rouge bordeaux cœur #A52A2A\n • Ambiance : poétique, intemporelle, art moderne épuré, douceur \u0026 amour\n • Prefix : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Bel Amour\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn prénom, une date, une colombe et un grand cœur rouge : tout l'amour du monde résumé en une seule affiche.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eCertains jours changent tout. L'affiche Bel Amour est née de cette envie de garder une trace douce et élégante du jour où quelqu'un arrive dans nos vies. Une colombe tracée d'un seul geste, un cœur rouge profond, un prénom en lettres franches et une date qu'on n'oubliera jamais : le dessin s'inspire de l'esthétique des grands illustrateurs du XXe siècle pour créer un souvenir graphique qui traverse les années sans prendre une ride. Accrochée dans une chambre de bébé, elle y sera encore belle quand l'enfant aura grandi — et c'est exactement ce qu'on voulait.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🕊️ Un design intemporel\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLa colombe épurée et le cœur bordeaux forment une composition qui ne se démode pas. Le fond nude poudré et le bleu gris du tracé s'intègrent naturellement dans tous les intérieurs, de la chambre d'enfant au salon familial.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e❤️ Personnalisée rien que pour vous\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eChaque affiche est créée à la demande avec le prénom et la date de votre choix. Naissance, baptême, anniversaire ou déclaration d'amour : elle s'adapte à tous les moments qui comptent vraiment.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-how\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eIndiquez le prénom et la date souhaitée directement dans les champs prévus sur la page produit.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée sur papier premium puis expédiée avec soin pour arriver chez vous en parfait état.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #7A9BAE;\n  --ap-primary-dark: #4A6B7C;\n  --ap-accent-peps: #A52A2A;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F2EDE5 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-how {\n  max-width: 700px;\n  margin: 0 auto 3.5rem auto;\n}\n\n.ap-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.ap-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1rem;\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-3px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  min-width: 38px;\n  height: 38px;\n  background: var(--ap-accent-peps);\n  color: var(--ap-white);\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  font-weight: 700;\n  font-size: 15px;\n  flex-shrink: 0;\n}\n\n.ap-step-content {\n  flex: 1;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.35rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n  .ap-step { flex-direction: column; align-items: center; text-align: center; }\n  .ap-step-number { margin-bottom: 0.25rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes ap-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63103201542493,"sku":"AFF-PRE-BELA-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-OISEAU_df137a89-4d5d-4cbb-bb98-b0b5e3e8e093.webp?v=1791464252"},{"product_id":"affiche-prenom-harmonie","title":"Affiche Prénom - Harmonie","description":"\u003c!-- \n  ANALYSE PRODUIT — Ma Petite Vie\n  ─────────────────────────────────\n  Produit : Affiche Prénom - Harmonie\n  Catégorie détectée : AFFICHE PERSONNALISÉE\n  Palette extraite : Ocre doré chaud (#B8960C), bleu cobalt profond (#1A3EC2), blanc cassé, crème\n  Teintes CSS : primary = ocre doré, primary-dark = ocre foncé terreux, accent-peps = bleu cobalt\n  Ambiance : Poétique, enfantine, graphique, joyeuse, envol \u0026 liberté\n  Prefix : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Harmonie\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eDeux oiseaux en plein vol, un prénom inscrit pour toujours, et la date du jour qui a tout changé.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eL'affiche Harmonie capture ce moment suspendu entre le rêve et la réalité — celui où un prénom devient une personne. Deux oiseaux blancs aux ailes déployées glissent sur un fond ocre doré chaleureux, ponctués de petits cœurs bleu cobalt qui battent la mesure d'un bonheur tout neuf. Le prénom de votre enfant s'inscrit au centre, en typographie bold et joyeuse, accompagné de sa date de naissance. Chaque élément a été dessiné pour raconter la légèreté, la douceur et l'élan de l'enfance — une illustration graphique et poétique que l'on encadre, que l'on accroche, et que l'on garde une vie entière.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eIndiquez le prénom à inscrire sur l'affiche ainsi que la date de naissance souhaitée, puis sélectionnez votre format préféré.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier de qualité, puis expédiée dans un emballage protecteur pensé pour arriver en parfait état.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un souvenir pour la vie\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003ePlus qu'une décoration, cette affiche personnalisée transforme le prénom de votre enfant en une œuvre que l'on garde précieusement, bien au-delà des premières années.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e💌 Un design graphique et poétique\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eDes formes rondes et rassurantes, une palette ocre et bleu cobalt affirmée mais douce, une typographie joyeuse : une affiche qui s'encadre et s'accroche avec fierté.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #B8960C;\n  --ap-primary-dark: #7A6308;\n  --ap-accent-peps: #1A3EC2;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 750px;\n  margin: 0 auto 3.5rem auto;\n}\n\n.ap-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.ap-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1.25rem;\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.5rem 1.75rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-3px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 38px;\n  height: 38px;\n  min-width: 38px;\n  border-radius: 50%;\n  background: var(--ap-accent-peps);\n  color: var(--ap-white);\n  font-weight: 700;\n  font-size: 16px;\n  flex-shrink: 0;\n}\n\n.ap-step-content {\n  flex: 1;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.35rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n  .ap-step {\n    flex-direction: column;\n    align-items: center;\n    text-align: center;\n    gap: 0.75rem;\n    padding: 1.25rem 1.25rem;\n  }\n  .ap-step-number {\n    margin: 0 auto;\n  }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes ap-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63103482921309,"sku":"AFF-PRE-HARM-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-HARMONIE-CADRE.webp?v=1768225650"},{"product_id":"affiche-prenom-jolie-rose","title":"Affiche Prénom - Jolie Rose","description":"\u003c!-- ANALYSE :\n  - Type : AFFICHE PERSONNALISÉE (prénom + date de naissance)\n  - Palette : rose vichy doux, bordeaux\/rouge foncé (cœur), vert forêt (feuilles\/typo), crème chaud\n  - Ambiance : rétro-romantique, enfantine, poétique, motif vichy, fleur-cœur graphique\n  - Prefix : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Jolie Rose\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUne fleur-cœur, un prénom, une date : le début d'une jolie histoire accrochée au mur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eL'affiche Jolie Rose est née d'une envie toute simple : transformer un prénom en un petit tableau plein de douceur. Son motif vichy rose poudré, sa fleur-cœur bordeaux aux feuilles vert forêt et sa typographie ronde et chaleureuse composent un univers rétro-romantique qui s'installe naturellement dans une chambre d'enfant. Personnalisée avec le prénom et la date de naissance de votre choix, elle devient un cadeau de naissance unique — le genre d'attention qu'on accroche le jour J et qu'on retrouve encore des années plus tard, toujours à sa place, toujours aussi jolie.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🌸 Un design rétro-romantique\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe vichy rose doux encadre une fleur-cœur bordeaux et vert forêt, bordée d'un contour ondulé plein de caractère. Une esthétique graphique et tendre qui traverse les années sans jamais se démoder.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un cadeau qui reste\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eOffrir cette affiche personnalisée, c'est ancrer un prénom dans un endroit qui lui appartient. Chambre de bébé, coin lecture ou mur du salon : elle s'adapte à chaque nouvelle déco et grandit avec l'enfant.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eRenseignez vos options personnalisées\u003c\/strong\u003e\n\u003cp\u003eIndiquez le prénom de l'enfant, sa date de naissance et sélectionnez le format souhaité. Votre affiche sera créée sur mesure à partir de ces informations.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eRelecture avant validation\u003c\/strong\u003e\n\u003cp\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eImpression et livraison soignée\u003c\/strong\u003e\n\u003cp\u003eVotre affiche est imprimée avec soin puis expédiée dans un emballage protecteur pour arriver en parfait état chez vous.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #E8A0B4;\n    --ap-primary-dark: #7A1B2D;\n    --ap-accent-peps: #D4603A;\n    --ap-green: #2D5A3D;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top { margin-bottom: 1rem; }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    margin: 0 4px;\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-howto {\n    max-width: 700px;\n    margin: 0 auto 3.5rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem;\n    box-shadow: var(--ap-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-step:hover {\n    transform: translateY(-3px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-step-number {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 38px;\n    height: 38px;\n    min-width: 38px;\n    background: var(--ap-primary-dark);\n    color: var(--ap-white);\n    border-radius: 50%;\n    font-size: 15px;\n    font-weight: 700;\n  }\n\n  .ap-step-content strong {\n    display: block;\n    font-size: 15px;\n    color: var(--ap-primary-dark);\n    margin-bottom: 0.35rem;\n  }\n\n  .ap-step-content p {\n    font-size: 13.5px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid { grid-template-columns: 1fr; }\n    .ap-mpv-container { padding: 1.5rem 1rem; }\n    .ap-step {\n      flex-direction: column;\n      align-items: center;\n      text-align: center;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n    .ap-card:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n    .ap-step:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step:nth-child(3) { animation-delay: 0.2s; }\n  }\n\n  @keyframes apFadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63103571198301,"sku":"AFF-PRE-JOLI-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-JOLIE_ROSE-CADRE.webp?v=1768225651"},{"product_id":"affiche-prenom-calligraphie","title":"Affiche Prénom - Calligraphie","description":"\u003c!-- \nANALYSE PRODUIT :\n- Type : AFFICHE PERSONNALISÉE (prénom calligraphié)\n- Palette extraite de l'image : rose bonbon #E8A0B4, vert olive\/kaki #9B9B3C, orangé chaud #D4923A, rouge bordeaux profond #7B1F1F\n- Palette \"Pep's \u0026 Douceur\" retenue : rose poudré lumineux, vert olive doux, accent bordeaux chaud\n- Ambiance : Joyeuse, colorée, enfantine mais design, rayures graphiques, calligraphie manuscrite\n- Préfixe CSS : ap (affiche personnalisée)\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom – Calligraphie\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eDes rayures pleines de pep's, une calligraphie pleine de cœur : son prénom n'a jamais été aussi beau sur un mur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eImaginez des rayures rose bonbon, kaki olive et orangé lumineux qui dansent sur le papier, et là, en plein centre, le prénom de votre enfant tracé en calligraphie cursive d'un bordeaux profond. Cette affiche personnalisée est née de l'envie de célébrer chaque prénom comme une petite œuvre joyeuse — un mélange de couleurs franches et d'écriture manuscrite qui réchauffe instantanément une chambre. Elle se glisse dans un cadre en bois clair, s'accroche au mur et transforme un coin ordinaire en déclaration d'amour colorée. Seule ou accompagnée d'autres créations de la collection, elle apporte ce petit supplément de personnalité qui fait toute la différence.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eSaisissez le prénom de votre enfant. Chaque lettre sera soigneusement intégrée dans la composition calligraphiée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée sur un papier de qualité, protégée avec soin et expédiée chez vous, prête à être encadrée ou offerte.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Des couleurs qui racontent quelque chose\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eRose bonbon, kaki chaleureux, touches orangées et calligraphie bordeaux : cette palette équilibrée apporte une énergie joyeuse à la chambre tout en restant douce et harmonieuse, saison après saison.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🤍 Une calligraphie pleine de caractère\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe prénom est tracé dans une écriture cursive manuscrite qui donne à chaque création son unicité. Plus qu'une simple décoration, c'est un geste tendre accroché au mur, un rappel quotidien que ce prénom compte.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #C27E91;\n    --ap-primary-dark: #7B1F1F;\n    --ap-accent-peps: #D4923A;\n    --ap-olive: #8B8C3A;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top {\n    margin-bottom: 1rem;\n  }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    margin: 0 4px;\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-section-howto {\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem 1.75rem;\n    border: 1px solid var(--ap-border);\n    box-shadow: var(--ap-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-step:hover {\n    transform: translateY(-3px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-step-number {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    min-width: 40px;\n    height: 40px;\n    border-radius: 50%;\n    background: var(--ap-primary-dark);\n    color: var(--ap-white);\n    font-weight: 700;\n    font-size: 16px;\n    flex-shrink: 0;\n  }\n\n  .ap-step-content {\n    flex: 1;\n  }\n\n  .ap-step-title {\n    font-size: 15px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin: 0 0 0.35rem 0;\n  }\n\n  .ap-step-desc {\n    font-size: 13.5px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid {\n      grid-template-columns: 1fr;\n    }\n    .ap-mpv-container {\n      padding: 1.5rem 1rem;\n    }\n    .ap-step {\n      flex-direction: column;\n      align-items: center;\n      text-align: center;\n      padding: 1.25rem 1.25rem;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card {\n      animation: apFadeInUp 0.5s ease backwards;\n    }\n    .ap-step {\n      animation: apFadeInUp 0.5s ease backwards;\n    }\n    .ap-step:nth-child(1) { animation-delay: 0.05s; }\n    .ap-step:nth-child(2) { animation-delay: 0.15s; }\n    .ap-step:nth-child(3) { animation-delay: 0.25s; }\n  }\n\n  @keyframes apFadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63104486932829,"sku":"AFF-PRE-CALL-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-CALLIGRAPHIE-CADRE.webp?v=1769441960"},{"product_id":"affiche-prenom-douce-nuit","title":"Affiche Prénom - Douce Nuit","description":"\u003c!-- ANALYSE :\n  - Type : AFFICHE PERSONNALISÉE (prénom + date de naissance, fichier numérique à imprimer)\n  - Palette extraite des visuels : bleu cobalt profond, terracotta\/rouge brique, rose poudré ancien, ocre doré (étoile), fond crème chaud\n  - Couleurs retenues : bleu cobalt (#2A4EC5), terracotta doux (#C14A38), ocre lumineux (#D4912A)\n  - Ambiance : Poétique, enfantine mais moderne, joyeuse, unisexe, intemporelle\n  - Prefix : ap (affiche personnalisée)\n  - Section \"Comment ça marche ?\" obligatoire\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Douce Nuit\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn oiseau bleu, une étoile dorée et le prénom de votre enfant qui s'envole au cœur de sa chambre.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eInspirée de notre illustration iconique Bonne Nuit Mon Amour, l'affiche Douce Nuit célèbre l'arrivée d'un tout-petit avec des couleurs franches et chaleureuses. Un oiseau bleu cobalt traverse le ciel, une étoile dorée veille en silence, et des bordures festonnées rose et terracotta encadrent le tout comme un timbre précieux. Au centre, le prénom et la date de naissance de votre enfant s'inscrivent naturellement dans l'illustration, comme s'ils avaient toujours été là. Unisexe et intemporelle, cette affiche personnalisée illumine aussi bien la chambre d'une petite fille que celle d'un petit garçon — et devient, au fil des années, un repère doux dans le décor de ses premiers souvenirs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eRenseignez vos options personnalisées\u003c\/strong\u003e\n\u003cp\u003eIndiquez le prénom de l'enfant et sa date de naissance dans les champs prévus.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eRelecture avant validation\u003c\/strong\u003e\n\u003cp\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003cstrong\u003eImpression et livraison soignée\u003c\/strong\u003e\n\u003cp\u003eVotre affiche est imprimée avec soin sur un papier premium puis expédiée dans un emballage protecteur jusqu'à votre boîte aux lettres.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un prénom qui prend vie\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe prénom et la date de naissance de votre enfant sont intégrés directement dans l'illustration originale, au milieu de l'oiseau et de l'étoile. Ce n'est pas un simple texte posé sur une image : c'est une composition pensée pour que chaque lettre trouve sa place avec harmonie.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e💌 Le cadeau de naissance qui dure\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eBien loin des cadeaux oubliés au fond d'un tiroir, cette affiche accompagne l'enfant au fil des années. On la voit chaque matin en ouvrant les yeux, on la retrouve sur les photos d'enfance — un souvenir coloré qui traverse le temps avec élégance.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #2A4EC5;\n    --ap-primary-dark: #1E3A8A;\n    --ap-accent-peps: #C14A38;\n    --ap-accent-gold: #D4912A;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top { margin-bottom: 1rem; }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    margin: 0 4px;\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-section-howto {\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem;\n    border: 1px solid var(--ap-border);\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-step-num {\n    flex-shrink: 0;\n    width: 36px;\n    height: 36px;\n    background: var(--ap-accent-peps);\n    color: var(--ap-white);\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 700;\n    font-size: 15px;\n    margin-top: 2px;\n  }\n\n  .ap-step-content strong {\n    display: block;\n    font-size: 15px;\n    color: var(--ap-primary-dark);\n    margin-bottom: 0.35rem;\n  }\n\n  .ap-step-content p {\n    font-size: 13.5px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid { grid-template-columns: 1fr; }\n    .ap-mpv-container { padding: 1.5rem 1rem; }\n    .ap-badges-top { display: flex; flex-direction: column; align-items: center; gap: 6px; }\n    .ap-badge { margin: 0; }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n    .ap-card:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n    .ap-step:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step:nth-child(3) { animation-delay: 0.2s; }\n  }\n\n  @keyframes ap-fadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63104964133213,"sku":"AFF-PRE-DOUC-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-DOUCE_NUIT-PHOTO1.webp?v=1768225652"},{"product_id":"affiche-prenom-cool-ours","title":"Affiche Prénom - Cool Ours","description":"\u003c!-- ANALYSE MPV --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Produit : Affiche Prénom - Cool Ours --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Catégorie : AFFICHE PERSONNALISÉE --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Palette : Vert sauge\/forêt (fond rayé), terracotta\/corail (casquette + prénom), beige chaud (t-shirt ours) --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Prefix : ap --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- Ambiance : Enfantine, joyeuse, moderne, graphique pop avec douceur --\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Cool Ours\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn ours malicieux, une casquette vissée sur la tête et le prénom de votre enfant en lettres joyeuses : voilà une chambre qui raconte déjà sa petite histoire.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eIl y a des affiches qu'on accroche, et il y a celles qui deviennent un repère dans la chambre — un compagnon silencieux, toujours là, sur le mur juste au-dessus du lit. L'affiche Cool Ours, c'est ce petit portrait d'ours attendrissant, coiffé de sa casquette légèrement de travers, qui accueille le prénom et la date de naissance de votre enfant dans une palette chaleureuse de vert forêt, de terracotta et de beige doux. Pensée pour les chambres d'aujourd'hui comme pour celles de demain, elle traverse les âges avec le même naturel qu'un doudou qu'on ne lâche jamais vraiment.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eSaisissez le prénom de votre enfant et sa date de naissance tels que vous souhaitez les voir apparaître sur l'affiche. Prénom composé, accent, tiret : tout est possible.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier premium au rendu mat et noble, puis expédiée dans un emballage rigide pour arriver chez vous en parfait état.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un design graphique et chaleureux\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eL'ours Cool est dessiné dans un style pop et moderne, avec ses rayures vert forêt et ses touches terracotta. Une illustration qui s'intègre naturellement dans les chambres en bois clair, rotin ou linge fleuri.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🌿 Une affiche qui grandit avec votre enfant\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eDe la chambre de bébé à celle du grand enfant, le Cool Ours garde son charme intemporel. Garçon ou fille, son graphisme équilibré et ses couleurs douces traversent les années sans prendre une ride.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #4A7C59;\n  --ap-primary-dark: #3A5F45;\n  --ap-accent-peps: #D46B4B;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 750px;\n  margin: 0 auto 3.5rem auto;\n}\n\n.ap-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.ap-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1rem;\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-3px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  min-width: 36px;\n  height: 36px;\n  background: var(--ap-primary);\n  color: var(--ap-white);\n  border-radius: 50%;\n  font-weight: 700;\n  font-size: 15px;\n  flex-shrink: 0;\n}\n\n.ap-step-content {\n  flex: 1;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.4rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n  .ap-step { flex-direction: column; align-items: center; text-align: center; }\n  .ap-step-number { margin-bottom: 0.5rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes ap-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63104993132893,"sku":"AFF-PRE-COOL-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-OURS-NAISSANCE.webp?v=1767779461"},{"product_id":"affiche-prenom-chien-cool","title":"Affiche Prénom - Chien Cool","description":"\u003c!-- ANALYSE MPV\n  - Produit : Affiche Prénom - Chien Cool\n  - Catégorie : AFFICHE PERSONNALISÉE\n  - Palette : Bleu ciel doux (#A8C8D8), Pêche\/nude (#F2D9C4), Vert casquette (#2D6B4F), Brun chaud (#7A3E1E)\n  - Ambiance : Enfantine, pop, joyeuse, graphique, moderne\n  - Prefix CSS : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Chien Cool\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUne bouille irrésistible, un nœud léopard et le prénom de votre enfant : le trio le plus stylé de sa chambre.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eIl y a des affiches qu'on accroche… et d'autres qu'on chérit pour toujours. Avec sa casquette verte vissée sur la tête, son bandana léopard et son sourire espiègle, le Chien Cool est devenu l'un des personnages préférés de l'univers Ma petite vie. On l'a imaginé pour habiller les chambres des tout-petits avec du caractère, du pep's et beaucoup de tendresse. Le fond rayé bleu ciel et nude, les contours festonnés façon timbre-poste géant : chaque détail a été dessiné pour créer une affiche qui sort du lot tout en restant douce et intemporelle. Le prénom et la date de naissance de votre enfant sont intégrés directement dans l'illustration — pas un ajout, mais une vraie pièce unique pensée spécialement pour lui.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un design pop et attachant\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eL'illustration mêle des tons nude, bleu ciel et brun chaud dans un style graphique contemporain qui plaît autant aux parents qu'aux enfants. Un vrai petit tableau de caractère, pensé pour rester tendance au fil des années.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e💌 Le cadeau de naissance idéal\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eOriginale, mémorable et profondément personnelle : cette affiche fait partie des cadeaux qu'on garde bien après les premiers mois. Un souvenir précieux qui grandit avec votre enfant et raconte le début de sa belle histoire.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e1\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eIndiquez le prénom et la date de naissance tels que vous souhaitez les voir apparaître sur l'affiche.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e2\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-num\"\u003e3\u003c\/span\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier de qualité, puis expédiée dans un emballage protecteur pour arriver chez vous en parfait état, prête à être encadrée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #A8C8D8;\n  --ap-primary-dark: #2D6B4F;\n  --ap-accent-peps: #C46A3B;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-howto {\n  max-width: 700px;\n  margin: 0 auto 3.5rem auto;\n}\n\n.ap-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.ap-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1rem;\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-3px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-num {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 38px;\n  height: 38px;\n  min-width: 38px;\n  border-radius: 50%;\n  background: var(--ap-primary);\n  color: var(--ap-white);\n  font-weight: 700;\n  font-size: 15px;\n}\n\n.ap-step-content {\n  flex: 1;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.35rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n  .ap-step {\n    flex-direction: column;\n    align-items: center;\n    text-align: center;\n  }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes apFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63113148825949,"sku":"AFF-PRE-CHIE-02","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-NAISSANCE-COOL-DOG-CADRE.webp?v=1770642499"},{"product_id":"affiche-prenom-wallpaper","title":"Affiche Prénom - Wallpaper","description":"\u003c!-- \n  ANALYSE MPV\n  - Produit : Affiche Prénom - Wallpaper\n  - Catégorie : AFFICHE PERSONNALISÉE (prénom + date de naissance personnalisables)\n  - Palette extraite des visuels : bleu ciel doux (#A8D0E6), rose poudré (#F2D4D0), vert forêt profond (#1B5E3B) pour la typo\n  - Ambiance : Graphique, joyeuse, rayures rétro-modernes, chambre d'enfant design\n  - Prefix : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Wallpaper\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eL'indémodable rayure revisitée, pour inscrire son joli prénom dans un décor plein de pep's.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eDes rayures franches, des couleurs douces et vibrantes à la fois, un prénom en belle typographie rétro : l'affiche Wallpaper pose l'ambiance d'une chambre d'enfant moderne en un clin d'œil. Inspirée des papiers peints graphiques qui font sourire, elle mêle bleu ciel et rose poudré sur un fond rayé plein de caractère, relevé par un vert profond qui donne toute sa personnalité au prénom de votre petit. Encadrée dans un cadre en bois clair, elle devient instantanément la pièce maîtresse du mur — celle qu'on regarde chaque matin avec tendresse.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePrénom, date de naissance, couleur de fond… complétez les champs juste au-dessus pour créer une affiche qui ne ressemble qu'à votre enfant.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier de qualité, puis expédiée dans un emballage rigide pour arriver chez vous en parfait état.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Des rayures qui ont du style\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe motif rayé façon wallpaper apporte une touche graphique immédiate à la chambre. Les larges bandes alternées bleu ciel et rose poudré créent un rythme joyeux qui habille le mur sans le surcharger — parfait pour un univers enfantin et contemporain.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🌿 Un prénom mis en lumière\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLa typographie rétro en vert profond contraste magnifiquement avec les teintes pastel du fond. Le prénom de votre enfant devient le héros de l'affiche, accompagné de sa date de naissance pour en faire un souvenir unique et intemporel.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #A8D0E6;\n  --ap-primary-dark: #1B5E3B;\n  --ap-accent-peps: #E8A87C;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-steps {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 1.5rem;\n}\n\n.ap-step {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.75rem 1.5rem;\n  border: 1px solid var(--ap-border);\n  box-shadow: var(--ap-shadow-soft);\n  text-align: center;\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: var(--ap-primary-dark);\n  color: var(--ap-white);\n  font-size: 15px;\n  font-weight: 700;\n  margin-bottom: 0.75rem;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.5rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-steps { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes apFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63113154920797,"sku":"AFF-PRE-WALL-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-RAYURES-BLEUES-ENFANT.webp?v=1768488013"},{"product_id":"affiche-prenom-rayures-roses","title":"Affiche Prénom - Rayures Roses","description":"\u003c!-- ANALYSE MPV\nProduit : Affiche Prénom - Rayures Roses\nCatégorie : AFFICHE PERSONNALISÉE\nPalette extraite de l'image : Orange chaud (corail\/tangerine), Rose bonbon (lilas rosé), Vert forêt profond (texte)\nAmbiance : Pep's, joyeuse, enfantine, moderne, colorée\nPrefix : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom – rayures roses\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eDes rayures pleines de pep's, un prénom qui claque et trois petits cœurs pour célébrer l'arrivée de votre merveille.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eDes bandes roses et orange vif qui se répondent comme un bonbon acidulé, un prénom en lettres rondes et généreuses typé rétro, et trois cœurs vert forêt posés juste en dessous : voilà le cocktail vitaminé de cette affiche de naissance. Elle apporte instantanément du caractère à une chambre d'enfant, que ce soit au-dessus du lit, sur une étagère ou glissée dans un joli cadre en bois clair. Existe aussi en version bleu et jaune pour varier les plaisirs et assortir chaque univers.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eChoisissez le prénom, la date de naissance et le format souhaité directement depuis les options du produit.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier épais aux couleurs éclatantes, puis expédiée dans un emballage rigide pour arriver parfaite chez vous.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Des couleurs qui réveillent la chambre\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe duo rose bonbon et orange tangerine donne une énergie folle à cette affiche. Les teintes sont fidèlement restituées à l'impression pour un rendu vibrant qui attire l'œil et fait sourire dès qu'on entre dans la pièce.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🖋️ Une typo rétro pleine de personnalité\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe prénom s'affiche en lettres rondes et épaisses, dans un vert forêt profond qui contraste magnifiquement avec les rayures. Un style vintage-moderne qui grandit avec votre enfant sans jamais se démoder.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #E8829A;\n  --ap-primary-dark: #1B5E20;\n  --ap-accent-peps: #E87840;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-steps {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 1.5rem;\n}\n\n.ap-step {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.75rem 1.5rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  text-align: center;\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: var(--ap-accent-peps);\n  color: var(--ap-white);\n  font-size: 15px;\n  font-weight: 700;\n  margin-bottom: 0.75rem;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.5rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-steps { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-step { animation: apFadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes apFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63113334063453,"sku":"AFF-PRE-RAYU-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Affiche-Rayures_roses.webp?v=1770644014"},{"product_id":"livre-ma-maison","title":"Livre – Ma maison","description":"\u003c!--\n=== ANALYSE CHARTE MA PETITE VIE ===\nCatégorie Produit : DÉCO (Objet \/ Livre illustré cartonné pour bébé)\nTeintes Douces \u0026 Pep's sélectionnées : \n  - Primaire : #E8734A (corail orangé chaleureux, issu de la couverture)\n  - Accent Pep's : #3B4B9E (bleu nuit profond, issu des pages intérieures)\nPréfixe CSS unique : dc\n--\u003e\n\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\n  \u003c!-- 1. HERO SECTION SOBRE --\u003e\n  \u003cdiv class=\"dc-hero\"\u003e\n    \u003cdiv class=\"dc-hero-content\"\u003e\n      \u003cdiv class=\"dc-badges-top\"\u003e\n        \u003cspan class=\"dc-badge\"\u003eCollection Ma Petite Vie × Milan\u003c\/span\u003e\n        \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"dc-hero-title\"\u003eL'album photos de ma maison\u003c\/span\u003e\n      \u003cp class=\"dc-subtitle\"\u003eUn livre cartonné pour bébé qui devient, photo après photo, un vrai trésor de famille.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 2. SECTION HISTOIRE \u0026 ATTRIBUTS PRINCIPAUX --\u003e\n  \u003cdiv class=\"dc-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"dc-intro-text\"\u003eIl y a des objets qu'on garde toute une vie. Des objets simples, un peu usés à force d'être feuilletés, qui sentent encore l'enfance quand on les retrouve au fond d'un tiroir. Cet album tout-carton mêle dix doubles pages d'illustrations chaleureuses — la chambre douillette, le bain du soir, les repas en famille — et six pochettes dans lesquelles glisser vos propres photos. Votre bébé dans son bain, dans les bras de grand-mère, dans son coin préféré du salon… Chaque pochette transforme ce livre illustré en album personnel, unique, taillé sur mesure pour votre famille. Les formes rondes, les couleurs vives mais apaisantes et les petits détails du foyer captent l'attention des tout-petits dès les premiers mois, tout en stimulant la reconnaissance des lieux familiers et le sentiment de sécurité affective. Montrer ce livre à votre tout-petit, c'est déjà lui raconter sa propre histoire.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 3. GRILLE DE POINTS FORTS --\u003e\n  \u003cdiv class=\"dc-grid\"\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eCostaud et pensé pour les petites mains\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eDes pages en carton épais, solides, rigides et faciles à tourner même pour les mains maladroites des 6 mois et plus. Pas de pages qui se déchirent, pas de coins qui s'abîment au premier passage : ce livre est fait pour être relu, encore et encore, avec les années.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eSix pochettes pour vos plus beaux souvenirs\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eChoisissez vos six plus belles photos, glissez-les dans les pochettes prévues à cet effet — aucun collage, aucun outil nécessaire — et feuilletez ensemble. Regardez votre tout-petit reconnaître son propre visage avec un sourire : c'est un moment précieux à chaque lecture.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eUn cadeau qui a du sens\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eLoin des hochets oubliés et des peluches interchangeables, cet album fait un cadeau de naissance ou de premier Noël particulièrement touchant. Glissez-y les photos avant de l'emballer et il aura une âme avant même d'être ouvert. Il existe aussi \"L'album photos de ma famille\" pour compléter la collection.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 4. MESSAGE DE FIN --\u003e\n  \u003csection class=\"dc-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #E8734A;\n  --dc-primary-dark: #C45A34;\n  --dc-accent-peps: #3B4B9E;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n  .dc-card:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes dcFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63181344866653,"sku":"LIV-MA-MAIS-01","price":6.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Livre-ma-maison-04.webp?v=1769172049"},{"product_id":"livre-ma-premiere-annee","title":"Livre – Ma première année","description":"\u003c!--\n=== ANALYSE CHARTE MA PETITE VIE ===\nCatégorie Produit : DÉCO (Objet \/ Livre illustré)\nTeintes Douces \u0026 Pep's sélectionnées : \n  - Primaire : #8CB369 (vert sauge lumineux, rappel couverture)\n  - Accent Pep's : #E8927C (corail rosé doux, rappel intérieurs \u0026 lampe)\nPréfixe CSS unique : dc\n--\u003e\n\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\n  \u003c!-- 1. HERO SECTION SOBRE --\u003e\n  \u003cdiv class=\"dc-hero\"\u003e\n    \u003cdiv class=\"dc-hero-content\"\u003e\n      \u003cdiv class=\"dc-badges-top\"\u003e\n        \u003cspan class=\"dc-badge\"\u003eÉditions Milan Jeunesse\u003c\/span\u003e\n        \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"dc-hero-title\"\u003eL'album photos de ma première année\u003c\/span\u003e\n      \u003cp class=\"dc-subtitle\"\u003eUn livre-souvenir à feuilleter ensemble, où les illustrations tendres se mêlent aux photos de votre petit cœur.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 2. SECTION HISTOIRE \u0026 ATTRIBUTS PRINCIPAUX --\u003e\n  \u003cdiv class=\"dc-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"dc-intro-text\"\u003eIl y a le premier sourire, la main qui attrape un doigt, le doudou qu'on ne lâche jamais. Des instants fugaces qui filent entre les jours et qui méritent bien plus qu'un dossier oublié dans un téléphone. Cet album cartonné est né pour leur offrir une vraie maison : dix doubles pages richement illustrées où la vie quotidienne de bébé prend des couleurs chaleureuses — les bercements, les rires en chœur, le mobile qui tourne — et six pochettes intégrées prêtes à accueillir vos plus belles photos. Solide, pensé pour les petites mains curieuses dès la naissance, il est à la fois un livre d'éveil que bébé explore et un trésor de famille que l'on complétera au fil des mois. Un objet simple, joyeux et durable, à garder précieusement ou à offrir le cœur léger.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 3. GRILLE DE POINTS FORTS --\u003e\n  \u003cdiv class=\"dc-grid\"\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eLivre d'éveil et album souvenir en un seul objet\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eBébé le feuillette, le mordille, le découvre comme un vrai livre illustré dès ses premières semaines. Les parents, eux, y glissent leurs photos préférées au fil de la première année. Deux usages, un même bonheur.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eCartonné, solide et fait pour durer\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eDes pages épaisses qui résistent aux petites mains sans frémir, des couleurs douces qui ne se fanent pas, un format compact qui trouve sa place sur la table de nuit ou dans la bibliothèque de la chambre.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eUn cadeau de naissance plein de sens\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eNi trop encombrant ni impersonnel, il se personnalise naturellement avec les photos de l'enfant. Un présent qui prend de la valeur avec le temps — pour les parents, les grands-parents, ou une baby shower.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 4. MESSAGE DE FIN --\u003e\n  \u003csection class=\"dc-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #8CB369;\n  --dc-primary-dark: #5A7A3A;\n  --dc-accent-peps: #E8927C;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n  .dc-card:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes dcFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63181375766877,"sku":"LIV-MA-PREM-01","price":6.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Livre-ma-premiere-anne-01.webp?v=1769171860"},{"product_id":"livre-mon-anniversaire","title":"Livre – Mon anniversaire","description":"\u003c!--\n=== ANALYSE CHARTE MA PETITE VIE ===\nCatégorie Produit : DÉCO (Objet \/ Livre illustré pour enfants)\nTeintes Douces \u0026 Pep's sélectionnées : \n  - Primaire : #5AABF7 (bleu ciel doux du livre)\n  - Accent Pep's : #E8698A (rose confetti joyeux)\nPréfixe CSS unique : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003c!-- 1. HERO SECTION SOBRE --\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eLivre – Mon anniversaire\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eUn petit livre-album pour que les bougies soufflées, les éclats de rire et les confettis ne s'envolent jamais tout à fait.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 2. SECTION HISTOIRE \u0026 ATTRIBUTS PRINCIPAUX --\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eÉdité par Milan Jeunesse et dessiné par Ma petite vie, ce livre cartonné est bien plus qu'un imagier d'anniversaire. Avec ses dix doubles pages aux couleurs éclatantes et ses six pochettes secrètes, il invite votre enfant à glisser ses plus belles photos de fête entre les illustrations tendres et les confettis qui dansent. Gâteau aux bougies, ballons qui s'envolent, cadeaux qui brillent : chaque scène raconte la magie du grand jour dans un style graphique moderne et chaleureux. C'est un objet robuste, pensé pour les petites mains curieuses, qui se feuillette encore et encore — et qui devient, au fil des années, un véritable trésor familial à portée de doigts.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- 3. GRILLE DE POINTS FORTS --\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn album vivant à personnaliser\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eSix pochettes intégrées accueillent vos photos préférées : le sourire devant le gâteau, les yeux émerveillés, les bras levés de joie. Votre enfant peut feuilleter seul son livre, se reconnaître et raconter ce qu'il voit. Un outil d'éveil, de langage et de mémoire affective, tout à la fois.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eSolide, joyeux et fait pour durer\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eLe format cartonné résiste aux aventures du quotidien et se glisse facilement dans un panier cadeau ou sur une étagère. Offrez-le avec quelques photos déjà glissées à l'intérieur pour une surprise qui touche les parents au cœur — un cadeau d'anniversaire vraiment unique.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 4. MESSAGE DE FIN --\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --dc-bg-cream: #FDFBF7;\n    --dc-white: #ffffff;\n    --dc-primary: #5AABF7;\n    --dc-primary-dark: #2E6BA4;\n    --dc-accent-peps: #E8698A;\n    --dc-text-main: #2A2A2A;\n    --dc-text-muted: #666666;\n    --dc-border: #EFEBE4;\n    --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --dc-radius: 12px;\n  }\n\n  .dc-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--dc-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--dc-text-main);\n    line-height: 1.6;\n  }\n\n  .dc-hero {\n    background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #EAF3FD 100%);\n    border-radius: var(--dc-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--dc-border);\n  }\n\n  .dc-badges-top { margin-bottom: 1rem; }\n\n  .dc-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--dc-white);\n    border: 1px solid var(--dc-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--dc-text-main);\n    margin: 0 4px;\n    box-shadow: var(--dc-shadow-soft);\n  }\n\n  .dc-hero-title {\n    display: block;\n    color: var(--dc-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .dc-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--dc-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .dc-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .dc-intro-text {\n    font-size: 13.5px;\n    color: var(--dc-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .dc-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .dc-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .dc-card {\n    background: var(--dc-white);\n    border-radius: var(--dc-radius);\n    padding: 2rem;\n    box-shadow: var(--dc-shadow-soft);\n    border: 1px solid var(--dc-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .dc-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--dc-shadow-hover);\n  }\n\n  .dc-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .dc-card-desc {\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .dc-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--dc-border);\n  }\n\n  .dc-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .dc-grid { grid-template-columns: 1fr; }\n    .dc-mpv-container { padding: 1.5rem 1rem; }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n    .dc-card:nth-child(2) { animation-delay: 0.1s; }\n  }\n\n  @keyframes dcFadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63181418037597,"sku":"LIV-MON-ANNI-01","price":6.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Livre-mon-anniversaire-01.webp?v=1769171798"},{"product_id":"livre-ma-famille","title":"Livre – Ma famille","description":"\u003c!--\n=== ANALYSE CHARTE MA PETITE VIE ===\nCatégorie Produit : DÉCO (Livre-objet \/ Album photo tout-carton pour bébé)\nTeintes Douces \u0026 Pep's sélectionnées : \n  - Primaire : #D4943A (ocre chaud moutarde, fidèle à la couverture jaune du livre)\n  - Accent Pep's : #E2665A (corail-rouge des tulipes illustrées)\nPréfixe CSS unique : dc\n--\u003e\n\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\n  \u003c!-- 1. HERO SECTION SOBRE --\u003e\n  \u003cdiv class=\"dc-hero\"\u003e\n    \u003cdiv class=\"dc-hero-content\"\u003e\n      \u003cdiv class=\"dc-badges-top\"\u003e\n        \u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e\n        \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"dc-hero-title\"\u003eL'album photos de ma famille\u003c\/span\u003e\n      \u003cp class=\"dc-subtitle\"\u003eUn livre-câlin où glisser vos plus beaux souvenirs, pour que bébé feuillette votre histoire d'amour familiale du bout des doigts.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 2. SECTION HISTOIRE \u0026 ATTRIBUTS PRINCIPAUX --\u003e\n  \u003cdiv class=\"dc-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"dc-intro-text\"\u003eIl y a des livres qu'on offre, et puis il y a ceux qu'on chérit toute une vie. \u003cem\u003eMa famille\u003c\/em\u003e fait partie de ces objets rares qui deviennent un trésor de famille dès la première photo glissée entre ses pages. Édité par Milan dans la collection Ma Petite Vie, ce petit album tout-carton aux coins arrondis accompagne les tout-petits dès 6 mois dans la découverte joyeuse de leur quotidien : les câlins du matin, les grimaces rigolotes, les goûters partagés, les rires en chœur. Dix doubles pages illustrées avec douceur et pep's accueillent six emplacements cachés pour y glisser vos photos préférées. En quelques instants, ce livre d'éveil se transforme en album souvenir unique, rien qu'à vous — un objet que bébé feuillette avec fierté et que les parents contemplent avec émotion, encore et encore.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 3. GRILLE DE POINTS FORTS --\u003e\n  \u003cdiv class=\"dc-grid\"\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eUn livre qui devient le vôtre\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eSix cachettes photo intégrées dans les illustrations permettent de personnaliser chaque page avec vos plus beaux clichés. Un portrait de famille, un selfie avec mamie, un premier gâteau d'anniversaire… le livre raconte votre histoire, pas celle d'un autre.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003ePensé pour les petites mains\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003ePages cartonnées épaisses, coins arrondis, format compact et couleurs vives qui stimulent l'éveil visuel : chaque détail est conçu pour que bébé puisse le manipuler en toute sécurité et avec plaisir, dès ses 6 mois.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003eUne idée cadeau pleine de sens\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eCadeau de naissance, premier anniversaire ou simplement envie de faire plaisir : cet album coche toutes les cases. Offrez-le seul ou avec les autres titres de la collection pour constituer une bibliothèque-souvenir qui raconte les premières grandes étapes de la vie de bébé.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- 4. MESSAGE DE FIN --\u003e\n  \u003csection class=\"dc-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #D4943A;\n  --dc-primary-dark: #8C5E1E;\n  --dc-accent-peps: #E2665A;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dc-fadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n  .dc-card:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes dc-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63181428195677,"sku":"LIV-MA-FAMI-01","price":6.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Livre-ma-famille-01.webp?v=1769171772"},{"product_id":"carte-cadeau-ma-petite-vie","title":"Carte Cadeau Ma Petite Vie","description":"\u003c!-- ANALYSE MPV\n- Produit : Carte Cadeau Ma Petite Vie\n- Catégorie : OBJET DÉCO \/ DIVERS (carte cadeau physique imprimée)\n- Palette extraite des images : rose poudré\/bonbon (#F2B5BC), rouge corail\/cœur (#E8503A), vert profond typographie (#2D6A4F), touches lavande et enveloppes colorées\n- Ambiance : Festive, joyeuse, enfantine mais design, généreuse\n- Prefix : cc (carte cadeau)\n--\u003e\n\u003cdiv class=\"cc-mpv-container\"\u003e\n\u003cdiv class=\"cc-hero\"\u003e\n\u003cdiv class=\"cc-hero-content\"\u003e\n\u003cdiv class=\"cc-badges-top\"\u003e\n\u003cspan class=\"cc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"cc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"cc-hero-title\"\u003eCarte cadeau Ma Petite Vie\u003c\/span\u003e\n\u003cp class=\"cc-subtitle\"\u003eOffrir de la joie sans se tromper, c'est le plus beau des cadeaux\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"cc-intro-text\"\u003eLa carte cadeau Ma Petite Vie est née d'une envie simple : permettre d'offrir une attention sincère tout en laissant la liberté de choisir. Imprimée sur un joli support ou en version digitale, elle transforme un bon d'achat en un vrai petit cadeau plein de personnalité. Valable un an sur l'ensemble du site mapetitevie.fr, elle ouvre les portes d'une sélection soignée de produits pour les tout-petits et leur entourage.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-grid\"\u003e\n\u003cdiv class=\"cc-card\"\u003e\n\u003ch3 class=\"cc-card-title\"\u003e🎁 Le cadeau qui ne se trompe jamais\u003c\/h3\u003e\n\u003cp class=\"cc-card-desc\"\u003eNaissance, baby shower, anniversaire ou simplement pour faire plaisir : la carte cadeau s'adapte à toutes les occasions. Celui qui la reçoit choisit exactement ce qui lui fait envie parmi toute la boutique, sans contrainte et à son rythme.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-card\"\u003e\n\u003ch3 class=\"cc-card-title\"\u003e💌 Un écrin soigné, prêt à offrir\u003c\/h3\u003e\n\u003cp class=\"cc-card-desc\"\u003ePas de simple code par mail ici : votre carte cadeau arrive directement dans votre boîte mail. \u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-section-how\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"cc-steps\"\u003e\n\u003cdiv class=\"cc-step\"\u003e\n\u003cdiv class=\"cc-step-num\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"cc-step-content\"\u003e\n\u003cstrong\u003eChoisissez le montant\u003c\/strong\u003e\n\u003cp\u003eSélectionnez la valeur souhaitée parmi les options disponibles et ajoutez la carte à votre panier.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-step\"\u003e\n\u003cdiv class=\"cc-step-num\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"cc-step-content\"\u003e\n\u003cstrong\u003eRecevez et offrez\u003c\/strong\u003e\n\u003cp\u003eVous recevez la carte par mail, prête à être offerte. Si vous voulez la version imprimée, à vous de jouer !\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cc-step\"\u003e\n\u003cdiv class=\"cc-step-num\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"cc-step-content\"\u003e\n\u003cstrong\u003eLe bénéficiaire fait son choix\u003c\/strong\u003e\n\u003cp\u003eIl se rend sur mapetitevie.fr, sélectionne ce qui lui plaît et utilise son code unique lors du paiement. La carte est valable un an sur tout le site.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\" class=\"cc-section-final\"\u003e\n\u003cp class=\"cc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --cc-bg-cream: #FDFBF7;\n  --cc-white: #ffffff;\n  --cc-primary: #E8503A;\n  --cc-primary-dark: #2D6A4F;\n  --cc-accent-peps: #E8503A;\n  --cc-text-main: #2A2A2A;\n  --cc-text-muted: #666666;\n  --cc-border: #EFEBE4;\n  --cc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --cc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --cc-radius: 12px;\n  --cc-pink-soft: #F9D5DA;\n}\n\n.cc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--cc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--cc-text-main);\n  line-height: 1.6;\n}\n\n.cc-hero {\n  background: linear-gradient(135deg, var(--cc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--cc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--cc-border);\n}\n\n.cc-badges-top { margin-bottom: 1rem; }\n\n.cc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--cc-white);\n  border: 1px solid var(--cc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--cc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--cc-shadow-soft);\n}\n\n.cc-hero-title {\n  display: block;\n  color: var(--cc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.cc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--cc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.cc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.cc-intro-text {\n  font-size: 13.5px;\n  color: var(--cc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.cc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--cc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.cc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.cc-card {\n  background: var(--cc-white);\n  border-radius: var(--cc-radius);\n  padding: 2rem;\n  box-shadow: var(--cc-shadow-soft);\n  border: 1px solid var(--cc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.cc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--cc-shadow-hover);\n}\n\n.cc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--cc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.cc-card-desc {\n  font-size: 14px;\n  color: var(--cc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.cc-section-how {\n  max-width: 700px;\n  margin: 0 auto 3.5rem auto;\n}\n\n.cc-steps {\n  display: flex;\n  flex-direction: column;\n  gap: 1.25rem;\n}\n\n.cc-step {\n  display: flex;\n  align-items: flex-start;\n  gap: 1rem;\n  background: var(--cc-white);\n  border-radius: var(--cc-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--cc-border);\n  box-shadow: var(--cc-shadow-soft);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.cc-step:hover {\n  transform: translateY(-3px);\n  box-shadow: var(--cc-shadow-hover);\n}\n\n.cc-step-num {\n  background: var(--cc-pink-soft);\n  color: var(--cc-accent-peps);\n  font-weight: 700;\n  font-size: 1.1em;\n  border-radius: 50%;\n  width: 38px;\n  height: 38px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-shrink: 0;\n}\n\n.cc-step-content strong {\n  display: block;\n  font-size: 15px;\n  color: var(--cc-primary-dark);\n  margin-bottom: 4px;\n}\n\n.cc-step-content p {\n  margin: 0;\n  font-size: 13.5px;\n  color: var(--cc-text-muted);\n  line-height: 1.5;\n}\n\n.cc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--cc-border);\n}\n\n.cc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--cc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .cc-grid { grid-template-columns: 1fr; }\n  .cc-mpv-container { padding: 1.5rem 1rem; }\n  .cc-step {\n    flex-direction: column;\n    align-items: center;\n    text-align: center;\n  }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .cc-card { animation: cc-fadeInUp 0.5s ease backwards; }\n  .cc-step { animation: cc-fadeInUp 0.5s ease backwards; }\n  .cc-step:nth-child(2) { animation-delay: 0.1s; }\n  .cc-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes cc-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma petite vie","offers":[{"title":"25,00 €","offer_id":63233865187677,"sku":null,"price":25.0,"currency_code":"EUR","in_stock":true},{"title":"50,00 €","offer_id":63233865220445,"sku":null,"price":50.0,"currency_code":"EUR","in_stock":true},{"title":"80,00 €","offer_id":63233865253213,"sku":null,"price":80.0,"currency_code":"EUR","in_stock":true},{"title":"100,00 €","offer_id":63233865285981,"sku":null,"price":100.0,"currency_code":"EUR","in_stock":true},{"title":"150,00 €","offer_id":63233865318749,"sku":null,"price":150.0,"currency_code":"EUR","in_stock":true},{"title":"200,00 €","offer_id":63233865351517,"sku":null,"price":200.0,"currency_code":"EUR","in_stock":true},{"title":"300,00 €","offer_id":63233865384285,"sku":null,"price":300.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CARTE_CADEAU_2026.webp?v=1769706196"},{"product_id":"affiche-prenom-loiseau","title":"Affiche Prénom - L'oiseau","description":"\u003c!-- ANALYSE MPV\n  - Produit : Affiche Prénom - L'oiseau\n  - Catégorie : AFFICHE PERSONNALISÉE\n  - Ambiance visuelle : Illustration line-art épurée d'un oiseau stylisé, fond crème\/jaune pâle, cadre bois naturel, univers enfantin chaleureux avec carrelage terracotta et murs ocre moutarde\n  - Palette extraite : Crème doux, ocre moutarde lumineux, brun chocolat chaud (trait de l'illustration)\n  - Préfixe CSS : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — L'oiseau\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn petit oiseau poétique qui veille sur la chambre de votre enfant, personnalisé avec son prénom et sa date de naissance.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eDessiné d'un trait libre et joyeux, cet oiseau aux ailes déployées est bien plus qu'une affiche : c'est un compagnon poétique qui s'installe dans la chambre de votre enfant pour y rester longtemps. Avec son style line-art épuré et son allure douce, il apporte une touche d'art et de tendresse à n'importe quel mur. Personnalisé avec le prénom et la date de naissance de votre baby, il devient un souvenir unique, un petit bout de leur histoire accroché au mur. Disponible sur plusieurs fonds de couleur pour s'accorder à toutes les ambiances.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e1\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eChoisissez le prénom, la date de naissance et la couleur de fond qui s'accordera à votre intérieur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e2\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre affiche avant que nous l'envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cspan class=\"ap-step-number\"\u003e3\u003c\/span\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée avec soin sur un papier de qualité, puis expédiée dans un emballage protecteur pour arriver chez vous en parfait état.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e✨ Un trait libre et poétique\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eL'oiseau est dessiné dans un style line-art spontané, à la fois enfantin et moderne. Un dessin qui grandit avec votre enfant et qui ne se démode pas.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003e🎨 Des couleurs pensées pour vos intérieurs\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003ePlusieurs teintes de fond sont disponibles pour s'intégrer naturellement dans la chambre de votre petit, du crème doux au jaune soleil en passant par des tons plus affirmés.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\" class=\"ap-section-final\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --ap-bg-cream: #FDFBF7;\n  --ap-white: #ffffff;\n  --ap-primary: #C8973E;\n  --ap-primary-dark: #4A3728;\n  --ap-accent-peps: #D4922A;\n  --ap-text-main: #2A2A2A;\n  --ap-text-muted: #666666;\n  --ap-border: #EFEBE4;\n  --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --ap-radius: 12px;\n}\n\n.ap-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--ap-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--ap-text-main);\n  line-height: 1.6;\n}\n\n.ap-hero {\n  background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--ap-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--ap-border);\n}\n\n.ap-badges-top { margin-bottom: 1rem; }\n\n.ap-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--ap-white);\n  border: 1px solid var(--ap-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--ap-text-main);\n  margin: 0 4px;\n  box-shadow: var(--ap-shadow-soft);\n}\n\n.ap-hero-title {\n  display: block;\n  color: var(--ap-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.ap-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--ap-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.ap-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-intro-text {\n  font-size: 13.5px;\n  color: var(--ap-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.ap-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.ap-section-howto {\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.ap-steps {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 1.5rem;\n}\n\n.ap-step {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 1.75rem 1.5rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  text-align: center;\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-step:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-step-number {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: var(--ap-primary-dark);\n  color: var(--ap-white);\n  font-size: 15px;\n  font-weight: 700;\n  margin-bottom: 0.75rem;\n}\n\n.ap-step-title {\n  font-size: 15px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin: 0 0 0.5rem 0;\n}\n\n.ap-step-desc {\n  font-size: 13.5px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.ap-card {\n  background: var(--ap-white);\n  border-radius: var(--ap-radius);\n  padding: 2rem;\n  box-shadow: var(--ap-shadow-soft);\n  border: 1px solid var(--ap-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.ap-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--ap-shadow-hover);\n}\n\n.ap-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--ap-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.ap-card-desc {\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.ap-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--ap-border);\n}\n\n.ap-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--ap-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .ap-grid { grid-template-columns: 1fr; }\n  .ap-steps { grid-template-columns: 1fr; }\n  .ap-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-card:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n  .ap-step:nth-child(2) { animation-delay: 0.1s; }\n  .ap-step:nth-child(3) { animation-delay: 0.2s; }\n}\n\n@keyframes ap-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":63965211394397,"sku":"AFF-PRE-LOIS-01","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-OISEAU-POETIQUE.webp?v=1775553286"},{"product_id":"carnet-liberty","title":"Carnet – Liberty","description":"\u003c!-- ANALYSE MPV\n- Produit : Carnet – Liberty\n- Catégorie : OBJET DÉCO \/ DIVERS (papeterie, carnet)\n- Palette extraite des images : rouge coquelicot, vert feuillage, rose poudré, touches orangées et lavande, fond crème\n- Teintes retenues : rouge doux #C7453B (primary), vert sauge #5A7A58 (primary-dark), corail lumineux #E8725A (accent pep's)\n- Ambiance : Joyeuse, fleurie, nomade, quotidien coloré et poétique\n- Prefix : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eCarnet – Liberty\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eUn carnet fleuri qui transforme chaque note en un petit moment de joie\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eIl y a des carnets qu'on achète pour écrire, et puis il y a ceux qu'on choisit parce qu'ils nous ressemblent. Le carnet Liberty fait partie de cette deuxième catégorie. Sa couverture cartonnée habillée d'un motif fleuri liberty — petits chiens, coquelicots, pommes et cœurs dans un joyeux camaïeu de rouges, verts et touches lavande — donne immédiatement envie de l'ouvrir, d'y poser ses mots, ses listes, ses idées du moment. À l'intérieur, des pages lignées crème douces pour les yeux, un signet ruban pour ne jamais perdre le fil, et une première page illustrée à personnaliser. Ce n'est pas juste un carnet de notes : c'est un compagnon de papier pensé pour traverser vos journées avec style et bonne humeur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn objet qu'on a plaisir à sortir\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eLa couverture cartonnée rigide, ornée de son imprimé liberty généreux et coloré, résiste aux aventures du quotidien tout en gardant ce côté soigné qui fait la différence. Au fond du sac, sur un bureau ou posé sur une table de chevet, il attire le regard et donne envie d'écrire.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUne idée cadeau qui touche toujours\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eBeau, utile et personnel : le carnet Liberty coche toutes les cases du cadeau réussi. Glissez-le dans un joli emballage avec un stylo fin, et vous obtenez une attention papeterie raffinée qui plaira aussi bien aux amatrices de journaling qu'aux fans de listes bien ordonnées.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #C7453B;\n  --dc-primary-dark: #5A7A58;\n  --dc-accent-peps: #E8725A;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dc-fadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes dc-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":64268861047133,"sku":"CAR-LIBE-01","price":12.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CARNET-CHIENS-PAPETERIE-DESIGN_c92168c4-8e7e-4ad1-82d6-215f8afbc0ec.webp?v=1782383194"},{"product_id":"carnet-graphic-bloom","title":"Carnet – Graphic Bloom","description":"\u003c!-- ANALYSE MPV\n  • Produit : Carnet – Graphic Bloom\n  • Catégorie détectée : OBJET DÉCO \/ DIVERS (papeterie \/ carnet)\n  • Palette extraite des visuels : rose bonbon #E8688A, teal profond #1E9E96, bordeaux doux #6E3038, bleu lavande #A8B8D0, jaune paille #F0D98C\n  • Teintes retenues : rose poudré corail (primary), teal comme accent pep's, bordeaux comme primary-dark\n  • Ambiance : joyeuse, graphique, folk-moderne, quotidien coloré\n  • Préfixe CSS : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eCarnet – Graphic Bloom\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eLe carnet qu'on pose bien en évidence, parce qu'il est trop beau pour rester caché.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eUn damier de couleurs vives, une fleur rouge audacieuse posée sur un médaillon crème, des tranches arc-en-ciel qui dépassent du sac : le Graphic Bloom n'est pas un simple carnet ligné, c'est un compagnon de route qui donne envie d'écrire, de griffonner, de rêver un peu. Couverture rigide, pages lignées sur papier crème, marque-page en ruban — chaque détail est pensé pour que le quotidien ait un peu plus de personnalité. On l'emporte au café du dimanche matin, on le glisse dans un tote bag avant de prendre le train, on le laisse ouvert sur la table de nuit pour capturer une idée de dernière minute. Quelque part entre l'objet déco et le journal intime, il accompagne les curieux, les créatifs et tous ceux qui refusent de voir l'ordinaire dans les petites choses.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e✨ Un design qui s'assume\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eSa couverture rigide en damier multicolore — rose, teal, bordeaux, bleu lavande, jaune doux — attire l'œil dès qu'il dépasse d'un sac. La grande fleur graphique et folk lui donne un caractère unique, quelque part entre le motif vintage et l'illustration contemporaine.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e🌿 Pensé pour vous suivre partout\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eSon format compact se glisse sans effort dans un sac à main, un tote bag ou la pochette d'un ordinateur. Assez grand pour écrire librement, assez léger pour ne jamais peser. Au café, dans les transports, en voyage ou posé sur le bureau comme un objet déco à part entière.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #E8688A;\n  --dc-primary-dark: #6E3038;\n  --dc-accent-peps: #1E9E96;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dc-fadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes dc-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":64268928975197,"sku":"CAR-GRAP-01","price":12.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CARNET-PAPETERIE-MODERNE-GRAPHIQUE-PAPETERIE.webp?v=1782382121"},{"product_id":"livre-mes-vacances","title":"Livre – Mes vacances","description":"\u003c!-- \n  ANALYSE DU PRODUIT :\n  - Type : OBJET DÉCO \/ DIVERS (Livre tout-carton interactif avec emplacements photos)\n  - Palette : Bleu turquoise vif (couverture), corail\/orange (illustrations voiture, crabes), rose bonbon (pages intérieures citrons), jaune ocre solaire\n  - Ambiance : Estivale, joyeuse, enfantine, familiale, colorée, ludique\n  - Préfixe : dc (déco\/divers)\n  - Focus : Quotidien joyeux, robustesse de l'objet, côté ludique et personnalité\n--\u003e\n\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\n  \u003cdiv class=\"dc-hero\"\u003e\n    \u003cdiv class=\"dc-hero-content\"\u003e\n      \u003cdiv class=\"dc-badges-top\"\u003e\n        \u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e\n        \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"dc-hero-title\"\u003eL'album photos de mes vacances\u003c\/span\u003e\n      \u003cp class=\"dc-subtitle\"\u003eUn livre tout-carton où glisser vos plus belles photos d'été, pour que les souvenirs ne s'envolent jamais.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"dc-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"dc-intro-text\"\u003eLes vacances passent vite — beaucoup trop vite. Les éclats de rire sur la plage, la première glace à deux boules, le coucher de soleil du dernier soir… autant de petits instants qui méritent bien mieux qu'un simple dossier perdu dans votre téléphone. Ce livre illustré tout-carton raconte les grands moments de l'été à travers dix doubles pages hautes en couleurs — le départ en voiture chargée à bloc, les châteaux de sable, les baignades, les glaces qui fondent au soleil — et laisse six emplacements secrets pour y glisser vos propres photos. Parce que la vraie magie, c'est de voir le visage de votre enfant s'illuminer en reconnaissant sa plage, ses amis, sa famille dans les pages du livre.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"dc-grid\"\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003e📖 Un vrai livre, pas un simple album\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eIci, pas de pages vierges à remplir sans inspiration. Chaque double page raconte un moment universel de l'été avec des illustrations joyeuses et inclusives. Votre enfant suit le fil de l'histoire tout en découvrant ses propres souvenirs glissés entre les pages.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003e💪 Solide, feuilletable à l'infini\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eConçu en carton épais et résistant, ce livre est pensé pour les petites mains curieuses qui tournent, plient, mordillent et recommencent. Un objet durable qui stimule le langage, la mémoire et l'attachement, bien au-delà d'un simple souvenir.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"dc-section-howto\"\u003e\n    \u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n    \u003cdiv class=\"dc-steps\"\u003e\n      \u003cdiv class=\"dc-step\"\u003e\n        \u003cspan class=\"dc-step-number\"\u003e1\u003c\/span\u003e\n        \u003cdiv class=\"dc-step-content\"\u003e\n          \u003cstrong\u003eImprimez vos plus belles photos\u003c\/strong\u003e\n          \u003cp\u003eFormat carré ou 10×10 cm recommandé pour s'adapter aux emplacements prévus dans le livre.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"dc-step\"\u003e\n        \u003cspan class=\"dc-step-number\"\u003e2\u003c\/span\u003e\n        \u003cdiv class=\"dc-step-content\"\u003e\n          \u003cstrong\u003eGlissez-les dans les cachettes illustrées\u003c\/strong\u003e\n          \u003cp\u003eSix emplacements sont intégrés directement aux pages, pensés pour accueillir vos clichés en toute simplicité.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"dc-step\"\u003e\n        \u003cspan class=\"dc-step-number\"\u003e3\u003c\/span\u003e\n        \u003cdiv class=\"dc-step-content\"\u003e\n          \u003cstrong\u003eFeuilletez ensemble !\u003c\/strong\u003e\n          \u003cp\u003eVotre enfant reconnaît les visages, les lieux, les moments. Un vrai rituel de mémoire, de langage et de complicité.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"dc-grid\"\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003e🎁 Une idée cadeau qui touche en plein cœur\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eCadeau de rentrée, souvenir post-vacances ou attention pour les grands-parents : cet album personnalisé crée un lien unique. Les tout-petits adorent reconnaître les visages familiers, et les plus grands adorent raconter leurs aventures.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"dc-card\"\u003e\n      \u003ch3 class=\"dc-card-title\"\u003e🌈 Joyeux, coloré et pour toutes les familles\u003c\/h3\u003e\n      \u003cp class=\"dc-card-desc\"\u003eLes illustrations célèbrent la diversité des familles avec des couleurs éclatantes et un trait moderne plein de personnalité. Chaque enfant peut s'y retrouver, s'y reconnaître et se l'approprier comme son propre livre.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003csection class=\"dc-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  :root {\n    --dc-bg-cream: #FDFBF7;\n    --dc-white: #ffffff;\n    --dc-primary: #3ABFCF;\n    --dc-primary-dark: #1A7A8A;\n    --dc-accent-peps: #F9A825;\n    --dc-text-main: #2A2A2A;\n    --dc-text-muted: #666666;\n    --dc-border: #EFEBE4;\n    --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --dc-radius: 12px;\n  }\n\n  .dc-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--dc-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--dc-text-main);\n    line-height: 1.6;\n  }\n\n  .dc-hero {\n    background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--dc-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--dc-border);\n  }\n\n  .dc-badges-top { margin-bottom: 1rem; }\n\n  .dc-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--dc-white);\n    border: 1px solid var(--dc-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--dc-text-main);\n    margin: 0 4px;\n    box-shadow: var(--dc-shadow-soft);\n  }\n\n  .dc-hero-title {\n    display: block;\n    color: var(--dc-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .dc-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--dc-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .dc-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .dc-intro-text {\n    font-size: 13.5px;\n    color: var(--dc-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .dc-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .dc-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .dc-card {\n    background: var(--dc-white);\n    border-radius: var(--dc-radius);\n    padding: 2rem;\n    box-shadow: var(--dc-shadow-soft);\n    border: 1px solid var(--dc-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .dc-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--dc-shadow-hover);\n  }\n\n  .dc-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--dc-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .dc-card-desc {\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .dc-section-howto {\n    max-width: 700px;\n    margin: 0 auto 3.5rem auto;\n  }\n\n  .dc-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .dc-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1rem;\n    background: var(--dc-white);\n    border-radius: var(--dc-radius);\n    padding: 1.5rem;\n    border: 1px solid var(--dc-border);\n    box-shadow: var(--dc-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .dc-step:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--dc-shadow-hover);\n  }\n\n  .dc-step-number {\n    min-width: 40px;\n    width: 40px;\n    height: 40px;\n    background: var(--dc-accent-peps);\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 700;\n    font-size: 1.1em;\n    color: var(--dc-white);\n    flex-shrink: 0;\n  }\n\n  .dc-step-content strong {\n    display: block;\n    font-size: 15px;\n    color: var(--dc-primary-dark);\n    margin-bottom: 4px;\n  }\n\n  .dc-step-content p {\n    font-size: 13.5px;\n    color: var(--dc-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .dc-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--dc-border);\n  }\n\n  .dc-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--dc-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .dc-grid { grid-template-columns: 1fr; }\n    .dc-mpv-container { padding: 1.5rem 1rem; }\n    .dc-step {\n      flex-direction: column;\n      align-items: center;\n      text-align: center;\n    }\n    .dc-step-number {\n      margin: 0 auto 8px auto;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n    .dc-step { animation: dcFadeInUp 0.5s ease backwards; }\n    .dc-card:nth-child(2), .dc-step:nth-child(2) { animation-delay: 0.1s; }\n    .dc-card:nth-child(3), .dc-step:nth-child(3) { animation-delay: 0.2s; }\n    .dc-card:nth-child(4) { animation-delay: 0.3s; }\n  }\n\n  @keyframes dcFadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":64922759528797,"sku":"LIV-MES-VACS-01","price":6.9,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/livre-milan-mesvacances-illustrations-enfant-02.webp?v=1780928129"},{"product_id":"affiche-ours-super-heros","title":"Affiche – Le super-héros","description":"\u003c!-- ANALYSE MPV\nType de produit : AFFICHE (classique)\nPalette détectée : Bleu ciel doux (#9AB4CC), vert sapin (#2A6B5A), rouge brique\/corail (#C04B3A), violet casquette (#8B72B0), crème rayures (#F0ECDA)\nAmbiance : Enfantine, joyeuse, rétro-moderne, héroïque et tendre, bordure rayée dynamique\nPrefix : af\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eAffiche – Le super-héros\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eUn petit ours intrépide, cape au vent, prêt à conquérir les rêves les plus fous de votre enfant.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eCasquette vissée sur la tête, cape rayée flottant dans son sillage, ce petit ours bondit vers le ciel avec toute la bravoure du monde. Il a enfilé son short rouge, son t-shirt préféré et il est prêt pour sa mission du jour : veiller sur la chambre de votre enfant et nourrir son imaginaire d'aventures extraordinaires. Encadrée d'une bordure rayée aux accents rétro, cette affiche mêle des couleurs vives et chaleureuses — bleu ciel apaisant, vert profond, rouge éclatant — pour apporter du caractère et de la bonne humeur à n'importe quel mur. Une illustration pleine de personnalité qui accompagnera les histoires du soir et les grands jeux du matin.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003e✨ Des couleurs qui racontent une histoire\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLa palette mêle un bleu ciel rassurant, un rouge plein d'énergie et un vert profond pour un rendu à la fois doux et vibrant. Des teintes pensées pour s'intégrer dans une chambre d'enfant tout en apportant une vraie touche de caractère au mur.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003e✨ Une bordure rétro pleine de pep's\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLe cadre rayé qui entoure l'illustration donne à cette affiche un esprit vintage et joyeux, comme une page arrachée à un livre d'aventures. Un détail graphique qui fait toute la différence une fois l'affiche encadrée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #9AB4CC;\n  --af-primary-dark: #2A6B5A;\n  --af-accent-peps: #C04B3A;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title { font-size: 16px; font-weight: 700; color: var(--af-primary-dark); margin-top: 0; margin-bottom: 0.75rem; }\n\n.af-card-desc { font-size: 14px; color: var(--af-text-muted); margin: 0; line-height: 1.5; }\n\n.af-section-final { text-align: center; padding: 1.5rem 0 0 0; border-top: 1px solid var(--af-border); }\n\n.af-final-text { font-style: italic; font-size: 14px; color: var(--af-text-muted); max-width: 550px; margin: 0 auto; }\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: afFadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes afFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65305473745245,"sku":"AFF-SUPE-HERO-02","price":26.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-SUPER-HEROS.webp?v=1784550086"},{"product_id":"affiche-quartier-libre","title":"Affiche – Quartier libre","description":"\u003c!-- ANALYSE MPV\n- Produit : Affiche classique (non personnalisée)\n- Catégorie : AFFICHE\n- Palette extraite des visuels : bordeaux profond (#5C1A2A), rose poudré corail (#E8A0A0), vert émeraude\/sauge (#2A8B7A), ocre doré (#C5A643), crème vanille (#F0ECDA), bleu ciel doux (#B5D4E0)\n- Ambiance : Joyeuse, graphique, modulaire, inspirée des papiers découpés, chaleureuse et moderne\n- Préfixe : af\n--\u003e\n\n\u003cdiv class=\"af-mpv-container\"\u003e\n\n  \u003cdiv class=\"af-hero\"\u003e\n    \u003cdiv class=\"af-hero-content\"\u003e\n      \u003cdiv class=\"af-badges-top\"\u003e\n        \u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e\n        \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"af-hero-title\"\u003eAffiche – Quartier libre\u003c\/span\u003e\n      \u003cp class=\"af-subtitle\"\u003eQuatre petits mondes poétiques réunis sur un même poster, comme une fenêtre ouverte sur la joie.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"af-intro-text\"\u003eDes cœurs bicolores qui battent en rythme, une fleur sauvage aux pétales généreux, une étoile filante qui veille et un oiseau prêt à s'envoler : voilà le petit univers de Quartier libre. Quatre cases, quatre motifs graphiques inspirés des papiers découpés, assemblés dans une palette chaleureuse mêlant bordeaux profond, rose tendre, vert émeraude et touches dorées. Cette affiche apporte une énergie douce et joyeuse à n'importe quel mur — seule au-dessus d'un bureau, en duo dans un couloir ou en trio dans une chambre d'enfant. Un condensé de bonne humeur à encadrer sans hésiter.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-grid\"\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e✨ Des couleurs qui réchauffent\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eLa palette bordeaux, rose poudré, vert profond et ocre doré crée un équilibre chaleureux et lumineux. Les teintes se répondent d'une case à l'autre pour un rendu harmonieux et vivant, aussi bien dans un intérieur clair que dans une ambiance plus feutrée.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e🕊️ Un style qui se prête au jeu\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eSeule, elle attire le regard et donne le ton. En série avec d'autres affiches de la collection, elle compose un mur galerie plein de personnalité. Son format standard se glisse facilement dans un cadre du commerce pour une mise en beauté en quelques minutes.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003csection class=\"af-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #E8A0A0;\n  --af-primary-dark: #5C1A2A;\n  --af-accent-peps: #C5A643;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: afFadeInUp 0.5s ease backwards; }\n}\n\n@keyframes afFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65305482821981,"sku":"AFF-QUAR-LIBR-01","price":26.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-QUARTIER-LIBRE.webp?v=1784549487"},{"product_id":"affiche-prenom-chien-chill","title":"Affiche Prénom - Chien Chill","description":"\u003c!-- ANALYSE : Type = AFFICHE PERSONNALISÉE | Palette = bleu ciel doux #B8D4DA, lavande\/mauve nuages #8B8FC7, vert casquette #2D7A6E, terracotta\/rouge prénom #C0392B, brun chien #8B5E3C | Prefix = ap | Ambiance = enfantine, chill, graphique, joyeuse --\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Chien Chill\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eUn petit chien à casquette, un prénom affiché avec style et des nuages qui filent doucement. L'affiche qui donne instantanément le sourire.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eFond bleu ciel, nuages mauves, oreilles tombantes et casquette vissée sur la tête : le Chien Chill a un style bien à lui. Cette affiche prénom personnalisée intègre le prénom de votre enfant directement dans l'illustration, comme si ce petit chien décontracté portait son identité avec fierté. Le résultat ? Une décoration murale à la fois graphique, douce et pleine de caractère, qui s'installe aussi bien dans une chambre de bébé que dans celle d'un enfant plus grand. Pensée pour durer, imprimée en France sur papier de qualité, elle accompagnera les premières années — et bien au-delà.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003eUn design graphique et intemporel\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe bleu ciel, les nuages mauves et le brun chaud du chien forment une palette lumineuse qui s'accorde naturellement avec le bois clair, le lin et le blanc. Un style graphique qui traverse les années sans jamais vieillir.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003eSon prénom au cœur du design\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLe prénom de votre enfant est inscrit directement dans l'illustration, en typographie bold et chaleureuse. Pas ajouté à la va-vite : pensé dès le départ comme partie intégrante du dessin. Une affiche vraiment unique.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eSaisissez le prénom de votre enfant dans le champ dédié. Prenez le temps de vérifier l'orthographe — chaque lettre compte pour que le résultat soit parfait.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre faire-part avant que nous les envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée en France avec soin, puis conditionnée dans un emballage rigide protecteur. Elle arrive chez vous — ou chez son destinataire — prête à être encadrée et admirée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #8B8FC7;\n    --ap-primary-dark: #2D5A6B;\n    --ap-accent-peps: #C0392B;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #F6F1E7 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top {\n    margin-bottom: 1rem;\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: center;\n    gap: 8px;\n  }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-howto {\n    max-width: 750px;\n    margin: 0 auto 3.5rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem 1.75rem;\n    border: 1px solid var(--ap-border);\n    box-shadow: var(--ap-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-step:hover {\n    transform: translateY(-3px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-step-number {\n    min-width: 40px;\n    width: 40px;\n    height: 40px;\n    background: var(--ap-accent-peps);\n    color: var(--ap-white);\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 700;\n    font-size: 16px;\n    flex-shrink: 0;\n  }\n\n  .ap-step-content {\n    flex: 1;\n  }\n\n  .ap-step-title {\n    font-size: 15px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin: 0 0 0.35rem 0;\n  }\n\n  .ap-step-desc {\n    font-size: 13.5px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.55;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid {\n      grid-template-columns: 1fr;\n    }\n    .ap-mpv-container {\n      padding: 1.5rem 1rem;\n    }\n    .ap-step {\n      flex-direction: column;\n      align-items: center;\n      text-align: center;\n    }\n    .ap-step-number {\n      margin: 0 auto 8px auto;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card {\n      animation: ap-fadeInUp 0.5s ease backwards;\n    }\n    .ap-card:nth-child(2) {\n      animation-delay: 0.1s;\n    }\n    .ap-step {\n      animation: ap-fadeInUp 0.5s ease backwards;\n    }\n    .ap-step:nth-child(2) {\n      animation-delay: 0.1s;\n    }\n    .ap-step:nth-child(3) {\n      animation-delay: 0.2s;\n    }\n  }\n\n  @keyframes ap-fadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65396880867677,"sku":"AFF-PRE-CHIE-03","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-CHIEN-CHILL.webp?v=1787228847"},{"product_id":"affiche-prenom-rayures","title":"Affiche Prénom - Bisous","description":"\u003c!-- ANALYSE MPV\n- Produit : Affiche Prénom - Bisous (personnalisée)\n- Catégorie : AFFICHE PERSONNALISÉE\n- Palette extraite de l'image : bleu ciel doux (#A8C8D8), bleu canard\/teal (#2A7A6E), bleu nuit profond (#1E3A6D), rouge vermillon vif (#D94030), crème jauni (#F0E8B8)\n- Ambiance : Rétro-graphique, rayures vintage, joyeuse, enfantine mais affirmée\n- Préfixe CSS : ap\n--\u003e\n\u003cdiv class=\"ap-mpv-container\"\u003e\n\u003cdiv class=\"ap-hero\"\u003e\n\u003cdiv class=\"ap-hero-content\"\u003e\n\u003cdiv class=\"ap-badges-top\"\u003e\n\u003cspan class=\"ap-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"ap-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"ap-hero-title\"\u003eAffiche prénom — Bisous\u003c\/span\u003e\n\u003cp class=\"ap-subtitle\"\u003eDes rayures graphiques, un prénom mis à l'honneur et une ambiance rétro-joyeuse pour illuminer sa chambre dès le premier jour.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"ap-intro-text\"\u003eL'affiche prénom Bisous joue la carte du graphisme assumé : un fond rayé bleu canard aux reflets apaisants, un cartouche crème aux bords festonnés et le prénom de votre enfant affiché en rouge vif avec une typographie pleine de caractère. Inspirée des affiches vintage des années 60-70, elle crée une décoration murale à la fois intemporelle et franchement singulière. Personnalisée avec le prénom choisi, elle devient bien plus qu'un simple poster — un vrai objet décoratif chargé d'identité, pensé pour durer et pour grandir avec lui.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-grid\"\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003eUn design graphique et affirmé\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eLes rayures bleues structurées, le rouge vermillon et le fond crème forment une palette audacieuse mais harmonieuse. Ce n'est pas une déco fade — c'est une vraie affiche qui donne du caractère à la pièce et qui se distingue au premier regard.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-card\"\u003e\n\u003ch3 class=\"ap-card-title\"\u003eLe prénom, star du mur\u003c\/h3\u003e\n\u003cp class=\"ap-card-desc\"\u003eInscrit dans un cartouche festonné façon étiquette ancienne, le prénom de votre enfant devient le vrai sujet de l'affiche. Chaque détail typographique est pensé pour le mettre en valeur avec élégance et personnalité.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-section-howto\"\u003e\n\u003ch2\u003eComment ça marche ?\u003c\/h2\u003e\n\u003cdiv class=\"ap-steps\"\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRenseignez vos options personnalisées\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eSaisissez le prénom de votre enfant dans le champ prévu et vérifiez l'orthographe avec attention — c'est ce qui apparaîtra exactement sur l'affiche finale.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eRelecture avant validation\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003ePensez à bien vérifier qu'aucune erreur ne s'est glissée sur votre faire-part avant que nous les envoyons en impression.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ap-step\"\u003e\n\u003cdiv class=\"ap-step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"ap-step-content\"\u003e\n\u003ch3 class=\"ap-step-title\"\u003eImpression et livraison soignée\u003c\/h3\u003e\n\u003cp class=\"ap-step-desc\"\u003eVotre affiche est imprimée sur papier premium puis expédiée dans un emballage rigide pour arriver en parfait état chez vous. Plus qu'à trouver le cadre idéal !\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"ap-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"ap-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  :root {\n    --ap-bg-cream: #FDFBF7;\n    --ap-white: #ffffff;\n    --ap-primary: #3A7A72;\n    --ap-primary-dark: #1E3A6D;\n    --ap-accent-peps: #D94030;\n    --ap-text-main: #2A2A2A;\n    --ap-text-muted: #666666;\n    --ap-border: #EFEBE4;\n    --ap-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n    --ap-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n    --ap-radius: 12px;\n  }\n\n  .ap-mpv-container {\n    max-width: 1000px;\n    margin: 0 auto;\n    padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n    background: var(--ap-bg-cream);\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n    color: var(--ap-text-main);\n    line-height: 1.6;\n  }\n\n  .ap-hero {\n    background: linear-gradient(135deg, var(--ap-bg-cream) 0%, #EAF0F4 100%);\n    border-radius: var(--ap-radius);\n    padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n    margin-bottom: clamp(2.5rem, 5vw, 4rem);\n    text-align: center;\n    border: 1px solid var(--ap-border);\n  }\n\n  .ap-badges-top { margin-bottom: 1rem; }\n\n  .ap-badge {\n    display: inline-flex;\n    padding: 6px 14px;\n    background: var(--ap-white);\n    border: 1px solid var(--ap-border);\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ap-text-main);\n    margin: 0 4px;\n    box-shadow: var(--ap-shadow-soft);\n  }\n\n  .ap-hero-title {\n    display: block;\n    color: var(--ap-primary-dark);\n    font-size: clamp(26px, 5vw, 40px);\n    font-weight: 700;\n    margin: 1rem 0;\n    letter-spacing: -0.02em;\n    line-height: 1.2;\n  }\n\n  .ap-subtitle {\n    font-size: clamp(15px, 2vw, 18px);\n    color: var(--ap-text-muted);\n    max-width: 600px;\n    margin: 0 auto;\n  }\n\n  .ap-section-intro {\n    text-align: center;\n    max-width: 850px;\n    margin: 0 auto 3rem auto;\n  }\n\n  .ap-intro-text {\n    font-size: 13.5px;\n    color: var(--ap-text-main);\n    letter-spacing: 0.01em;\n    line-height: 1.5;\n  }\n\n  .ap-mpv-container h2 {\n    font-size: clamp(20px, 3.5vw, 26px);\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-bottom: 1.5rem;\n    text-align: center;\n    letter-spacing: -0.01em;\n  }\n\n  .ap-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n    gap: 1.5rem;\n    margin-bottom: 3.5rem;\n  }\n\n  .ap-card {\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 2rem;\n    box-shadow: var(--ap-shadow-soft);\n    border: 1px solid var(--ap-border);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-card:hover {\n    transform: translateY(-4px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-card-title {\n    font-size: 16px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin-top: 0;\n    margin-bottom: 0.75rem;\n  }\n\n  .ap-card-desc {\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-howto {\n    max-width: 750px;\n    margin: 0 auto 3.5rem auto;\n  }\n\n  .ap-steps {\n    display: flex;\n    flex-direction: column;\n    gap: 1.25rem;\n  }\n\n  .ap-step {\n    display: flex;\n    align-items: flex-start;\n    gap: 1.25rem;\n    background: var(--ap-white);\n    border-radius: var(--ap-radius);\n    padding: 1.5rem 1.75rem;\n    border: 1px solid var(--ap-border);\n    box-shadow: var(--ap-shadow-soft);\n    transition: transform 0.3s ease, box-shadow 0.3s ease;\n  }\n\n  .ap-step:hover {\n    transform: translateY(-3px);\n    box-shadow: var(--ap-shadow-hover);\n  }\n\n  .ap-step-number {\n    min-width: 38px;\n    width: 38px;\n    height: 38px;\n    background: var(--ap-accent-peps);\n    color: var(--ap-white);\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 700;\n    font-size: 15px;\n    flex-shrink: 0;\n  }\n\n  .ap-step-content { flex: 1; }\n\n  .ap-step-title {\n    font-size: 15px;\n    font-weight: 700;\n    color: var(--ap-primary-dark);\n    margin: 0 0 0.35rem 0;\n  }\n\n  .ap-step-desc {\n    font-size: 13.5px;\n    color: var(--ap-text-muted);\n    margin: 0;\n    line-height: 1.5;\n  }\n\n  .ap-section-final {\n    text-align: center;\n    padding: 1.5rem 0 0 0;\n    border-top: 1px solid var(--ap-border);\n  }\n\n  .ap-final-text {\n    font-style: italic;\n    font-size: 14px;\n    color: var(--ap-text-muted);\n    max-width: 550px;\n    margin: 0 auto;\n  }\n\n  @media (max-width: 767px) {\n    .ap-grid { grid-template-columns: 1fr; }\n    .ap-mpv-container { padding: 1.5rem 1rem; }\n    .ap-step {\n      flex-direction: column;\n      align-items: center;\n      text-align: center;\n    }\n    .ap-step-number {\n      margin: 0 auto 8px auto;\n    }\n  }\n\n  @media (prefers-reduced-motion: no-preference) {\n    .ap-card { animation: ap-fadeInUp 0.5s ease backwards; }\n    .ap-card:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step { animation: ap-fadeInUp 0.5s ease backwards; }\n    .ap-step:nth-child(2) { animation-delay: 0.1s; }\n    .ap-step:nth-child(3) { animation-delay: 0.2s; }\n  }\n\n  @keyframes ap-fadeInUp {\n    from { opacity: 0; transform: translateY(20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65396918354269,"sku":"AFF-PRE-BISO-02","price":35.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-PRENOM-BISOUS-RAYURES.webp?v=1787228815"},{"product_id":"affiche-blue-birds","title":"Affiche – Blue Birds","description":"\u003c!-- ANALYSE MPV\n  - Produit : Affiche classique (non personnalisée)\n  - Catégorie : AFFICHE\n  - Palette extraite des visuels : fond bordeaux\/lie-de-vin profond (#4A1A1A), oiseaux bleu ciel doux (#9BBDD4), cœurs corail\/terracotta (#D4603A)\n  - Ambiance : Poétique, douce, graphique, jeu de symétrie, amour et légèreté\n  - Préfixe CSS : af\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eAffiche – Blue Birds\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eDeux oiseaux amoureux qui dansent dans le ciel, un petit cœur en guise de promesse.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eIls volent l'un vers l'autre, tête-bêche, comme un reflet dans l'eau ou un battement de cœur en miroir. Sur un fond lie-de-vin profond et chaleureux, ces deux oiseaux bleu ciel portent chacun un petit cœur corail — l'un sur l'aile, l'autre au creux du bec. C'est une affiche qui raconte sans un mot : la complicité, la tendresse, le bonheur simple d'être deux. Graphique et épurée, elle s'intègre aussi bien dans un salon que dans une chambre d'enfant, apportant une touche de douceur moderne et un brin de poésie à chaque regard posé sur elle.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eDes couleurs profondes et lumineuses\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLe contraste entre le bordeaux intense du fond et le bleu ciel délicat des oiseaux donne à cette affiche une présence singulière. Les touches de corail viennent ponctuer la composition avec justesse, pour un rendu à la fois doux et affirmé qui capte la lumière de la pièce.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eFacile à encadrer, facile à aimer\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eImprimée sur un papier de qualité au rendu mat et soyeux, cette affiche se glisse dans un cadre standard en un instant. Seule au-dessus d'un meuble ou intégrée dans un mur de cadres, elle trouve toujours sa place avec une élégance naturelle et intemporelle.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #9BBDD4;\n  --af-primary-dark: #4A1A1A;\n  --af-accent-peps: #D4603A;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: afFadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes afFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65473668546909,"sku":"AFF-BLUE-BIRD-01","price":26.0,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-TWINS-BIRDS.jpg?v=1785851495"},{"product_id":"grande-affiche-les-animaux-pilotes","title":"Grande affiche – Les animaux pilotes","description":"\u003c!-- ANALYSE MPV\n  Produit : Grande affiche – Les animaux pilotes\n  Catégorie : AFFICHE (classique, non personnalisée)\n  Palette extraite des visuels :\n    - Bleu ciel doux (#8BAFC4)\n    - Bordeaux \/ lie-de-vin (#8B2E3B)\n    - Vert kaki \/ olive (#8B8E3A)\n    - Crème chaud (#F2EDDA)\n    - Touches de rose poudré et d'ocre\n  Ambiance : Enfantine, rétro-aventurière, joyeuse, chaleureuse, pleine de pep's\n  Prefix : af\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eGrande affiche – Les animaux pilotes\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eTrois pilotes intrépides, trois avions pleins de caractère et une chambre d'enfant qui prend son envol.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eDeux chiens concentrés aux commandes de leur cockpit et un ours coiffé de son bonnet rouge qui pilote avec une nonchalance absolue : voilà l'équipage improbable qui s'élance dans le ciel crème de cette grande affiche. Chaque avion a sa propre personnalité — étoile discrète, petit cœur, rayures audacieuses — et chaque pilote arbore sa tenue de vol avec un sérieux désarmant. Les couleurs bordeaux, bleu poudré et vert kaki se répondent dans une harmonie vintage pleine de pep's, encadrées par une bordure rayée qui donne à l'ensemble un air de carte postale d'un autre temps. Le résultat, c'est une illustration qu'on regarde longtemps, où l'on découvre toujours un nouveau petit détail caché, et qui transforme un simple mur en véritable terrain d'aventure.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eDes couleurs vibrantes et fidèles\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLe bordeaux profond, le bleu ciel doux et le vert kaki de l'illustration sont restitués avec une richesse et un contraste remarquables grâce à une impression soignée sur papier épais. Les teintes restent aussi belles en vrai qu'à l'écran, sans gondolage ni transparence.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eUn format généreux, facile à encadrer\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eAu format 50 × 70 cm, cette affiche a une vraie présence au mur. Elle s'habille à merveille dans un cadre bois naturel, se pose sur une étagère ou s'accroche seule au-dessus d'un lit pour créer un point focal joyeux et intemporel dans la chambre.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #8BAFC4;\n  --af-primary-dark: #5B3A40;\n  --af-accent-peps: #C4573A;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: af-fadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes af-fadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65720287560029,"sku":"GAF-PILOTES","price":32.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/GRANDE-AFFICHE--ANIMAUX-PILOTES-CADRE.webp?v=1788428230"},{"product_id":"grande-affiche-grand-oiseau-bleu","title":"Grande affiche – Grand oiseau bleu","description":"\u003c!-- ANALYSE :\n  - Type : AFFICHE (classique, non personnalisée)\n  - Palette : bleu-gris doux (#A8B8C8), bordeaux profond (#5C1A1A), kaki\/doré (#B5A44A), crème (#F0EDDA)\n  - Ambiance : Graphique, poétique, totem, vintage-moderne, affirmée\n  - Prefix : af\n--\u003e\n\u003cdiv class=\"af-mpv-container\"\u003e\n\u003cdiv class=\"af-hero\"\u003e\n\u003cdiv class=\"af-hero-content\"\u003e\n\u003cdiv class=\"af-badges-top\"\u003e\n\u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-hero-title\"\u003eGrande affiche – Grand oiseau bleu\u003c\/span\u003e\n\u003cp class=\"af-subtitle\"\u003eUn oiseau totem, une étoile dorée et une bordure damier qui claque : cette affiche donne du caractère à chaque mur qu'elle habite.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"af-intro-text\"\u003eIl y a des affiches qu'on accroche et qu'on oublie. Et puis il y a celle-ci — celle qu'on remarque dès qu'on entre dans la pièce. Un grand oiseau bleu-gris, trapu et graphique, parsemé de petites taches bordeaux, couronné d'une étoile dorée discrète. Autour de lui, une bordure damier bordeaux et kaki qui oscille entre modernité et inspirations vintage. On pense aux tapisseries anciennes, aux figures totémiques de contes oubliés, et pourtant tout est résolument contemporain. C'est l'équilibre entre la douceur des tons — bleu pâle, crème, kaki — et la tension graphique du damier serré et des taches sombres. Une affiche qui décore sans décorer, qui dit quelque chose sans trop en dire, et qui donne à un intérieur sa vraie personnalité.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eDes couleurs qui tiennent leurs promesses\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eLe bleu-gris délicat de l'oiseau, le bordeaux profond du damier, le kaki lumineux et le crème doux du fond : chaque nuance est restituée avec fidélité grâce à une impression soignée sur papier épais. Un rendu mat et précis qui met en valeur toute la richesse de la palette.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch3 class=\"af-card-title\"\u003eUn format pensé pour s'imposer\u003c\/h3\u003e\n\u003cp class=\"af-card-desc\"\u003eAu format 50×70 cm, cette affiche occupe vraiment un mur — seule, comme une œuvre à part entière, ou au cœur d'une composition murale. Facile à encadrer dans un cadre standard, elle s'accorde à merveille avec le bois naturel pour un rendu chaleureux.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #A8B8C8;\n  --af-primary-dark: #4A3A2A;\n  --af-accent-peps: #B5A44A;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top { margin-bottom: 1rem; }\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid { grid-template-columns: 1fr; }\n  .af-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card { animation: afFadeInUp 0.5s ease backwards; }\n  .af-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes afFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65720303321437,"sku":"GAF-OIS","price":32.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/GRANDE-AFFICHE-GRAND-OISEAU-BLEU.webp?v=1787912570"},{"product_id":"calendrier-annuel-2027","title":"Calendrier annuel - 2027","description":"\u003c!-- ANALYSE MPV\n- Produit : Calendrier annuel 2027\n- Catégorie : OBJET DÉCO \/ DIVERS\n- Palette extraite des visuels : bordeaux profond (#6B1D2A), rose saumon (#F2A7A0), jaune pâle (#F5EBB2), bleu ciel doux (#B5D4E8), vert émeraude (#1A8A6D), ocre doré (#C49A2A)\n- Teintes retenues : bordeaux chaleureux (primary), ocre doré (accent pep's), bleu ciel (touches de douceur)\n- Ambiance : Joyeuse, folk-moderne, colorée, chaleureuse, arts populaires revisités\n- Prefix : dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003eCalendrier annuel — 2027\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eDouze mois illustrés pour embellir vos murs et organiser votre année avec le sourire.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eCe calendrier mural 2027 est né de l'envie de transformer un objet du quotidien en véritable compagnon de mur. Chaque mois déploie son propre univers : fleurs folkloriques, oiseaux en vol, soleils radieux, pommes de rentrée… Des motifs inspirés des arts populaires, revisités avec une palette chaude et lumineuse — bordeaux, jaune pâle, bleu poudré, rose saumon — pour que chaque page tournée soit un petit bonheur visuel. Imprimé en France sur papier certifié FSC, relié par une spirale métallique pratique, il s'accroche en un clin d'œil et accompagne toute la famille, de janvier à décembre, avec autant d'élégance que de fonctionnalité.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e✨ Un mois, un univers\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eChaque page dévoile une illustration exclusive aux motifs chaleureux — tulipes, hirondelles, cerises, colombes — pour renouveler le plaisir de regarder votre mur au fil des saisons.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e🗓️ Pratique avant tout\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eReliure spirale pour un accrochage immédiat, grandes lignes journalières pour noter rendez-vous, anniversaires et sorties en famille : il est aussi beau qu'utile au quotidien.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #7B2D3B;\n  --dc-primary-dark: #5C1A28;\n  --dc-accent-peps: #C49A2A;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes dcFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65720305189213,"sku":"CAL-ANNU-2027-01","price":22.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CALENDRIER-FACE-OK.webp?v=1791466594"},{"product_id":"puzzle-1000-pieces-pique-nique-au-soleil","title":"Puzzle 1000 Pièces - Pique-nique au soleil","description":"\u003c!-- ANALYSE MPV\n  1. Type de produit : OBJET DÉCO\/DIVERS — Puzzle 1000 pièces illustré\n  2. Palette \"Pep's \u0026 Douceur\" : Rose poudré\/bonbon (nappe), vert sauge profond (herbe\/fond), terracotta doux (boîte\/accents chauds)\n  3. Ambiance : Estivale, joyeuse, gourmande, ludique, illustration colorée avec un teckel stylé — univers chaleureux et plein d'humour\n  4. Préfixe : dc (déco\/divers)\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003ePuzzle 1000 pièces — Pique-nique au soleil\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eUn teckel en foulard rose, une nappe qui déborde de gourmandises et 1000 pièces de pur bonheur estival à assembler.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eIl y a des après-midi d'été où tout semble parfait : la lumière dorée, la nappe rose étendue dans l'herbe, les fraises qui brillent dans l'assiette et un teckel à lunettes de soleil qui sirote son café comme s'il avait tout son temps. C'est exactement cette scène pleine de vie et de détails savoureux que l'on vous invite à reconstituer, pièce après pièce. Chaque zone de l'illustration cache un petit bonheur — un chat roux assoupi, un bouquet de fleurs jaunes, une confiture de fraises entamée — et assembler ce puzzle, c'est un peu comme dérouler un dimanche parfait qui ne finit jamais. Fabriqué en France avec des pièces robustes et une découpe précise, il se transforme une fois terminé en un véritable tableau à encadrer, joyeux et plein de personnalité.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn vrai moment de plaisir\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eGrâce aux zones bien contrastées — le rose bonbon de la nappe, le vert profond du jardin, les touches colorées des assiettes et des verres — chaque étape de l'assemblage apporte sa dose de satisfaction. Les pièces s'emboîtent avec précision, sans frustration, pour un plaisir du premier bord posé jusqu'à la toute dernière pièce.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUne œuvre à encadrer\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eCe puzzle n'est pas destiné à retourner dans sa boîte. Une fois assemblé, son illustration exclusive et ses couleurs éclatantes en font un véritable tableau, prêt à rejoindre un cadre et à illuminer un mur. Un objet déco à part entière, qui raconte une histoire joyeuse à tous ceux qui le regardent.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eLe cadeau qui fait mouche\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eDans sa boîte soignée et colorée, ce puzzle est une idée cadeau parfaite pour les amoureux d'illustration, les fans de teckels stylés ou simplement ceux qui aiment prendre le temps de créer quelque chose de beau. De 9 à 99 ans, il met tout le monde d'accord.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eDes détails à foison\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eUn collier de perles autour du cou d'un teckel, une bouteille de vin entamée, un piléa dans son pot rose, des croissants dorés et des tomates bien rouges… L'illustration fourmille de petits trésors à découvrir au fil de l'assemblage. Chercher le prochain détail caché devient presque aussi addictif que de poser la pièce suivante.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #D48B9A;\n  --dc-primary-dark: #4A7C6F;\n  --dc-accent-peps: #E2956A;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 1.5rem;\n}\n\n.dc-grid:last-of-type {\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card { animation: dcFadeInUp 0.5s ease backwards; }\n  .dc-card:nth-child(2) { animation-delay: 0.1s; }\n}\n\n@keyframes dcFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65786895663453,"sku":"PUZ-PIQ-01","price":30.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/PUZZLE-PIQUE-NIQUE-PHOTO4.webp?v=1791462603"},{"product_id":"puzzle-1000-pieces-marche-aux-fleurs","title":"Puzzle 1000 Pièces - Marché aux fleurs","description":"\u003c!-- ANALYSE MPV\n  Type: OBJET DÉCO\/DIVERS (Puzzle 1000 pièces)\n  Palette: Lavande douce (#9B8EC1), Terracotta chaud (#C4603A), Vert sauge (#7A8B6A)\n  Ambiance: Joyeuse, florale, poétique, familiale, ludique\n  Préfixe: dc\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003eFabriqué en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003ePuzzle 1000 pièces — Marché aux fleurs\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eUn marché coloré, un teckel espiègle et mille petits bonheurs à assembler pièce par pièce.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eUne marquise rayée rouge et blanc, des bouquets généreux qui débordent de caisses colorées, des dahlias qui côtoient des lavandes, des marguerites qui se mêlent aux hortensias… et au milieu de tout ça, un teckel coiffé d'un chapeau violet qui se balade tranquillement entre les étals. Ce puzzle de 1000 pièces capture toute la poésie d'un marché aux fleurs foisonnant. Chaque session d'assemblage devient une parenthèse douce : on cherche les tiges vertes, on reconstruit les bouquets un à un, et tout doucement, le marché prend vie sous nos doigts. Une fois terminé, impossible de le démonter — il fera une pièce déco magnifique, encadré dans un salon ou une cuisine ensoleillée.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003e1000 pièces de sérénité\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eUn niveau de difficulté idéal pour les puzzleurs de 9 à 99 ans. Ni trop simple, ni frustrant : parfait pour une longue après-midi, un week-end pluvieux ou plusieurs soirées à la suite. On prépare une tisane, on lance une playlist et on se laisse absorber.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUne illustration qui se vit deux fois\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eAvec ses dimensions de 69 × 47,8 cm une fois assemblé, ce puzzle se transforme en véritable affiche déco à encadrer. Les couleurs franches et le style graphique contemporain lui donnent une vraie personnalité — c'est le genre de puzzle qu'on hésite à démonter.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-tips\"\u003e\n\u003ch2\u003eNos petits conseils d'assemblage\u003c\/h2\u003e\n\u003cdiv class=\"dc-tips-grid\"\u003e\n\u003cdiv class=\"dc-tip-item\"\u003e\n\u003cdiv class=\"dc-tip-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-content\"\u003e\n\u003cstrong\u003eCommencez par les bords\u003c\/strong\u003e\n\u003cp\u003eRetrouvez toutes les pièces avec un bord droit pour délimiter le cadre de votre puzzle.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-item\"\u003e\n\u003cdiv class=\"dc-tip-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-content\"\u003e\n\u003cstrong\u003eTriez par zones de couleur\u003c\/strong\u003e\n\u003cp\u003eLa marquise rouge, les caisses bleues, les bouquets jaunes : chaque zone a ses propres teintes, idéales pour trier.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-item\"\u003e\n\u003cdiv class=\"dc-tip-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-content\"\u003e\n\u003cstrong\u003eGardez la boîte à portée\u003c\/strong\u003e\n\u003cp\u003eLe visuel sur la boîte est votre meilleur allié. N'hésitez pas à y revenir souvent pour repérer les détails.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-item\"\u003e\n\u003cdiv class=\"dc-tip-number\"\u003e4\u003c\/div\u003e\n\u003cdiv class=\"dc-tip-content\"\u003e\n\u003cstrong\u003eSavourez le moment\u003c\/strong\u003e\n\u003cp\u003eC'est bien plus qu'un passe-temps : c'est une vraie pause créative et sensorielle à s'offrir.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-gift\"\u003e\n\u003ch2\u003eÀ qui l'offrir ?\u003c\/h2\u003e\n\u003cdiv class=\"dc-gift-grid\"\u003e\n\u003cdiv class=\"dc-gift-item\"\u003e\n\u003cspan class=\"dc-gift-emoji\"\u003e💐\u003c\/span\u003e\n\u003cp\u003eÀ une amoureuse des fleurs qui adore les marchés et les couleurs printanières\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-gift-item\"\u003e\n\u003cspan class=\"dc-gift-emoji\"\u003e🐶\u003c\/span\u003e\n\u003cp\u003eÀ une fan de teckels qui reconnaîtra immédiatement le petit personnage chapeau vissé\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-gift-item\"\u003e\n\u003cspan class=\"dc-gift-emoji\"\u003e🎁\u003c\/span\u003e\n\u003cp\u003eÀ quelqu'un qui cherche un cadeau original, loin des puzzles classiques à motifs vus et revus\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-gift-item\"\u003e\n\u003cspan class=\"dc-gift-emoji\"\u003e✨\u003c\/span\u003e\n\u003cp\u003eÀ vous-même, pour offrir à votre esprit une vraie parenthèse de douceur et de créativité\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #9B8EC1;\n  --dc-primary-dark: #6B5B8A;\n  --dc-accent-peps: #C4603A;\n  --dc-accent-green: #7A8B6A;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F0EBF5 50%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top { margin-bottom: 1rem; }\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px 6px 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n\/* Section conseils *\/\n.dc-section-tips {\n  margin-bottom: 3.5rem;\n}\n\n.dc-tips-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n  gap: 1.25rem;\n}\n\n.dc-tip-item {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 1.5rem;\n  border: 1px solid var(--dc-border);\n  box-shadow: var(--dc-shadow-soft);\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-tip-item:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-tip-number {\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  background: linear-gradient(135deg, var(--dc-primary), var(--dc-primary-dark));\n  color: var(--dc-white);\n  font-weight: 700;\n  font-size: 15px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: 0.75rem;\n  flex-shrink: 0;\n}\n\n.dc-tip-content strong {\n  display: block;\n  font-size: 14px;\n  color: var(--dc-primary-dark);\n  margin-bottom: 0.4rem;\n}\n\n.dc-tip-content p {\n  font-size: 13px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.45;\n}\n\n\/* Section cadeau *\/\n.dc-section-gift {\n  margin-bottom: 3.5rem;\n}\n\n.dc-gift-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n  gap: 1.25rem;\n}\n\n.dc-gift-item {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 1.5rem 1.25rem;\n  border: 1px solid var(--dc-border);\n  box-shadow: var(--dc-shadow-soft);\n  text-align: center;\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-gift-item:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-gift-emoji {\n  font-size: 28px;\n  display: block;\n  margin-bottom: 0.6rem;\n}\n\n.dc-gift-item p {\n  font-size: 13.5px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.45;\n}\n\n\/* Section finale *\/\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid { grid-template-columns: 1fr; }\n  .dc-tips-grid { grid-template-columns: 1fr 1fr; }\n  .dc-gift-grid { grid-template-columns: 1fr 1fr; }\n  .dc-mpv-container { padding: 1.5rem 1rem; }\n}\n\n@media (max-width: 480px) {\n  .dc-tips-grid { grid-template-columns: 1fr; }\n  .dc-gift-grid { grid-template-columns: 1fr; }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card,\n  .dc-tip-item,\n  .dc-gift-item { animation: dcFadeInUp 0.5s ease backwards; }\n  .dc-tip-item:nth-child(2),\n  .dc-gift-item:nth-child(2) { animation-delay: 0.1s; }\n  .dc-tip-item:nth-child(3),\n  .dc-gift-item:nth-child(3) { animation-delay: 0.2s; }\n  .dc-tip-item:nth-child(4),\n  .dc-gift-item:nth-child(4) { animation-delay: 0.3s; }\n}\n\n@keyframes dcFadeInUp {\n  from { opacity: 0; transform: translateY(20px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65786897006941,"sku":"PUZ-MARCH-01","price":30.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/PUZZLE-MARCHE-FLEURS-PHOTO4.webp?v=1791462604"},{"product_id":"puzzle-1000-pieces-gouter-de-noel","title":"Puzzle 1000 Pièces - Goûter de Noël","description":"\u003c!-- ANALYSE MPV\n  Produit : Puzzle 1000 Pièces - Goûter de Noël\n  Catégorie : OBJET DÉCO \/ DIVERS (puzzle illustré)\n  Palette extraite : bordeaux profond, rose poudré, vert sapin, touches ocre\/doré des gâteaux\n  Couleurs choisies :\n    - Primary : #8B2D4E (bordeaux rosé, extrait de la nappe)\n    - Primary-dark : #5E1A33 (bordeaux profond pour les titres)\n    - Accent pep's : #C7694F (terracotta chaud, rappel des clémentines et bougies)\n  Ambiance : Chaleureuse, festive mais douce, gourmande, familiale, cocooning hivernal\n  Préfixe : dc (déco\/divers)\n--\u003e\n\u003cdiv class=\"dc-mpv-container\"\u003e\n\u003cdiv class=\"dc-hero\"\u003e\n\u003cdiv class=\"dc-hero-content\"\u003e\n\u003cdiv class=\"dc-badges-top\"\u003e\n\u003cspan class=\"dc-badge\"\u003ePensé en France\u003c\/span\u003e \u003cspan class=\"dc-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cspan class=\"dc-hero-title\"\u003ePuzzle 1000 pièces — Goûter de Noël\u003c\/span\u003e\n\u003cp class=\"dc-subtitle\"\u003eMille pièces de douceur, de gourmandise et de magie de décembre à assembler en famille.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-section-intro\"\u003e\n\u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n\u003cp class=\"dc-intro-text\"\u003eIl y a des puzzles qu'on fait une fois, et d'autres qu'on ressort chaque année avec le même plaisir. Le puzzle Goûter de Noël fait partie de la deuxième catégorie. Une table débordante de sablés, de clémentines et de bougies, une couronne de Noël suspendue au mur, un teckel paré de son plus beau nœud rouge… chaque pièce assemblée révèle un nouveau détail qui fait sourire. La palette bordeaux profond et rose poudré crée une ambiance à la fois festive et enveloppante, loin des illustrations trop classiques. C'est une scène de vie qu'on a envie d'encadrer une fois terminée — et c'est tout à fait possible.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-grid\"\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn moment à partager\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eParfait pour les longues soirées de décembre, ce puzzle rassemble petits et grands autour d'une même table. On trie les bordeaux, on cherche les bougies, on se dispute le teckel — et on crée un vrai souvenir ensemble.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"dc-card\"\u003e\n\u003ch3 class=\"dc-card-title\"\u003eUn cadeau qui se garde\u003c\/h3\u003e\n\u003cp class=\"dc-card-desc\"\u003eLivré dans une belle boîte illustrée prête à glisser sous le sapin, ce puzzle devient une décoration murale une fois assemblé. Le genre de cadeau dont on se souvient, pas parce qu'il est cher, mais parce qu'il crée un vrai moment.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"dc-section-final\" style=\"margin-bottom: 0px!important; padding-bottom: 0px!important;\"\u003e\n\u003cp class=\"dc-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n:root {\n  --dc-bg-cream: #FDFBF7;\n  --dc-white: #ffffff;\n  --dc-primary: #8B2D4E;\n  --dc-primary-dark: #5E1A33;\n  --dc-accent-peps: #C7694F;\n  --dc-text-main: #2A2A2A;\n  --dc-text-muted: #666666;\n  --dc-border: #EFEBE4;\n  --dc-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --dc-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --dc-radius: 12px;\n}\n\n.dc-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--dc-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--dc-text-main);\n  line-height: 1.6;\n}\n\n.dc-hero {\n  background: linear-gradient(135deg, var(--dc-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--dc-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--dc-border);\n}\n\n.dc-badges-top {\n  margin-bottom: 1rem;\n}\n\n.dc-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--dc-white);\n  border: 1px solid var(--dc-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--dc-text-main);\n  margin: 0 4px;\n  box-shadow: var(--dc-shadow-soft);\n}\n\n.dc-hero-title {\n  display: block;\n  color: var(--dc-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.dc-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--dc-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.dc-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.dc-intro-text {\n  font-size: 13.5px;\n  color: var(--dc-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.dc-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.dc-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.dc-card {\n  background: var(--dc-white);\n  border-radius: var(--dc-radius);\n  padding: 2rem;\n  box-shadow: var(--dc-shadow-soft);\n  border: 1px solid var(--dc-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.dc-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--dc-shadow-hover);\n}\n\n.dc-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--dc-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.dc-card-desc {\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.dc-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--dc-border);\n}\n\n.dc-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--dc-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .dc-grid {\n    grid-template-columns: 1fr;\n  }\n  .dc-mpv-container {\n    padding: 1.5rem 1rem;\n  }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .dc-card {\n    animation: dc-fadeInUp 0.5s ease backwards;\n  }\n  .dc-card:nth-child(2) {\n    animation-delay: 0.1s;\n  }\n}\n\n@keyframes dc-fadeInUp {\n  from {\n    opacity: 0;\n    transform: translateY(20px);\n  }\n  to {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65786916143453,"sku":"PUZ-GOUT-01","price":30.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/PUZZLE-NOEL-PHOTO3-HD.webp?v=1791461399"},{"product_id":"carte-chandelles","title":"Carte Chandelles","description":"\u003cp\u003eUne jolie carte pour dire la nouvelle année, à vous d'écrire un joli mot aux personnes que vous aimez ! Craquez pour nos illustrations colorées et pétillantes.\u003c\/p\u003e\n\u003cp\u003eTous nos produits sont imaginés et imprimés dans nos ateliers situés dans les Hauts-de-France.\u003c\/p\u003e\n\u003cp\u003eLes cartes aux messages fun et colorés? C'est notre spécialité chez Ma Petite vie qui conçoit toute une gamme pour célébrer les heureux événements de la vie et décorer les intérieurs avec des motifs cool et mignons.\u003c\/p\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65842522423645,"sku":"CAR-CHAND-01","price":4.5,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Carte-Christmas-07.webp?v=1788780802"},{"product_id":"carte-joyeux-noel-chien","title":"Carte Joyeux Noël chien","description":"\u003cp\u003eUne jolie carte pour dire la nouvelle année, à vous d'écrire un joli mot aux personnes que vous aimez ! Craquez pour nos illustrations colorées et pétillantes.\u003c\/p\u003e\n\u003cp\u003eTous nos produits sont imaginés et imprimés dans nos ateliers situés dans les Hauts-de-France.\u003c\/p\u003e\n\u003cp\u003eLes cartes aux messages fun et colorés? C'est notre spécialité chez Ma Petite vie qui conçoit toute une gamme pour célébrer les heureux événements de la vie et décorer les intérieurs avec des motifs cool et mignons.\u003c\/p\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65842542903645,"sku":"CAR-JOY-NO-01","price":4.5,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/Carte-Christmas-08.webp?v=1788780802"},{"product_id":"affiche-loiseau-etoile","title":"Affiche – L'oiseau étoile","description":"\u003c!-- ANALYSE MPV\n  Produit : Affiche – L'oiseau étoile\n  Catégorie : AFFICHE (classique)\n  Palette extraite de l'image :\n    - Bleu ciel doux (#B5CDD9) → oiseau\n    - Bordeaux profond (#5C1A2A) → damier\n    - Or\/ocre chaud (#B8A04C) → damier + étoile\n    - Jaune pâle (#F2EDCA) → fond central\n  Ambiance : Folk-poétique, graphique rétro, douce mais affirmée\n  Prefix : af\n--\u003e\n\n\u003cdiv class=\"af-mpv-container\"\u003e\n\n  \u003cdiv class=\"af-hero\"\u003e\n    \u003cdiv class=\"af-hero-content\"\u003e\n      \u003cdiv class=\"af-badges-top\"\u003e\n        \u003cspan class=\"af-badge\"\u003ePensé en France\u003c\/span\u003e\n        \u003cspan class=\"af-badge\"\u003eIllustration originale par Ma petite vie\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"af-hero-title\"\u003eL'oiseau étoile\u003c\/span\u003e\n      \u003cp class=\"af-subtitle\"\u003eUn oiseau bleu tacheté, une étoile dorée qui veille, un damier bordeaux et or qui encadre le rêve — une affiche qui a du caractère et beaucoup d'âme.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-section-intro\"\u003e\n    \u003ch2\u003eLa petite histoire\u003c\/h2\u003e\n    \u003cp class=\"af-intro-text\"\u003eIl y a des affiches qu'on accroche, et des affiches qu'on contemple. L'oiseau étoile fait partie de la deuxième catégorie. Avec sa silhouette tracée à main levée, ses taches irrégulières et ses plumes stylisées, cet oiseau bleu ciel respire l'authenticité des illustrations folk. Au-dessus de lui, une étoile dorée à six branches veille discrètement, comme un signe céleste posé là pour lui. Le fond jaune pâle, lumineux et doux, laisse respirer la composition, tandis que la bordure à damier bordeaux et or encadre l'ensemble avec une audace rétro qui transforme cette affiche en véritable objet graphique. On pense aux années 70, aux motifs qui racontent une histoire sans avoir besoin de mots — une pièce qui attire l'œil et invite à rêver, dans un salon contemporain comme dans un décor bohème ou éclectique.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"af-grid\"\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e✨ Un graphisme singulier et intemporel\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eLa tension entre la douceur naïve de l'oiseau bleu et l'audace du damier bordeaux-or crée un équilibre rare. Une esthétique brute et sincère, entre planche d'ornithologie revisitée et art folk, qui s'affirme sur vos murs sans jamais les surcharger.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"af-card\"\u003e\n      \u003ch3 class=\"af-card-title\"\u003e🎨 Des couleurs pensées pour durer\u003c\/h3\u003e\n      \u003cp class=\"af-card-desc\"\u003eImprimée en France dans les ateliers Ma Petite Vie à Roubaix, cette affiche offre des couleurs vives et fidèles sur un papier de qualité. Le bleu ciel, le bordeaux profond et l'or chaud conservent tout leur éclat au fil du temps, pour un rendu qui reste beau saison après saison.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003csection class=\"af-section-final\" style=\"margin-bottom:0px!important; padding-bottom:0px!important;\"\u003e\n    \u003cp class=\"af-final-text\"\u003eChaque création est imaginée pour apporter de la joie dans vos intérieurs en restant ludique et pleine de personnalité.\u003c\/p\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n:root {\n  --af-bg-cream: #FDFBF7;\n  --af-white: #ffffff;\n  --af-primary: #B5CDD9;\n  --af-primary-dark: #5C1A2A;\n  --af-accent-peps: #B8A04C;\n  --af-text-main: #2A2A2A;\n  --af-text-muted: #666666;\n  --af-border: #EFEBE4;\n  --af-shadow-soft: 0 4px 20px rgba(42, 42, 42, 0.04);\n  --af-shadow-hover: 0 10px 30px rgba(42, 42, 42, 0.08);\n  --af-radius: 12px;\n}\n\n.af-mpv-container {\n  max-width: 1000px;\n  margin: 0 auto;\n  padding: clamp(2rem, 4vw, 3.5rem) clamp(1rem, 2vw, 1.5rem);\n  background: var(--af-bg-cream);\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\n  color: var(--af-text-main);\n  line-height: 1.6;\n}\n\n.af-hero {\n  background: linear-gradient(135deg, var(--af-bg-cream) 0%, #F6F1E7 100%);\n  border-radius: var(--af-radius);\n  padding: clamp(2.5rem, 6vw, 4rem) 1.5rem;\n  margin-bottom: clamp(2.5rem, 5vw, 4rem);\n  text-align: center;\n  border: 1px solid var(--af-border);\n}\n\n.af-badges-top {\n  margin-bottom: 1rem;\n}\n\n.af-badge {\n  display: inline-flex;\n  padding: 6px 14px;\n  background: var(--af-white);\n  border: 1px solid var(--af-border);\n  border-radius: 999px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--af-text-main);\n  margin: 0 4px;\n  box-shadow: var(--af-shadow-soft);\n}\n\n.af-hero-title {\n  display: block;\n  color: var(--af-primary-dark);\n  font-size: clamp(26px, 5vw, 40px);\n  font-weight: 700;\n  margin: 1rem 0;\n  letter-spacing: -0.02em;\n  line-height: 1.2;\n}\n\n.af-subtitle {\n  font-size: clamp(15px, 2vw, 18px);\n  color: var(--af-text-muted);\n  max-width: 600px;\n  margin: 0 auto;\n}\n\n.af-section-intro {\n  text-align: center;\n  max-width: 850px;\n  margin: 0 auto 3rem auto;\n}\n\n.af-intro-text {\n  font-size: 13.5px;\n  color: var(--af-text-main);\n  letter-spacing: 0.01em;\n  line-height: 1.5;\n}\n\n.af-mpv-container h2 {\n  font-size: clamp(20px, 3.5vw, 26px);\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-bottom: 1.5rem;\n  text-align: center;\n  letter-spacing: -0.01em;\n}\n\n.af-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n  gap: 1.5rem;\n  margin-bottom: 3.5rem;\n}\n\n.af-card {\n  background: var(--af-white);\n  border-radius: var(--af-radius);\n  padding: 2rem;\n  box-shadow: var(--af-shadow-soft);\n  border: 1px solid var(--af-border);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.af-card:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--af-shadow-hover);\n}\n\n.af-card-title {\n  font-size: 16px;\n  font-weight: 700;\n  color: var(--af-primary-dark);\n  margin-top: 0;\n  margin-bottom: 0.75rem;\n}\n\n.af-card-desc {\n  font-size: 14px;\n  color: var(--af-text-muted);\n  margin: 0;\n  line-height: 1.5;\n}\n\n.af-section-final {\n  text-align: center;\n  padding: 1.5rem 0 0 0;\n  border-top: 1px solid var(--af-border);\n}\n\n.af-final-text {\n  font-style: italic;\n  font-size: 14px;\n  color: var(--af-text-muted);\n  max-width: 550px;\n  margin: 0 auto;\n}\n\n@media (max-width: 767px) {\n  .af-grid {\n    grid-template-columns: 1fr;\n  }\n  .af-mpv-container {\n    padding: 1.5rem 1rem;\n  }\n}\n\n@media (prefers-reduced-motion: no-preference) {\n  .af-card {\n    animation: af-fadeInUp 0.5s ease backwards;\n  }\n  .af-card:nth-child(2) {\n    animation-delay: 0.1s;\n  }\n}\n\n@keyframes af-fadeInUp {\n  from {\n    opacity: 0;\n    transform: translateY(20px);\n  }\n  to {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\u003c\/style\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":65884519760221,"sku":"AFF-OISE-ETOI-01","price":26.0,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/AFFICHE-OISEAU-ETOILE-PETITE.webp?v=1791464253"},{"product_id":"puzzle-500-pieces-le-brunch","title":"Puzzle 500 Pièces - Le Brunch","description":"\u003cp dir=\"ltr\"\u003eUne table, les essentiels du brunch, un rendez-vous qu'on adore le dimanche. À vous de faire le puzzle !\u003c\/p\u003e\n\u003cp dir=\"ltr\"\u003e500 pièces, puzzle terminé 34,2 x 47,8 cm. Fabriqué en France. Pour les 9-99 ans et à sortir dès que le soleil se pointe.\u003c\/p\u003e\n\u003cp dir=\"ltr\"\u003eLe puzzle qu'on installe sur la table de cuisine en se disant \"juste quelques pièces\" et qu'on finit deux heures plus tard.\u003c\/p\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":66097065656669,"sku":"PUZ-BRUN-01","price":25.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/PUZZLE-LE_BRUNCH-NOEL.jpg?v=1792767557"},{"product_id":"lot-de-5-cartes-de-noel","title":"Lot de 5 cartes de Noël","description":"\u003cp\u003eNos 5 meilleures cartes de Noël, réunies dans un lot pour envoyer de l'amour à tous vos proches en cette période de fêtes. \u003c\/p\u003e\n\u003cp\u003eTous nos produits sont imaginés et imprimés dans nos ateliers situés dans les Hauts-de-France.\u003c\/p\u003e\n\u003cp\u003eLes cartes aux messages fun et colorés? C'est notre spécialité chez Ma Petite vie qui conçoit toute une gamme pour célébrer les heureux événements de la vie et décorer les intérieurs avec des motifs cool et mignons.\u003c\/p\u003e","brand":"Ma Petite Vie","offers":[{"title":"Default Title","offer_id":66375934345565,"sku":"CAR-LOT-NOEL-01","price":18.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/files\/CARTE-NOEL-2026.webp?v=1791966368"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1009\/7426\/4669\/collections\/SELECTION-NOEL.png?v=1793630254","url":"https:\/\/www.mapetitevie.fr\/collections\/notre-selection-de-noel.oembed","provider":"Ma petite vie","version":"1.0","type":"link"}