{"product_id":"monster-vacuum","title":"Monster Vacuum","description":"\u003cbody\u003e\n\n\n\n  \u003cmeta charset=\"utf-8\"\u003e\n\n  \u003cmeta name=\"viewport\" content=\"width=device-width,initial-scale=1\"\u003e\n\n  \u003ctitle\u003eAspirateur MONSTER\u003c\/title\u003e\n\n  \u003cstyle\u003e\n    html { scroll-behavior:smooth; background:#fff; }\n    body { margin:0; background:#fff; color:#0a1020; font-family:Inter,system-ui,-apple-system,\"Segoe UI\",sans-serif; }\n  \u003c\/style\u003e\n\n\n\u003csection aria-label=\"Aspirateur MONSTER\" class=\"monster-vacuum\" data-monster-root=\"\"\u003e\n\u003ca class=\"monster-vacuum__skip\" href=\"#monster-main-preview\"\u003ePasser aux détails du produit MONSTER\u003c\/a\u003e\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__progress\"\u003e\u003cspan data-monster-progress=\"\"\u003e\u003c\/span\u003e\u003c\/div\u003e\n\n\u003cheader class=\"monster-vacuum__hero\" id=\"monster-main-preview\"\u003e\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__grid-bg\"\u003e\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__hero-grid\"\u003e\n\n\u003cdiv class=\"monster-vacuum__hero-copy monster-reveal\"\u003e\n\n\n\u003ch1\u003e\u003cstrong\u003eMONSTER\u003c\/strong\u003e\u003c\/h1\u003e\n\n\u003cp class=\"monster-vacuum__hero-lead\"\u003eConçu pour dévorer le désordre quotidien. MONSTER combine \u003cb\u003e20kPa d'aspiration\u003c\/b\u003e, un \u003cb\u003emoteur brushless de 120 000 tr\/min\u003c\/b\u003e et jusqu'à \u003cb\u003e40 minutes d'autonomie sans fil\u003c\/b\u003e dans une poignée compacte.\u003c\/p\u003e\n\n\u003cdiv class=\"monster-vacuum__hero-actions\"\u003e\n\n\u003cbutton class=\"monster-vacuum__button monster-vacuum__button--primary\" data-monster-buy=\"\" type=\"button\"\u003e\n\u003cspan\u003eAcheter MONSTER\u003c\/span\u003e\n\u003csvg aria-hidden=\"true\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M5 12h14M13 6l6 6-6 6\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003c\/button\u003e\n\u003cbutton class=\"monster-vacuum__button monster-vacuum__button--secondary\" data-monster-specs=\"\" type=\"button\"\u003e\n            Explorer les spécifications principales\n          \u003c\/button\u003e\n\n\u003c\/div\u003e\n\n\u003cdl aria-label=\"Spécifications principales de MONSTER\" class=\"monster-vacuum__hero-metrics\"\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e\n\n\u003cspan data-count=\"20\"\u003e20\u003c\/span\u003e\u003csmall\u003ekPa\u003c\/small\u003e\n\n\u003c\/dt\u003e\n\n\u003cdd\u003eAspiration maximale\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e\n\n\u003cspan data-count=\"120000\"\u003e120 000\u003c\/span\u003e\u003csmall\u003etr\/min\u003c\/small\u003e\n\n\u003c\/dt\u003e\n\n\u003cdd\u003eMoteur brushless\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e\n\n\u003cspan data-count=\"6000\"\u003e6 000\u003c\/span\u003e\u003csmall\u003emAh\u003c\/small\u003e\n\n\u003c\/dt\u003e\n\n\u003cdd\u003eSystème de batterie\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e\n\n\u003cspan data-count=\"40\"\u003e40\u003c\/span\u003e\u003csmall\u003emin\u003c\/small\u003e\n\n\u003c\/dt\u003e\n\n\u003cdd\u003eAutonomie maximale\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/dl\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__hero-visual monster-reveal\" data-monster-tilt=\"\"\u003e\n\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__orbit monster-vacuum__orbit--one\"\u003e\u003c\/div\u003e\n\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__orbit monster-vacuum__orbit--two\"\u003e\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__hero-frame\"\u003e\n\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__scan\"\u003e\u003c\/div\u003e\n\n\u003cimg alt=\"Aspirateur MONSTER avec affichage de puissance ECO MIN et MAX\" fetchpriority=\"high\" height=\"1659\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/06_smart_triple_display.png?v=1783324894\" width=\"948\"\u003e\n\n\u003c\/div\u003e\n\n\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/header\u003e\n\n\u003cmain class=\"monster-vacuum__content\"\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__intro\"\u003e\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__intro-grid\"\u003e\n\n\u003cdiv class=\"monster-vacuum__copy monster-reveal\"\u003e\n\n\n\u003ch2\u003eUne puissance de nettoyage sérieuse dans une prise en main compacte.\u003c\/h2\u003e\n\n\u003cp\u003eMiettes à côté du siège auto. Poussière à l'intérieur du clavier. Poils d'animaux incrustés dans le canapé. MONSTER concentre l'aspiration et le flux d'air à grande vitesse précisément là où les aspirateurs encombrants ont du mal à atteindre.\u003c\/p\u003e\n\n\u003cul class=\"monster-vacuum__check-list\"\u003e\n\n\u003cli\u003eFacile à transporter entre la voiture, le bureau, le canapé et la chambre\u003c\/li\u003e\n\n\u003cli\u003eAccessoires de précision pour les joints, les bouches d'aération, les tissus et les interstices étroits\u003c\/li\u003e\n\n\u003cli\u003eNettoyage sans fil, sans tuyau, sans câble ni corps lourd à traîner\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\n\u003c\/div\u003e\n\n\u003cfigure class=\"monster-vacuum__image-card monster-reveal\"\u003e\n\u003cimg alt=\"Aspirateur MONSTER avec plusieurs accessoires de nettoyage\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/02_four_in_one_functions.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eConçu pour plus de situations réelles.\u003c\/strong\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__core\" data-monster-core=\"\" id=\"monster-specs-preview\"\u003e\n\u003cdiv class=\"monster-vacuum__shell\"\u003e\n\n\u003cdiv class=\"monster-vacuum__heading monster-reveal\"\u003e\n\n\n\u003ch2\u003ePerformances de base, clairement expliquées.\u003c\/h2\u003e\n\n\u003cp\u003eChaque chiffre ci-dessous provient directement des graphiques de spécifications du produit fournis pour ce modèle.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__core-console monster-reveal\"\u003e\n\n\u003cdiv aria-label=\"Spécifications principales du produit\" class=\"monster-vacuum__core-tabs\" role=\"tablist\"\u003e\n\n\u003cbutton aria-selected=\"true\" data-core-key=\"suction\" role=\"tab\" tabindex=\"0\" type=\"button\"\u003e\n\u003cb\u003e20kPa\u003c\/b\u003e\u003csmall\u003eAspiration maximale\u003c\/small\u003e\n\u003c\/button\u003e\n\u003cbutton aria-selected=\"false\" data-core-key=\"motor\" role=\"tab\" tabindex=\"-1\" type=\"button\"\u003e\n\u003cb\u003e120 000\u003c\/b\u003e\u003csmall\u003etr\/min moteur\u003c\/small\u003e\n\u003c\/button\u003e\n\u003cbutton aria-selected=\"false\" data-core-key=\"battery\" role=\"tab\" tabindex=\"-1\" type=\"button\"\u003e\n\u003cb\u003e6000mAh\u003c\/b\u003e\u003csmall\u003eSystème de batterie\u003c\/small\u003e\n\u003c\/button\u003e\n\u003cbutton aria-selected=\"false\" data-core-key=\"filter\" role=\"tab\" tabindex=\"-1\" type=\"button\"\u003e\n\u003cb\u003e\u0026gt;99,5 %\u003c\/b\u003e\u003csmall\u003eEfficacité de filtration\u003c\/small\u003e\n\u003c\/button\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv aria-live=\"polite\" class=\"monster-vacuum__core-display\" role=\"tabpanel\"\u003e\n\n\u003cdiv class=\"monster-vacuum__core-copy\"\u003e\n\n\n\u003ch3 data-core-title=\"\"\u003e20kPa Aspiration Puissante\u003c\/h3\u003e\n\n\u003cp data-core-description=\"\"\u003eAspire la poussière visible, les miettes, les cheveux et les fines débris des surfaces en tissu et des endroits difficiles d'accès.\u003c\/p\u003e\n\n\u003cul data-core-points=\"\"\u003e\n\n\u003cli\u003eConçu pour les intérieurs de voiture, les tissus d'ameublement, les matelas et les bureaux\u003c\/li\u003e\n\n\u003cli\u003eRamassage ciblé pour les fines débris et le désordre quotidien\u003c\/li\u003e\n\n\u003cli\u003eS'associe aux accessoires pour crevasses et tissus d'ameublement\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__meter\"\u003e\u003cspan data-core-meter=\"\"\u003e\u003c\/span\u003e\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__core-media\"\u003e\n\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__core-scan\"\u003e\u003c\/div\u003e\n\n\u003cimg alt=\"Aspiration de 20 kPa nettoyant la poussière et les fines débris des tissus\" data-core-image=\"\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/04_powerful_suction.png?v=1783324895\" width=\"948\"\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__engineering\"\u003e\n\u003cdiv class=\"monster-vacuum__shell\"\u003e\n\n\u003cdiv class=\"monster-vacuum__heading monster-reveal\"\u003e\n\n\n\u003ch2\u003eConçu pour une puissance concentrée.\u003c\/h2\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__engineering-grid\"\u003e\n\n\u003carticle class=\"monster-vacuum__engineering-card monster-reveal\"\u003e\n\n\u003cimg alt=\"Moteur brushless de 120 000 tr\/min\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/03_brushless_motor.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv\u003e\n\n\u003ch3\u003eMoteur brushless de 120 000 tr\/min\u003c\/h3\u003e\n\n\u003cp\u003eLa vitesse de rotation élevée favorise une forte aspiration et un flux d'air à grande vitesse tout en améliorant l'efficacité et en aidant à réduire le bruit de fonctionnement.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/article\u003e\n\u003carticle class=\"monster-vacuum__engineering-card monster-reveal\"\u003e\n\n\u003cimg alt=\"Système de flux d'air cyclonique à l'intérieur de l'aspirateur MONSTER\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/05_cyclonic_airflow.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv\u003e\n\n\u003ch3\u003eFlux d'air cyclonique\u003c\/h3\u003e\n\n\u003cp\u003eUn chemin de flux d'air concentré aide à déplacer les débris dans le bac à poussière efficacement, réduisant le nombre de passages nécessaires pour le nettoyage quotidien.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/article\u003e\n\u003carticle class=\"monster-vacuum__engineering-card monster-reveal\"\u003e\n\n\u003cimg alt=\"Contrôle intelligent de la puissance de la puce avec protection contre la surchauffe\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/13_smart_chip_protection.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv\u003e\n\n\u003ch3\u003eContrôle intelligent de la puissance\u003c\/h3\u003e\n\n\u003cp\u003eLa puce de contrôle adaptative est conçue pour surveiller le courant et la tension en temps réel et fournir une protection intégrée contre la surchauffe.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/article\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__modes\"\u003e\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__modes-grid\"\u003e\n\n\u003cdiv class=\"monster-vacuum__modes-media monster-reveal\"\u003e\n\n\u003cimg alt=\"Écran intelligent avec réglages de puissance ECO MIN et MAX\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/06_smart_triple_display.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv aria-hidden=\"true\" class=\"monster-vacuum__mode-ring\"\u003e\u003cspan\u003e\u003c\/span\u003e\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__modes-copy monster-reveal\"\u003e\n\n\n\u003ch2\u003eChoisissez la puissance dont vous avez besoin.\u003c\/h2\u003e\n\n\u003cp data-mode-description=\"\"\u003eMIN offre des performances équilibrées pour le nettoyage de routine de la voiture, du bureau et des tissus d'ameublement.\u003c\/p\u003e\n\n\u003cdiv aria-label=\"Démonstration du niveau de puissance\" class=\"monster-vacuum__mode-buttons\" role=\"group\"\u003e\n\n\u003cbutton data-power=\"eco\" type=\"button\"\u003e\u003cb\u003eECO\u003c\/b\u003e\u003c\/button\u003e\n\u003cbutton class=\"is-active\" data-power=\"min\" type=\"button\"\u003e\u003cb\u003eMIN\u003c\/b\u003e\u003c\/button\u003e\n\u003cbutton data-power=\"max\" type=\"button\"\u003e\u003cb\u003eMAX\u003c\/b\u003e\u003c\/button\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__status-card\"\u003e\n\n\u003csvg aria-hidden=\"true\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M4 5h16v14H4zM7 15v-3m5 3V8m5 7v-5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003cspan\u003eL'écran affiche le niveau de flux d'air, l'état de la batterie, le mode sélectionné et l'état de fonctionnement.\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__scenarios\"\u003e\n\u003cdiv class=\"monster-vacuum__shell\"\u003e\n\n\u003cdiv class=\"monster-vacuum__heading monster-reveal\"\u003e\n\n\n\u003ch2\u003eConçu pour les désordres que vous rencontrez réellement.\u003c\/h2\u003e\n\n\u003cp\u003eIl s'agit de scénarios d'utilisation pratique rendus possibles par les accessoires inclus, et non de modes de produit distincts.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__scenario-grid\"\u003e\n\n\u003cfigure class=\"monster-vacuum__scenario-card monster-vacuum__scenario-card--wide monster-reveal\"\u003e\n\u003cimg alt=\"Aspirateur MONSTER nettoyant les tapis de tissus d'ameublement et les intérieurs de véhicules\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/09_fabric_and_upholstery.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eNettoyez en profondeur les tissus d'ameublement, les tapis et les intérieurs de véhicules.\u003c\/strong\u003e\u003cp\u003eRamassez les miettes, la poussière de surface et les poils lâches avec l'accessoire d'ameublement.\u003c\/p\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\u003cfigure class=\"monster-vacuum__scenario-card monster-reveal\"\u003e\n\u003cimg alt=\"Aspirateur MONSTER nettoyant les rails de fenêtre, les bouches d'aération de voiture et les joints de canapé\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/08_tight_gap_cleaning.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eAtteignez les joints, les rails et les bouches d'aération.\u003c\/strong\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\u003cfigure class=\"monster-vacuum__scenario-card monster-reveal\"\u003e\n\u003cimg alt=\"Dépoussiéreur à air MONSTER nettoyant le clavier et les surfaces de voiture\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/07_blow_and_inflate_uses.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eSoufflez la poussière des claviers, des tableaux de bord et des bouches d'aération.\u003c\/strong\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\u003cfigure class=\"monster-vacuum__scenario-card monster-reveal\"\u003e\n\u003cimg alt=\"Aspirateur MONSTER retirant l'air des sacs de rangement compatibles\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/10_vacuum_seal_storage.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eÉvacuez l'air des sacs compatibles avec valve.\u003c\/strong\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\u003cfigure class=\"monster-vacuum__scenario-card monster-reveal\"\u003e\n\u003cimg alt=\"Appareil MONSTER gonflant des coussins, des matelas pneumatiques et des matelas gonflables\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/11_inflate_outdoor_gear.png?v=1783324894\" width=\"948\"\u003e\n\u003cfigcaption\u003e\u003cstrong\u003eGonflez les coussins, les flotteurs et les matelas pneumatiques compatibles.\u003c\/strong\u003e\u003c\/figcaption\u003e\n\u003c\/figure\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__battery\"\u003e\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__battery-grid\"\u003e\n\n\u003cdiv class=\"monster-vacuum__battery-copy monster-reveal\"\u003e\n\n\n\u003ch2\u003eLongue autonomie. Recharge flexible.\u003c\/h2\u003e\n\n\u003cp\u003eLe système de batterie 2000 mAh × 3 offre jusqu'à 40 minutes d'autonomie. La charge USB-C fonctionne avec un adaptateur de téléphone compatible ou un port USB de véhicule.\u003c\/p\u003e\n\n\u003cdl class=\"monster-vacuum__battery-stats\"\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e6000mAh\u003c\/dt\u003e\n\n\u003cdd\u003eSystème de batterie total\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e40 min\u003c\/dt\u003e\n\n\u003cdd\u003eAutonomie maximale\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e≈4 h\u003c\/dt\u003e\n\n\u003cdd\u003eTemps de charge\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003e90 jours\u003c\/dt\u003e\n\n\u003cdd\u003eJusqu'à en veille\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/dl\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__battery-images monster-reveal\"\u003e\n\n\u003cimg alt=\"Batterie 6000 mAh avec jusqu'à 40 minutes d'autonomie\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/12_battery_runtime.png?v=1783324894\" width=\"948\"\u003e\n\u003cimg alt=\"Charge USB-C à la maison et en voiture\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/16_usb_c_charging.png?v=1783324894\" width=\"948\"\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__clean-air\"\u003e\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__clean-grid\"\u003e\n\n\u003cdiv class=\"monster-vacuum__clean-media monster-reveal\"\u003e\n\n\u003cimg alt=\"Filtration HEPA haute efficacité et bac à poussière sécurisé à verrouillage par pression\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/14_hepa_filtration.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv class=\"monster-vacuum__filter-chip\"\u003e\u003cb\u003e\u0026gt;99,5 %\u003c\/b\u003e\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__clean-copy monster-reveal\"\u003e\n\n\n\u003ch2\u003eFiltration fine. Vidange plus propre.\u003c\/h2\u003e\n\n\u003cp\u003eLe filtre haute efficacité aide à séparer les fines particules de l'air sortant. La conception sécurisée à verrouillage par pression aide à prévenir toute ouverture accidentelle, tandis que le déverrouillage à une touche rend la vidange plus rapide et plus propre.\u003c\/p\u003e\n\n\u003cdiv class=\"monster-vacuum__mini-card\"\u003e\n\n\u003cimg alt=\"Mécanisme de libération de poussière à une touche\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/15_one_touch_dust_release.png?v=1783324894\" width=\"948\"\u003e\n\u003cdiv\u003e\n\n\u003cb\u003eLibération de poussière à une touche\u003c\/b\u003e\u003cspan\u003eAppuyez une fois pour ouvrir le bac à poussière et éliminer les débris sans vous salir les mains.\u003c\/span\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__package\"\u003e\n\u003cdiv class=\"monster-vacuum__shell\"\u003e\n\n\u003cdiv class=\"monster-vacuum__heading monster-reveal\"\u003e\n\n\n\u003ch2\u003eTout ce dont vous avez besoin est dans la boîte.\u003c\/h2\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__package-grid\"\u003e\n\n\u003cfigure class=\"monster-vacuum__package-image monster-reveal\"\u003e\n\u003cimg alt=\"Dimensions du contenu de l'emballage et accessoires inclus de MONSTER\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/17_package_contents.png?v=1783324894\" width=\"948\"\u003e\n\u003c\/figure\u003e\n\u003cdiv class=\"monster-vacuum__package-content monster-reveal\"\u003e\n\n\u003col\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e01\u003c\/span\u003eUnité principale\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e02\u003c\/span\u003ePetite buse de gonflage\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e03\u003c\/span\u003eBrosse d'ameublement\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e04\u003c\/span\u003eCâble de charge USB-C\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e05\u003c\/span\u003eLongue buse plate\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e06\u003c\/span\u003eLongue buse à air\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e07\u003c\/span\u003eBrosse ronde\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e08\u003c\/span\u003eBrosse courte\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e09\u003c\/span\u003eBuse de scellage sous vide\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e10\u003c\/span\u003eManuel d'utilisation\u003c\/li\u003e\n\n\u003cli\u003e\n\n\u003cspan\u003e11\u003c\/span\u003eBoîte de rangement\u003c\/li\u003e\n\n\n\u003c\/ol\u003e\n\n\u003cbutton aria-expanded=\"false\" class=\"monster-vacuum__spec-toggle\" data-spec-toggle=\"\" type=\"button\"\u003e\n              Voir les spécifications complètes\n              \u003csvg aria-hidden=\"true\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M6 9l6 6 6-6\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003c\/button\u003e\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"monster-vacuum__spec-panel\" data-spec-panel=\"\" hidden=\"\"\u003e\n\n\u003cimg alt=\"Spécifications techniques de l'aspirateur MONSTER\" height=\"1659\" loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/18_product_specifications.png?v=1783324894\" width=\"948\"\u003e\n\u003cdl\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eAspiration maximale\u003c\/dt\u003e\n\n\u003cdd\u003e20 kPa\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eVitesse du moteur\u003c\/dt\u003e\n\n\u003cdd\u003eJusqu'à 120 000 tr\/min\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003ePuissance nominale\u003c\/dt\u003e\n\n\u003cdd\u003e100 W\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eBatterie\u003c\/dt\u003e\n\n\u003cdd\u003e2000 mAh × 3\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eAutonomie\u003c\/dt\u003e\n\n\u003cdd\u003eJusqu'à 40 minutes\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eEntrée de charge\u003c\/dt\u003e\n\n\u003cdd\u003e5 V \/ 2 A USB-C\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003eBac à poussière\u003c\/dt\u003e\n\n\u003cdd\u003e0,12 L\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\u003cdiv\u003e\n\n\u003cdt\u003ePoids total\u003c\/dt\u003e\n\n\u003cdd\u003e766 g\u003c\/dd\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/dl\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003csection class=\"monster-vacuum__section monster-vacuum__final\"\u003e\n\u003cdiv class=\"monster-vacuum__shell monster-vacuum__final-card monster-reveal\"\u003e\n\n\u003cdiv\u003e\n\n\n\u003ch2\u003eProcurez-vous MONSTER.\u003c\/h2\u003e\n\n\n\n\u003c\/div\u003e\n\n\u003cbutton class=\"monster-vacuum__button monster-vacuum__button--primary\" data-monster-buy=\"\" type=\"button\"\u003e\n\u003cspan\u003eAcheter MONSTER\u003c\/span\u003e\n\u003csvg aria-hidden=\"true\" viewbox=\"0 0 24 24\"\u003e\u003cpath d=\"M5 12h14M13 6l6 6-6 6\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003c\/button\u003e\n\n\u003c\/div\u003e\n\n\u003c\/section\u003e\n\u003c\/main\u003e\n\u003c\/section\u003e\n\u003cstyle\u003e\n  .monster-vacuum,\n  .monster-vacuum * { box-sizing:border-box; }\n  .monster-vacuum {\n    --mv-bg:#ffffff;\n    --mv-surface:#f6f8fc;\n    --mv-surface-2:#eef2f8;\n    --mv-text:#0a1020;\n    --mv-muted:#596477;\n    --mv-line:#dfe5ef;\n    --mv-purple:#6d4aff;\n    --mv-purple-dark:#4d2edf;\n    --mv-cyan:#008cff;\n    --mv-green:#24b77a;\n    --mv-shadow:0 24px 70px rgba(34,45,74,.12);\n    position:relative;\n    isolation:isolate;\n    overflow:hidden;\n    background:#fff;\n    color:var(--mv-text);\n    font-family:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    font-size:16px;\n    line-height:1.65;\n  }\n  .monster-vacuum img { display:block; max-width:100%; height:auto; }\n  .monster-vacuum button,\n  .monster-vacuum a { font:inherit; }\n  .monster-vacuum button { color:inherit; }\n  .monster-vacuum h1,\n  .monster-vacuum h2,\n  .monster-vacuum h3,\n  .monster-vacuum p,\n  .monster-vacuum dl,\n  .monster-vacuum figure { margin:0; }\n  .monster-vacuum h1,\n  .monster-vacuum h2,\n  .monster-vacuum h3 { color:var(--mv-text); letter-spacing:-.045em; line-height:1.02; }\n  .monster-vacuum p { color:var(--mv-muted); }\n  .monster-vacuum svg { width:1.2em; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }\n  .monster-vacuum__shell { width:min(1180px, calc(100% - 36px)); margin-inline:auto; }\n  .monster-vacuum__section { position:relative; padding:clamp(5rem, 9vw, 8.5rem) 0; background:#fff; }\n  .monster-vacuum__skip { position:absolute; left:1rem; top:-10rem; z-index:1000; padding:.8rem 1rem; background:#fff; color:#000; border:1px solid var(--mv-line); border-radius:.7rem; }\n  .monster-vacuum__skip:focus { top:1rem; }\n  .monster-vacuum__progress { position:fixed; top:0; left:0; right:0; height:3px; z-index:200; pointer-events:none; background:rgba(230,234,243,.7); }\n  .monster-vacuum__progress span { display:block; width:0; height:100%; background:linear-gradient(90deg,var(--mv-purple),var(--mv-cyan)); box-shadow:0 0 14px rgba(109,74,255,.55); }\n\n  .monster-vacuum__hero { position:relative; min-height:min(940px,100svh); display:grid; align-items:center; padding:clamp(5rem,8vw,8rem) 0 4rem; background:#fff; }\n  .monster-vacuum__grid-bg { position:absolute; inset:0; pointer-events:none; opacity:.58; background-image:linear-gradient(rgba(109,74,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(109,74,255,.055) 1px,transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to bottom,#000,transparent 88%); }\n  .monster-vacuum__hero::before { content:\"\"; position:absolute; width:36rem; height:36rem; right:-8rem; top:2rem; background:radial-gradient(circle,rgba(109,74,255,.16),rgba(0,140,255,.07) 42%,transparent 70%); filter:blur(2px); pointer-events:none; }\n  .monster-vacuum__hero-grid { position:relative; display:grid; gap:clamp(2.5rem,6vw,6rem); align-items:center; }\n  .monster-vacuum__kicker,\n  .monster-vacuum__eyebrow { display:flex; align-items:center; gap:.65rem; color:var(--mv-purple-dark)!important; font-size:.76rem; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }\n  .monster-vacuum__kicker span { width:.55rem; height:.55rem; border-radius:50%; background:var(--mv-purple); box-shadow:0 0 0 7px rgba(109,74,255,.12),0 0 18px rgba(109,74,255,.35); animation:mvPulse 2.2s ease-in-out infinite; }\n  .monster-vacuum__hero h1 { margin-top:0; }\n  .monster-vacuum__hero h1 strong { display:block; font-size:clamp(4.3rem,13vw,10rem); font-weight:950; letter-spacing:-.075em; background:linear-gradient(105deg,#080d1b 6%,#2b3350 44%,#6d4aff 83%); -webkit-background-clip:text; background-clip:text; color:transparent; }\n  .monster-vacuum__hero h1 small { display:block; margin-top:.3rem; font-size:clamp(1.45rem,3.2vw,2.55rem); font-weight:800; letter-spacing:-.035em; color:#202a40; }\n  .monster-vacuum__hero-lead { max-width:43rem; margin-top:1.6rem!important; font-size:clamp(1.03rem,2vw,1.25rem); color:#495469!important; }\n  .monster-vacuum__hero-lead b { color:#11182a; }\n  .monster-vacuum__hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin:2rem 0 2.4rem; }\n  .monster-vacuum__button { display:inline-flex; justify-content:center; align-items:center; gap:.75rem; min-height:3.55rem; padding:.9rem 1.35rem; border-radius:999px; border:1px solid transparent; cursor:pointer; text-decoration:none; font-weight:850; transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease; }\n  .monster-vacuum__button:hover { transform:translateY(-2px); }\n  .monster-vacuum__button:focus-visible { outline:3px solid rgba(109,74,255,.28); outline-offset:3px; }\n  .monster-vacuum__button--primary { background:linear-gradient(120deg,var(--mv-purple-dark),var(--mv-purple),var(--mv-cyan)); color:#fff!important; box-shadow:0 14px 35px rgba(91,57,230,.27); }\n  .monster-vacuum__button--primary:hover { box-shadow:0 18px 42px rgba(91,57,230,.37); }\n  .monster-vacuum__button--secondary { background:#fff; color:#11182a; border-color:#cfd7e6; box-shadow:0 8px 26px rgba(25,35,58,.07); }\n  .monster-vacuum__hero-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; max-width:39rem; }\n  .monster-vacuum__hero-metrics div { padding:1rem 1.05rem; background:rgba(255,255,255,.92); border:1px solid var(--mv-line); border-radius:1rem; box-shadow:0 8px 30px rgba(26,40,75,.06); }\n  .monster-vacuum__hero-metrics dt { font-size:clamp(1.35rem,3vw,2rem); font-weight:900; line-height:1; color:#10162a; }\n  .monster-vacuum__hero-metrics dt small { margin-left:.25rem; font-size:.66em; color:var(--mv-purple-dark); }\n  .monster-vacuum__hero-metrics dd { margin:.45rem 0 0; color:var(--mv-muted); font-size:.82rem; font-weight:650; }\n\n  .monster-vacuum__hero-visual { position:relative; min-height:36rem; display:grid; place-items:center; perspective:1100px; }\n  .monster-vacuum__hero-frame { position:relative; width:min(78vw,30rem); max-height:45rem; overflow:hidden; border:1px solid #e1e6f0; border-radius:2.2rem; background:linear-gradient(145deg,#fff,#f1f3f9); box-shadow:var(--mv-shadow),0 0 90px rgba(109,74,255,.12); transform:rotateY(-5deg) rotateX(2deg); transition:transform .25s ease-out; }\n  .monster-vacuum__hero-frame::after { content:\"\"; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg,rgba(255,255,255,.34),transparent 28%,transparent 76%,rgba(109,74,255,.08)); }\n  .monster-vacuum__scan { position:absolute; z-index:2; left:5%; right:5%; height:2px; top:8%; background:linear-gradient(90deg,transparent,var(--mv-cyan),var(--mv-purple),transparent); filter:drop-shadow(0 0 8px rgba(0,140,255,.7)); animation:mvScan 5.5s ease-in-out infinite; opacity:.65; }\n  .monster-vacuum__orbit { position:absolute; border:1px solid rgba(109,74,255,.23); border-radius:50%; pointer-events:none; }\n  .monster-vacuum__orbit--one { width:32rem; height:32rem; animation:mvSpin 22s linear infinite; }\n  .monster-vacuum__orbit--two { width:25rem; height:25rem; border-style:dashed; animation:mvSpinReverse 16s linear infinite; }\n  .monster-vacuum__orbit::before,\n  .monster-vacuum__orbit::after { content:\"\"; position:absolute; width:.55rem; height:.55rem; border-radius:50%; background:var(--mv-purple); box-shadow:0 0 16px rgba(109,74,255,.75); }\n  .monster-vacuum__orbit::before { left:10%; top:17%; }\n  .monster-vacuum__orbit::after { right:12%; bottom:14%; background:var(--mv-cyan); }\n  .monster-vacuum__chip { position:absolute; z-index:4; min-width:9.5rem; padding:.8rem .95rem; background:rgba(255,255,255,.94); border:1px solid rgba(109,74,255,.22); border-radius:1rem; box-shadow:0 14px 35px rgba(34,45,74,.12); backdrop-filter:blur(12px); }\n  .monster-vacuum__chip b { display:block; font-size:1.05rem; color:#11182a; }\n  .monster-vacuum__chip span { display:block; margin-top:.15rem; font-size:.72rem; color:var(--mv-muted); }\n  .monster-vacuum__chip--top { right:-.2rem; top:18%; }\n  .monster-vacuum__chip--bottom { left:-.2rem; bottom:16%; }\n\n  .monster-vacuum__signal { overflow:hidden; border-block:1px solid var(--mv-line); background:#f8f9fd; }\n  .monster-vacuum__signal-track { display:flex; align-items:center; gap:1.2rem; width:max-content; padding:.85rem 0; color:#2e3850; font-size:.77rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; animation:mvMarquee 24s linear infinite; }\n  .monster-vacuum__signal-track i { width:.38rem; height:.38rem; border-radius:50%; background:var(--mv-purple); box-shadow:0 0 11px rgba(109,74,255,.45); }\n\n  .monster-vacuum__intro { background:#fff; }\n  .monster-vacuum__intro-grid,\n  .monster-vacuum__modes-grid,\n  .monster-vacuum__battery-grid,\n  .monster-vacuum__clean-grid { display:grid; gap:clamp(2rem,5vw,5rem); align-items:center; }\n  .monster-vacuum__copy h2,\n  .monster-vacuum__heading h2,\n  .monster-vacuum__modes-copy h2,\n  .monster-vacuum__battery-copy h2,\n  .monster-vacuum__clean-copy h2 { margin-top:.9rem; font-size:clamp(2.4rem,6vw,5.2rem); font-weight:920; }\n  .monster-vacuum__copy \u003e p:not(.monster-vacuum__eyebrow),\n  .monster-vacuum__heading \u003e p:not(.monster-vacuum__eyebrow),\n  .monster-vacuum__modes-copy \u003e p,\n  .monster-vacuum__battery-copy \u003e p,\n  .monster-vacuum__clean-copy \u003e p { margin-top:1.35rem; max-width:47rem; font-size:clamp(1rem,1.6vw,1.16rem); }\n  .monster-vacuum__check-list { list-style:none; padding:0; margin:1.7rem 0 0; display:grid; gap:.85rem; }\n  .monster-vacuum__check-list li { position:relative; padding-left:2rem; color:#273149; font-weight:650; }\n  .monster-vacuum__check-list li::before { content:\"\"; position:absolute; left:0; top:.44rem; width:1rem; height:1rem; border-radius:50%; background:linear-gradient(135deg,var(--mv-purple),var(--mv-cyan)); box-shadow:inset 0 0 0 3px #fff,0 0 0 1px rgba(109,74,255,.2); }\n  .monster-vacuum__image-card { position:relative; overflow:hidden; border-radius:2rem; border:1px solid var(--mv-line); background:#f6f8fc; box-shadow:var(--mv-shadow); }\n  .monster-vacuum__image-card figcaption { position:absolute; left:1rem; right:1rem; bottom:1rem; padding:1rem 1.1rem; background:rgba(255,255,255,.93); border:1px solid rgba(220,226,238,.9); border-radius:1rem; backdrop-filter:blur(14px); box-shadow:0 12px 32px rgba(32,44,72,.12); }\n  .monster-vacuum__image-card figcaption span { display:block; color:var(--mv-purple-dark); font-size:.9rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }\n  .monster-vacuum__image-card figcaption strong { display:block; margin-top:.25rem; font-size:1.03rem; }\n\n  .monster-vacuum__core { background:linear-gradient(180deg,#f7f8fc,#fff); }\n  .monster-vacuum__heading { max-width:54rem; }\n  .monster-vacuum__core-console { margin-top:2.5rem; border:1px solid var(--mv-line); border-radius:2rem; background:#fff; overflow:hidden; box-shadow:var(--mv-shadow); }\n  .monster-vacuum__core-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); background:#f4f6fb; border-bottom:1px solid var(--mv-line); }\n  .monster-vacuum__core-tabs button { position:relative; min-height:8.2rem; padding:1rem; border:0; border-right:1px solid var(--mv-line); border-bottom:1px solid var(--mv-line); background:transparent; text-align:left; cursor:pointer; transition:background .2s ease,color .2s ease; }\n  .monster-vacuum__core-tabs button:nth-child(2n) { border-right:0; }\n  .monster-vacuum__core-tabs button:nth-last-child(-n+2) { border-bottom:0; }\n  .monster-vacuum__core-tabs button[aria-selected=\"true\"] { background:#fff; box-shadow:inset 0 -3px 0 var(--mv-purple); }\n  .monster-vacuum__core-tabs button:focus-visible { outline:3px solid rgba(109,74,255,.25); outline-offset:-3px; }\n  .monster-vacuum__core-tabs span { display:block; color:#8a94a7; font-size:.68rem; font-weight:850; letter-spacing:.15em; }\n  .monster-vacuum__core-tabs b { display:block; margin-top:.45rem; font-size:clamp(1.35rem,3vw,2rem); line-height:1; }\n  .monster-vacuum__core-tabs small { display:block; margin-top:.45rem; color:var(--mv-muted); font-weight:650; }\n  .monster-vacuum__core-display { display:grid; min-height:37rem; }\n  .monster-vacuum__core-copy { padding:clamp(1.5rem,4vw,4rem); display:flex; flex-direction:column; justify-content:center; }\n  .monster-vacuum__core-label { color:var(--mv-purple-dark)!important; font-size:.72rem; font-weight:850; letter-spacing:.14em; }\n  .monster-vacuum__core-copy h3 { margin-top:.8rem; font-size:clamp(2rem,5vw,4rem); font-weight:900; }\n  .monster-vacuum__core-copy \u003e p:not(.monster-vacuum__core-label) { margin-top:1.1rem; font-size:1.05rem; }\n  .monster-vacuum__core-copy ul { margin:1.3rem 0 0; padding-left:1.15rem; color:#2f394f; }\n  .monster-vacuum__core-copy li + li { margin-top:.5rem; }\n  .monster-vacuum__meter { height:.5rem; margin-top:1.8rem; overflow:hidden; border-radius:99px; background:#e9edf5; }\n  .monster-vacuum__meter span { display:block; width:72%; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--mv-purple),var(--mv-cyan)); transition:width .35s ease; }\n  .monster-vacuum__core-media { position:relative; overflow:hidden; min-height:34rem; background:linear-gradient(145deg,#f7f8fc,#eef2f8); }\n  .monster-vacuum__core-media img { width:100%; height:100%; object-fit:contain; transition:opacity .22s ease,transform .35s ease; }\n  .monster-vacuum__core-media.is-changing img { opacity:.25; transform:scale(.975); }\n  .monster-vacuum__core-scan { position:absolute; z-index:2; left:0; right:0; height:2px; top:12%; background:linear-gradient(90deg,transparent,var(--mv-cyan),var(--mv-purple),transparent); animation:mvCoreScan 4.8s ease-in-out infinite; opacity:.6; }\n\n  .monster-vacuum__engineering { background:#fff; }\n  .monster-vacuum__engineering-grid { display:grid; gap:1rem; margin-top:2.5rem; }\n  .monster-vacuum__engineering-card { position:relative; overflow:hidden; border:1px solid var(--mv-line); border-radius:1.6rem; background:#f7f8fc; box-shadow:0 18px 45px rgba(30,42,69,.08); }\n  .monster-vacuum__engineering-card img { width:100%; aspect-ratio:4\/5; object-fit:cover; object-position:top; }\n  .monster-vacuum__engineering-card \u003e div { padding:1.25rem 1.25rem 1.5rem; }\n  .monster-vacuum__engineering-card h3 { font-size:1.5rem; font-weight:880; }\n  .monster-vacuum__engineering-card p { margin-top:.75rem; }\n  .monster-vacuum__card-index { position:absolute; z-index:2; top:.8rem; left:.8rem; padding:.42rem .62rem; border-radius:.6rem; color:#fff; background:rgba(15,22,40,.85); font-size:.65rem; font-weight:850; letter-spacing:.12em; backdrop-filter:blur(10px); }\n\n  .monster-vacuum__modes { background:linear-gradient(180deg,#f7f9fc,#fff); }\n  .monster-vacuum__modes-media { position:relative; display:grid; place-items:center; }\n  .monster-vacuum__modes-media \u003e img { position:relative; z-index:1; width:min(100%,31rem); border-radius:2rem; border:1px solid var(--mv-line); box-shadow:var(--mv-shadow); }\n  .monster-vacuum__mode-ring { position:absolute; width:27rem; height:27rem; border-radius:50%; background:conic-gradient(var(--mv-purple) 0 62%,#dfe5ef 62%); transition:background .25s ease; animation:mvSoftSpin 12s linear infinite; }\n  .monster-vacuum__mode-ring::after { content:\"\"; position:absolute; inset:5px; border-radius:50%; background:#f7f9fc; }\n  .monster-vacuum__mode-buttons { display:grid; grid-template-columns:repeat(3,1fr); gap:.65rem; margin-top:1.6rem; }\n  .monster-vacuum__mode-buttons button { padding:1rem .65rem; border:1px solid var(--mv-line); border-radius:1rem; background:#fff; cursor:pointer; text-align:left; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }\n  .monster-vacuum__mode-buttons button:hover { transform:translateY(-2px); }\n  .monster-vacuum__mode-buttons button.is-active { border-color:rgba(109,74,255,.55); box-shadow:0 10px 28px rgba(109,74,255,.13),inset 0 -3px 0 var(--mv-purple); }\n  .monster-vacuum__mode-buttons b { display:block; font-size:1.25rem; }\n  .monster-vacuum__mode-buttons span { display:block; margin-top:.15rem; color:var(--mv-muted); font-size:.7rem; }\n  .monster-vacuum__status-card { display:flex; align-items:flex-start; gap:.85rem; margin-top:1.2rem; padding:1rem; border:1px solid var(--mv-line); border-radius:1rem; background:#f6f8fc; color:#354057; }\n  .monster-vacuum__status-card svg { flex:0 0 1.4rem; color:var(--mv-purple); }\n\n  .monster-vacuum__scenarios { background:#fff; }\n  .monster-vacuum__scenario-grid { display:grid; gap:1rem; margin-top:2.5rem; }\n  .monster-vacuum__scenario-card { position:relative; min-height:31rem; overflow:hidden; border:1px solid var(--mv-line); border-radius:1.6rem; background:#f4f6fa; box-shadow:0 18px 45px rgba(30,42,69,.08); }\n  .monster-vacuum__scenario-card img { width:100%; height:100%; object-fit:cover; object-position:top; transition:transform .45s ease; }\n  .monster-vacuum__scenario-card:hover img { transform:scale(1.025); }\n  .monster-vacuum__scenario-card figcaption { position:absolute; left:.85rem; right:.85rem; bottom:.85rem; padding:1rem; background:rgba(255,255,255,.94); border:1px solid rgba(225,230,239,.92); border-radius:1rem; backdrop-filter:blur(14px); box-shadow:0 12px 30px rgba(30,42,69,.12); }\n  .monster-vacuum__scenario-card figcaption span { color:var(--mv-purple-dark); font-size:.67rem; font-weight:900; letter-spacing:.13em; }\n  .monster-vacuum__scenario-card figcaption strong { display:block; margin-top:.32rem; font-size:1rem; line-height:1.3; color:#11182a; }\n  .monster-vacuum__scenario-card figcaption p { margin-top:.5rem; font-size:.85rem; }\n\n  .monster-vacuum__battery { background:linear-gradient(180deg,#f7f9fc,#fff); }\n  .monster-vacuum__battery-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:.7rem; margin-top:1.8rem; }\n  .monster-vacuum__battery-stats div { padding:1rem; border:1px solid var(--mv-line); border-radius:1rem; background:#fff; }\n  .monster-vacuum__battery-stats dt { font-size:1.35rem; font-weight:900; color:#11182a; }\n  .monster-vacuum__battery-stats dd { margin:.25rem 0 0; color:var(--mv-muted); font-size:.76rem; }\n  .monster-vacuum__battery-images { display:grid; grid-template-columns:1.08fr .92fr; align-items:end; gap:.8rem; }\n  .monster-vacuum__battery-images img { border-radius:1.5rem; border:1px solid var(--mv-line); box-shadow:0 16px 40px rgba(30,42,69,.09); }\n  .monster-vacuum__battery-images img:nth-child(2) { transform:translateY(2rem); }\n\n  .monster-vacuum__clean-air { background:#fff; }\n  .monster-vacuum__clean-media { position:relative; }\n  .monster-vacuum__clean-media \u003e img { width:min(100%,34rem); margin-inline:auto; border-radius:2rem; border:1px solid var(--mv-line); box-shadow:var(--mv-shadow); }\n  .monster-vacuum__filter-chip { position:absolute; right:0; bottom:1.5rem; width:9.2rem; padding:1rem; border-radius:1rem; background:linear-gradient(135deg,var(--mv-purple-dark),var(--mv-purple),var(--mv-cyan)); color:#fff; box-shadow:0 15px 36px rgba(91,57,230,.28); }\n  .monster-vacuum__filter-chip b { display:block; font-size:1.8rem; line-height:1; }\n  .monster-vacuum__filter-chip span { display:block; margin-top:.35rem; font-size:.67rem; line-height:1.25; }\n  .monster-vacuum__mini-card { display:grid; grid-template-columns:7rem 1fr; align-items:center; gap:1rem; margin-top:1.5rem; padding:.8rem; border:1px solid var(--mv-line); border-radius:1.2rem; background:#f7f8fc; }\n  .monster-vacuum__mini-card img { width:7rem; height:7rem; object-fit:cover; object-position:top; border-radius:.8rem; }\n  .monster-vacuum__mini-card b { display:block; color:#11182a; }\n  .monster-vacuum__mini-card span { display:block; margin-top:.35rem; color:var(--mv-muted); font-size:.84rem; }\n\n  .monster-vacuum__package { background:linear-gradient(180deg,#f7f9fc,#fff); }\n  .monster-vacuum__package-grid { display:grid; gap:1rem; margin-top:2.5rem; align-items:start; }\n  .monster-vacuum__package-image { overflow:hidden; border:1px solid var(--mv-line); border-radius:1.6rem; background:#fff; box-shadow:var(--mv-shadow); }\n  .monster-vacuum__package-content { padding:1rem; border:1px solid var(--mv-line); border-radius:1.6rem; background:#fff; box-shadow:0 18px 45px rgba(30,42,69,.07); }\n  .monster-vacuum__package-content ol { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }\n  .monster-vacuum__package-content li { display:flex; align-items:center; gap:.65rem; min-height:3rem; padding:.55rem; border-bottom:1px solid #edf0f5; color:#2d374d; font-size:.84rem; font-weight:650; }\n  .monster-vacuum__package-content li span { display:grid; place-items:center; flex:0 0 2rem; height:2rem; border-radius:.65rem; background:#f0edff; color:var(--mv-purple-dark); font-size:.68rem; font-weight:900; }\n  .monster-vacuum__spec-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; padding:1rem; border:1px solid #cfd7e6; border-radius:1rem; background:#fff; cursor:pointer; font-weight:850; }\n  .monster-vacuum__spec-toggle svg { transition:transform .2s ease; }\n  .monster-vacuum__spec-toggle[aria-expanded=\"true\"] svg { transform:rotate(180deg); }\n  .monster-vacuum__spec-panel { display:grid; gap:1rem; margin-top:1rem; padding:1rem; border:1px solid var(--mv-line); border-radius:1.6rem; background:#fff; box-shadow:var(--mv-shadow); }\n  .monster-vacuum__spec-panel[hidden] { display:none; }\n  .monster-vacuum__spec-panel img { width:100%; border-radius:1rem; }\n  .monster-vacuum__spec-panel dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }\n  .monster-vacuum__spec-panel dl div { padding:.85rem; border:1px solid var(--mv-line); border-radius:.8rem; background:#f7f8fc; }\n  .monster-vacuum__spec-panel dt { color:var(--mv-muted); font-size:.72rem; }\n  .monster-vacuum__spec-panel dd { margin:.25rem 0 0; color:#11182a; font-weight:850; }\n\n  .monster-vacuum__final { padding-top:2rem; padding-bottom:2rem; }\n  .monster-vacuum__final-card { position:relative; overflow:hidden; display:grid; gap:2rem; align-items:center; padding:clamp(2rem,6vw,5rem); border:1px solid rgba(109,74,255,.25); border-radius:2rem; background:linear-gradient(135deg,#f5f2ff,#f0f8ff 55%,#fff); box-shadow:var(--mv-shadow); }\n  .monster-vacuum__final-card::before { content:\"MONSTER\"; position:absolute; right:-.04em; bottom:-.28em; color:rgba(109,74,255,.055); font-size:clamp(5rem,18vw,14rem); font-weight:950; letter-spacing:-.08em; pointer-events:none; }\n  .monster-vacuum__final-card \u003e * { position:relative; z-index:1; }\n  .monster-vacuum__final-card h2 { margin-top:.6rem; font-size:clamp(3rem,8vw,7rem); font-weight:950; }\n  .monster-vacuum__final-card p:not(.monster-vacuum__eyebrow) { margin-top:.8rem; max-width:36rem; font-size:1.05rem; }\n\n\n  .monster-reveal { opacity:0; transform:translateY(28px); transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1); }\n  .monster-reveal.is-visible { opacity:1; transform:none; }\n\n  @keyframes mvPulse { 50% { transform:scale(.72); opacity:.6; } }\n  @keyframes mvScan { 0%,100% { top:8%; opacity:0; } 15%,85% { opacity:.65; } 50% { top:91%; } }\n  @keyframes mvCoreScan { 0%,100% { top:8%; opacity:0; } 15%,85% { opacity:.62; } 50% { top:92%; } }\n  @keyframes mvSpin { to { transform:rotate(360deg); } }\n  @keyframes mvSpinReverse { to { transform:rotate(-360deg); } }\n  @keyframes mvSoftSpin { to { transform:rotate(360deg); } }\n  @keyframes mvMarquee { to { transform:translateX(-50%); } }\n\n  @media (min-width:760px) {\n    .monster-vacuum__hero-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }\n    .monster-vacuum__core-tabs { grid-template-columns:repeat(4,minmax(0,1fr)); }\n    .monster-vacuum__core-tabs button { border-bottom:0; }\n    .monster-vacuum__core-tabs button:nth-child(2n) { border-right:1px solid var(--mv-line); }\n    .monster-vacuum__core-tabs button:last-child { border-right:0; }\n    .monster-vacuum__core-display { grid-template-columns:.86fr 1.14fr; }\n    .monster-vacuum__engineering-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }\n    .monster-vacuum__scenario-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }\n    .monster-vacuum__scenario-card--wide { grid-column:span 2; min-height:41rem; }\n    .monster-vacuum__package-grid { grid-template-columns:1.12fr .88fr; }\n    .monster-vacuum__spec-panel { grid-template-columns:1fr 1fr; align-items:center; }\n    .monster-vacuum__final-card { grid-template-columns:1fr auto; }\n  }\n\n  @media (min-width:980px) {\n    .monster-vacuum__hero-grid,\n    .monster-vacuum__intro-grid,\n    .monster-vacuum__modes-grid,\n    .monster-vacuum__battery-grid,\n    .monster-vacuum__clean-grid { grid-template-columns:1.02fr .98fr; }\n    .monster-vacuum__hero-grid { min-height:47rem; }\n    .monster-vacuum__scenario-grid { grid-template-columns:1.15fr .85fr .85fr; }\n    .monster-vacuum__scenario-card--wide { grid-column:span 2; grid-row:span 2; min-height:54rem; }\n    .monster-vacuum__scenario-card { min-height:26.5rem; }\n    .monster-vacuum__scenario-card:nth-child(4),\n    .monster-vacuum__scenario-card:nth-child(5) { min-height:31rem; }\n  }\n\n  @media (max-width:759px) {\n    .monster-vacuum { font-size:15px; }\n    .monster-vacuum__shell { width:min(100% - 24px,1180px); }\n    .monster-vacuum__section { padding:4.5rem 0; }\n    .monster-vacuum__hero { min-height:auto; padding-top:4.5rem; }\n    .monster-vacuum__hero h1 strong { font-size:clamp(4rem,24vw,6.6rem); }\n    .monster-vacuum__hero-actions { display:grid; }\n    .monster-vacuum__button { width:100%; }\n    .monster-vacuum__hero-visual { min-height:35rem; }\n    .monster-vacuum__hero-frame { width:min(86vw,26rem); }\n    .monster-vacuum__orbit--one { width:26rem; height:26rem; }\n    .monster-vacuum__orbit--two { width:21rem; height:21rem; }\n    .monster-vacuum__chip { min-width:8.2rem; padding:.65rem .75rem; }\n    .monster-vacuum__chip--top { right:0; }\n    .monster-vacuum__chip--bottom { left:0; }\n    .monster-vacuum__core-display { min-height:auto; }\n    .monster-vacuum__core-media { min-height:30rem; }\n    .monster-vacuum__mode-buttons { grid-template-columns:1fr; }\n    .monster-vacuum__scenario-grid { grid-auto-flow:column; grid-auto-columns:84%; overflow-x:auto; padding-bottom:.6rem; scroll-snap-type:x mandatory; }\n    .monster-vacuum__scenario-card,\n    .monster-vacuum__scenario-card--wide { min-height:36rem; scroll-snap-align:start; }\n    .monster-vacuum__battery-images { gap:.5rem; }\n    .monster-vacuum__filter-chip { right:.4rem; bottom:.8rem; }\n    .monster-vacuum__package-content ol { grid-template-columns:1fr; }\n    .monster-vacuum__final { padding-bottom:7rem; }\n  }\n\n  @media (prefers-reduced-motion:reduce) {\n    .monster-vacuum *,\n    .monster-vacuum *::before,\n    .monster-vacuum *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important; }\n    .monster-reveal { opacity:1; transform:none; }\n  }\n\n  \/* Simplified MONSTER presentation: no decorative microcopy or redundant badges. *\/\n  .monster-vacuum__hero-copy { padding-top:0; }\n  .monster-vacuum__hero h1 { margin-top:0; }\n  .monster-vacuum__core-tabs small { font-size:.9rem; line-height:1.35; }\n  .monster-vacuum__mode-buttons button { text-align:center; padding:1.05rem .75rem; }\n  .monster-vacuum__mode-buttons b { font-size:1.3rem; }\n  .monster-vacuum__final { padding-top:clamp(4rem,8vw,7rem); padding-bottom:clamp(4rem,8vw,7rem); }\n  .monster-vacuum__final-card { min-height:20rem; }\n  .monster-vacuum__final-card h2 { margin-top:0; }\n\n\u003c\/style\u003e\n\n\u003cscript\u003e\n(() =\u003e {\n  'use strict';\n  document.querySelectorAll('[data-monster-root]').forEach((root) =\u003e {\n    if (root.dataset.monsterReady === 'true') return;\n    root.dataset.monsterReady = 'true';\n\n    const reduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n    const coreData = {\n      suction: {\n        label:'SUCTION SYSTEM \/ 01',\n        title:'20kPa Powerful Suction',\n        description:'Pull visible dust, crumbs, hair, and fine debris from fabric surfaces and hard-to-reach spaces.',\n        points:['Designed for car interiors, upholstery, mattresses, and desks','Focused pickup for fine debris and everyday mess','Pairs with crevice and upholstery attachments'],\n        image:'https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/04_powerful_suction.png?v=1783324895',\n        alt:'20kPa suction cleaning dust and fine debris from fabric',\n        meter:72\n      },\n      motor: {\n        label:'BRUSHLESS MOTOR \/ 02',\n        title:'120,000 RPM High-Speed Motor',\n        description:'A high-performance brushless motor creates strong suction and high-velocity airflow in a compact body.',\n        points:['Higher efficiency than a conventional brushed design','Designed for lower energy use and reduced noise','Powers both suction and concentrated airflow'],\n        image:'https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/03_brushless_motor.png?v=1783324894',\n        alt:'120,000 RPM brushless motor exploded view',\n        meter:94\n      },\n      battery: {\n        label:'CORDLESS POWER \/ 03',\n        title:'6000mAh Battery System',\n        description:'The 2000mAh × 3 battery system provides up to 40 minutes of cordless runtime and up to 90 days of standby.',\n        points:['Up to 40 minutes runtime depending on mode','Approximately 4 hours charging time','USB-C charging at home or in the car'],\n        image:'https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/12_battery_runtime.png?v=1783324894',\n        alt:'6000mAh battery system with up to 40 minutes runtime',\n        meter:82\n      },\n      filter: {\n        label:'FILTRATION SYSTEM \/ 04',\n        title:'High-Efficiency Fine Filtration',\n        description:'The HEPA-style filter captures fine dust and helps reduce secondary dust release from the outgoing air.',\n        points:['Greater than 99.5% overall filtration efficiency','Secure push-lock dust cup design','Removable filter core for easier maintenance'],\n        image:'https:\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/14_hepa_filtration.png?v=1783324894',\n        alt:'High-efficiency HEPA filtration and push-lock dust cup',\n        meter:88\n      }\n    };\n\n    const coreTabs = Array.from(root.querySelectorAll('[data-core-key]'));\n    const coreMedia = root.querySelector('.monster-vacuum__core-media');\n    const coreImage = root.querySelector('[data-core-image]');\n    const coreLabel = root.querySelector('[data-core-label]');\n    const coreTitle = root.querySelector('[data-core-title]');\n    const coreDescription = root.querySelector('[data-core-description]');\n    const corePoints = root.querySelector('[data-core-points]');\n    const coreMeter = root.querySelector('[data-core-meter]');\n\n    const selectCore = (button, focus = false) =\u003e {\n      const data = coreData[button.dataset.coreKey];\n      if (!data || !coreImage) return;\n      coreTabs.forEach((item) =\u003e {\n        const selected = item === button;\n        item.setAttribute('aria-selected', String(selected));\n        item.tabIndex = selected ? 0 : -1;\n      });\n      coreMedia?.classList.add('is-changing');\n      window.setTimeout(() =\u003e {\n        if (coreLabel) coreLabel.textContent = data.label;\n        if (coreTitle) coreTitle.textContent = data.title;\n        if (coreDescription) coreDescription.textContent = data.description;\n        if (corePoints) corePoints.innerHTML = data.points.map((point) =\u003e `\u003cli\u003e${point}\u003c\/li\u003e`).join('');\n        coreImage.src = data.image;\n        coreImage.alt = data.alt;\n        if (coreMeter) coreMeter.style.width = `${data.meter}%`;\n        coreMedia?.classList.remove('is-changing');\n      }, reduced ? 0 : 160);\n      if (focus) button.focus();\n    };\n\n    coreTabs.forEach((button, index) =\u003e {\n      button.addEventListener('click', () =\u003e selectCore(button));\n      button.addEventListener('keydown', (event) =\u003e {\n        if (!['ArrowLeft','ArrowRight','Home','End'].includes(event.key)) return;\n        event.preventDefault();\n        let next = index;\n        if (event.key === 'ArrowRight') next = (index + 1) % coreTabs.length;\n        if (event.key === 'ArrowLeft') next = (index - 1 + coreTabs.length) % coreTabs.length;\n        if (event.key === 'Home') next = 0;\n        if (event.key === 'End') next = coreTabs.length - 1;\n        selectCore(coreTabs[next], true);\n      });\n    });\n\n    const modeData = {\n      eco: { text:'ECO reduces output for lighter dust and energy-saving cleanup.', meter:34 },\n      min: { text:'MIN delivers balanced performance for routine car, desk, and upholstery cleaning.', meter:62 },\n      max: { text:'MAX provides the strongest output for tougher debris and concentrated cleaning.', meter:92 }\n    };\n    const modeButtons = root.querySelectorAll('[data-power]');\n    const modeDescription = root.querySelector('[data-mode-description]');\n    const modeRing = root.querySelector('.monster-vacuum__mode-ring');\n    modeButtons.forEach((button) =\u003e button.addEventListener('click', () =\u003e {\n      const data = modeData[button.dataset.power];\n      if (!data) return;\n      modeButtons.forEach((item) =\u003e item.classList.toggle('is-active', item === button));\n      if (modeDescription) modeDescription.textContent = data.text;\n      if (modeRing) modeRing.style.background = `conic-gradient(var(--mv-purple) 0 ${data.meter}%, #dfe5ef ${data.meter}%)`;\n    }));\n\n    const specsButton = root.querySelector('[data-monster-specs]');\n    const specsSection = root.querySelector('[data-monster-core]');\n    specsButton?.addEventListener('click', () =\u003e {\n      specsSection?.scrollIntoView({ behavior: reduced ? 'auto' : 'smooth', block:'start' });\n    });\n\n    \/\/ Both purchase buttons return to the top of the Shopify product page.\n    root.querySelectorAll('[data-monster-buy]').forEach((button) =\u003e button.addEventListener('click', (event) =\u003e {\n      event.preventDefault();\n      window.scrollTo({ top:0, left:0, behavior:reduced ? 'auto' : 'smooth' });\n      document.documentElement.scrollTop = 0;\n      document.body.scrollTop = 0;\n    }));\n\n    const toggle = root.querySelector('[data-spec-toggle]');\n    const panel = root.querySelector('[data-spec-panel]');\n    toggle?.addEventListener('click', () =\u003e {\n      const expanded = toggle.getAttribute('aria-expanded') === 'true';\n      toggle.setAttribute('aria-expanded', String(!expanded));\n      if (panel) panel.hidden = expanded;\n      if (!expanded) panel?.scrollIntoView({ behavior:reduced ? 'auto' : 'smooth', block:'nearest' });\n    });\n\n    const reveals = root.querySelectorAll('.monster-reveal');\n    if ('IntersectionObserver' in window \u0026\u0026 !reduced) {\n      const observer = new IntersectionObserver((entries) =\u003e {\n        entries.forEach((entry) =\u003e {\n          if (!entry.isIntersecting) return;\n          entry.target.classList.add('is-visible');\n          observer.unobserve(entry.target);\n        });\n      }, { threshold:.12, rootMargin:'0px 0px -5% 0px' });\n      reveals.forEach((item) =\u003e observer.observe(item));\n    } else {\n      reveals.forEach((item) =\u003e item.classList.add('is-visible'));\n    }\n\n    const counters = root.querySelectorAll('[data-count]');\n    const animateCounter = (node) =\u003e {\n      const target = Number(node.dataset.count || 0);\n      if (!target || reduced) return;\n      const start = performance.now();\n      const formatter = new Intl.NumberFormat('en-US');\n      const tick = (now) =\u003e {\n        const progress = Math.min((now - start) \/ 1050, 1);\n        const eased = 1 - Math.pow(1 - progress, 3);\n        node.textContent = formatter.format(Math.round(target * eased));\n        if (progress \u003c 1) requestAnimationFrame(tick);\n      };\n      requestAnimationFrame(tick);\n    };\n    if ('IntersectionObserver' in window \u0026\u0026 !reduced) {\n      const counterObserver = new IntersectionObserver((entries) =\u003e {\n        entries.forEach((entry) =\u003e {\n          if (!entry.isIntersecting) return;\n          animateCounter(entry.target);\n          counterObserver.unobserve(entry.target);\n        });\n      }, { threshold:.7 });\n      counters.forEach((counter) =\u003e { counter.textContent = '0'; counterObserver.observe(counter); });\n    }\n\n    const progress = root.querySelector('[data-monster-progress]');\n    const updateProgress = () =\u003e {\n      if (!progress) return;\n      const rect = root.getBoundingClientRect();\n      const total = Math.max(root.offsetHeight - window.innerHeight, 1);\n      const travelled = Math.min(Math.max(-rect.top, 0), total);\n      progress.style.width = `${(travelled \/ total) * 100}%`;\n    };\n    updateProgress();\n    window.addEventListener('scroll', updateProgress, { passive:true });\n    window.addEventListener('resize', updateProgress, { passive:true });\n\n    const tiltArea = root.querySelector('[data-monster-tilt]');\n    const heroFrame = root.querySelector('.monster-vacuum__hero-frame');\n    if (tiltArea \u0026\u0026 heroFrame \u0026\u0026 !reduced \u0026\u0026 window.matchMedia('(pointer:fine)').matches) {\n      tiltArea.addEventListener('pointermove', (event) =\u003e {\n        const rect = tiltArea.getBoundingClientRect();\n        const x = (event.clientX - rect.left) \/ rect.width - .5;\n        const y = (event.clientY - rect.top) \/ rect.height - .5;\n        heroFrame.style.transform = `rotateY(${x * 10}deg) rotateX(${-y * 8}deg) translateZ(8px)`;\n      });\n      tiltArea.addEventListener('pointerleave', () =\u003e {\n        heroFrame.style.transform = 'rotateY(-5deg) rotateX(2deg)';\n      });\n    }\n  });\n})();\n\u003c\/script\u003e\n\n\n\n\u003c\/body\u003e","brand":"mysite","offers":[{"title":"Kit standard + 3 cartouches filtrantes + sac","offer_id":52280613568814,"sku":"SZ04622607063760-X6Max+HEPA滤芯*3+航空包","price":74.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0988\/2848\/4910\/files\/ChatGPT_Image_2026_7_6_05_04_16.png?v=1783328672","url":"https:\/\/cotitoc.com\/fr\/products\/monster-vacuum","provider":"cotitoc","version":"1.0","type":"link"}