{"product_id":"applicable-to-bmw-welcome-lights-door-projector-lights-modified-floor-decorative-lights","title":"Projecteur de bienvenue pour portière BMW – Projection LED du logo au sol","description":"\u003c!--cc-save-badge--\u003e\n\u003cstyle\u003e\n.cc-save-badge{display:inline-block;margin-left:10px;padding:3px 10px;border-radius:20px;background:#d21f1f;color:#fff;font-size:13px;font-weight:800;letter-spacing:.03em;vertical-align:middle;line-height:1.6;}\n.cc-save-note{flex-basis:100%;width:100%;margin-top:4px;font-size:13px;font-weight:600;color:#1e7d32;}\n\u003c\/style\u003e\n\u003cscript\u003e\n(function(){\n  var V=null;\n  function handle(){var m=location.pathname.match(\/\\\/products\\\/([^\\\/?#]+)\/);return m?m[1]:null;}\n  function load(){\n    if(V){return Promise.resolve(V);}\n    var h=handle(); if(!h){return Promise.reject();}\n    return fetch('\/products\/'+h+'.js').then(function(r){return r.json();}).then(function(p){V={};p.variants.forEach(function(v){V[String(v.id)]=v;});return V;});\n  }\n  function currentId(){\n    var el=document.querySelector('form[action*=\"\/cart\/add\"] [name=\"id\"]');\n    if(el \u0026\u0026 el.value){return String(el.value);}\n    var m=location.search.match(\/variant=(\\d+)\/); return m?m[1]:null;\n  }\n  function sep(c,p,t,d){var s=(c\/100).toFixed(p).split('.');return s[0].replace(\/(\\d)(?=(\\d{3})+$)\/g,'$1'+t)+(s[1]?d+s[1]:'');}\n  function money(c){\n    var p=(c%100===0)?0:2,f='';\n    try{f=String(window.themeGlobalVariables.settings.money_format||'');}catch(e){}\n    if(f.indexOf('{'+'{')\u003e-1){\n      var x=document.createElement('textarea');x.innerHTML=f.replace(\/\u003c[^\u003e]*\u003e\/g,'');f=x.value;\n      var k=(f.match(\/\\{\\{\\s*(\\w+)\\s*\\}\\}\/)||[])[1]||'amount',v;\n      if(k.indexOf('no_decimals')\u003e-1){p=0;}\n      if(k.indexOf('comma_separator')\u003e-1){v=sep(c,p,'.',',');}\n      else if(k.indexOf('apostrophe')\u003e-1){v=sep(c,p,\"'\",'.');}\n      else if(k.indexOf('period_and_space')\u003e-1){v=sep(c,p,' ','.');}\n      else if(k.indexOf('space_separator')\u003e-1){v=sep(c,p,' ',',');}\n      else{v=sep(c,p,',','.');}\n      return f.replace(\/\\{\\{\\s*\\w+\\s*\\}\\}\/,function(){return v;});\n    }\n    try{return new Intl.NumberFormat('en',{style:'currency',currency:window.Shopify.currency.active,minimumFractionDigits:p,maximumFractionDigits:p}).format(c\/100);}catch(e){}\n    return '$'+(c\/100).toFixed(p);\n  }\n  function render(){\n    load().then(function(map){\n      var v=map[currentId()];\n      var box=document.querySelector('.product-detail__price .card-product-price');\n      if(!box){return;}\n      var b=box.querySelector('.cc-save-badge'), n=box.querySelector('.cc-save-note');\n      if(v \u0026\u0026 v.compare_at_price \u0026\u0026 v.compare_at_price\u003ev.price){\n        var pct=Math.round((v.compare_at_price-v.price)*100\/v.compare_at_price);\n        if(!b){b=document.createElement('span');b.className='cc-save-badge';box.appendChild(b);}\n        if(!n){n=document.createElement('div');n.className='cc-save-note';box.appendChild(n);}\n        b.textContent='SAVE '+pct+'%';\n        n.textContent='You save '+money(v.compare_at_price-v.price)+' vs. buying separately';\n        b.style.display='';n.style.display='';\n      } else { if(b){b.style.display='none';} if(n){n.style.display='none';} }\n    }).catch(function(){});\n  }\n  var t=null;\n  function later(){clearTimeout(t);t=setTimeout(render,200);}\n  if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',render);}else{render();}\n  document.addEventListener('change',later,true);\n  try{new MutationObserver(function(m){for(var i=0;i\u003cm.length;i++){var x=m[i].target;if(x.closest \u0026\u0026 (x.closest('.cc-save-badge')||x.closest('.cc-save-note'))){return;}}later();}).observe(document.querySelector('.product-detail__price')||document.body,{childList:true,subtree:true,characterData:true});}catch(x){}\n})();\n\u003c\/script\u003e\n\u003c!--\/cc-save-badge--\u003e\n\u003ch3\u003eProjecteur de lumière de bienvenue pour portière BMW\u003c\/h3\u003e\n\u003cp\u003eAjoutez un effet de bienvenue premium à votre BMW avec ce \u003cstrong\u003eprojecteur LED de logo pour portière\u003c\/strong\u003e. À chaque ouverture de portière, il projette au sol un logo net et lumineux — choisissez entre le logo rond BMW, le logo M, le design M Performance, la marque circuit ou l'emblème du 50e anniversaire.\u003c\/p\u003e\n\u003cp\u003eL'installation est plug-and-play et s'intègre à la zone existante du panneau\/seuil de portière sans couper de fils ni percer. Disponible pour une installation sur 2 ou 4 portières selon votre véhicule et vos préférences.\u003c\/p\u003e\n\u003chr\u003e\n\u003ch3\u003eCaractéristiques principales\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProjection LED nette du logo au sol à l'ouverture de la portière\u003c\/li\u003e\n\u003cli\u003e7 designs de logo au choix\u003c\/li\u003e\n\u003cli\u003eInstallation plug-and-play, sans découpe ni perçage\u003c\/li\u003e\n\u003cli\u003eDisponible pour configurations 2 ou 4 portières\u003c\/li\u003e\n\u003cli\u003eAjoute un effet de lumière de bienvenue premium à toute BMW\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003chr\u003e\n\u003ch3\u003eCaractéristiques\u003c\/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDesigns : logo Angel, logo BMW M, M Performance, logo BMW d'origine, marque circuit M Performance, marque circuit, marque 50e anniversaire\u003c\/li\u003e\n\u003cli\u003eCompatibilité : installation sur 2 ou 4 portières\u003c\/li\u003e\n\u003cli\u003eInstallation : plug-and-play, se raccorde au câblage existant du panneau de portière\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003chr\u003e\n\u003ch3\u003eQuestions fréquentes\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eConvient-il à tous les modèles BMW ?\u003c\/strong\u003e\u003cbr\u003eIl est conçu pour les panneaux de portière BMW dotés du logement d'éclairage de courtoisie standard — vérifiez la compatibilité de l'éclairage de votre portière avant de commander.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eDois-je modifier le câblage de ma voiture ?\u003c\/strong\u003e\u003cbr\u003eNon — l'installation est plug-and-play et remplace l'éclairage de courtoisie existant sans couper ni épisser de fils.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eDois-je choisir 2 ou 4 portières ?\u003c\/strong\u003e\u003cbr\u003eChoisissez 4 portières si votre BMW en compte 4 et que vous voulez l'effet sur toutes ; certains modèles n'acceptent que certaines configurations, vérifiez donc la compatibilité de votre modèle exact avant de commander.\u003c\/p\u003e\n\u003chr\u003e\n\u003cp\u003eUne amélioration simple qui ajoute une touche premium chaque fois que vous ou vos passagers descendez de voiture.\u003c\/p\u003e\n\u003cscript\u003e\n(function(){\n  if (window.__bmwModelYearRequired) return;\n  window.__bmwModelYearRequired = true;\n  function fields(){\n    return Array.prototype.slice.call(document.querySelectorAll('input[name^=\"properties[\"]'))\n      .filter(function(i){ return \/BMW\\s*Model\/i.test(i.name) || \/BMW\\s*Model\/i.test(i.placeholder || ''); });\n  }\n  function mark(){\n    fields().forEach(function(i){\n      if (!i.hasAttribute('required')) {\n        i.setAttribute('required','required');\n        i.setAttribute('data-required-property','true');\n        if (i.placeholder \u0026\u0026 i.placeholder.indexOf('*') === -1) i.placeholder = i.placeholder + ' *';\n      }\n    });\n  }\n  function message(input, show){\n    var box = input.parentNode.querySelector('.bmw-req-msg');\n    if (!box \u0026\u0026 show){\n      box = document.createElement('div');\n      box.className = 'bmw-req-msg';\n      box.style.cssText = 'color:#c41414;font-size:13px;font-weight:600;margin:-8px 0 12px;';\n      box.textContent = 'Please enter your BMW model and production year before adding to cart.';\n      input.parentNode.insertBefore(box, input.nextSibling);\n    }\n    if (box) box.style.display = show ? '' : 'none';\n  }\n  function valid(){\n    var list = fields(), okAll = true, first = null;\n    list.forEach(function(i){\n      var empty = !i.value.trim();\n      message(i, empty);\n      if (empty){ okAll = false; if (!first) first = i; }\n    });\n    if (first){ try { first.focus(); first.scrollIntoView({behavior:'smooth', block:'center'}); } catch(e){} }\n    return okAll;\n  }\n  document.addEventListener('submit', function(e){\n    var f = e.target;\n    if (f \u0026\u0026 (f.action || '').indexOf('\/cart\/add') !== -1 \u0026\u0026 !valid()){\n      e.preventDefault(); e.stopImmediatePropagation();\n    }\n  }, true);\n  document.addEventListener('click', function(e){\n    var b = e.target.closest \u0026\u0026 e.target.closest('[name=\"add\"], .product-form__submit, .shopify-payment-button__button, .btn-checkout-dynamic button');\n    if (b \u0026\u0026 !valid()){ e.preventDefault(); e.stopImmediatePropagation(); }\n  }, true);\n  mark();\n  new MutationObserver(mark).observe(document.documentElement, {childList:true, subtree:true});\n})();\n\u003c\/script\u003e","brand":"Car Conceptor","offers":[{"title":"logo ange \/ 2 portes","offer_id":49094700466398,"sku":"494547895731912908272","price":49.0,"currency_code":"USD","in_stock":true},{"title":"logo ange \/ 4 portes","offer_id":49094700499166,"sku":"494547895731912908273","price":65.0,"currency_code":"USD","in_stock":true},{"title":"logo BMW M \/ 2 portes","offer_id":49094700531934,"sku":"494547895731912908274","price":49.0,"currency_code":"USD","in_stock":true},{"title":"logo BMW M \/ 4 portes","offer_id":49094700564702,"sku":"494547895731912908275","price":65.0,"currency_code":"USD","in_stock":true},{"title":"M Performance \/ 2 portes","offer_id":49094700597470,"sku":"494547895731912908276","price":49.0,"currency_code":"USD","in_stock":true},{"title":"M Performance \/ 4 portes","offer_id":49094700630238,"sku":"494547895731912908277","price":65.0,"currency_code":"USD","in_stock":true},{"title":"logo BMW d'origine \/ 2 portes","offer_id":49094700663006,"sku":"494547895731912908278","price":49.0,"currency_code":"USD","in_stock":true},{"title":"logo BMW d'origine \/ 4 portes","offer_id":49094700695774,"sku":"494547895731912908279","price":65.0,"currency_code":"USD","in_stock":true},{"title":"marque circuit M Performance \/ 2 portes","offer_id":49094700728542,"sku":"494547895731912908280","price":49.0,"currency_code":"USD","in_stock":true},{"title":"marque circuit M Performance \/ 4 portes","offer_id":49094700761310,"sku":"494547895731912908281","price":65.0,"currency_code":"USD","in_stock":true},{"title":"marque circuit \/ 2 portes","offer_id":49094700794078,"sku":"494547895731912908282","price":49.0,"currency_code":"USD","in_stock":true},{"title":"marque circuit \/ 4 portes","offer_id":49094700826846,"sku":"494547895731912908283","price":65.0,"currency_code":"USD","in_stock":true},{"title":"marque 50e anniversaire \/ 2 portes","offer_id":49094700859614,"sku":"494547895731912908284","price":49.0,"currency_code":"USD","in_stock":true},{"title":"marque 50e anniversaire \/ 4 portes","offer_id":49094700892382,"sku":"494547895731912908285","price":65.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0806\/9755\/7214\/files\/Untitled_design_41_a2a0f142-f644-4a7f-9f5f-42886438305c.png?v=1790069108","url":"https:\/\/car-conceptor.com\/fr\/products\/applicable-to-bmw-welcome-lights-door-projector-lights-modified-floor-decorative-lights","provider":"Car Conceptor","version":"1.0","type":"link"}