{"title":"Used Ducati 1200 Diavel Parts","description":"\u003cp\u003eGenuine used parts for the Ducati 1200 Diavel, removed from real bikes and photographed individually. Condition graded, exact-item photos, fast UK delivery. One-off stock — when a part sells it's gone, but new 1200 Diavel parts are added as bikes come in.\u003c\/p\u003e","products":[{"product_id":"ducati-1200-diavel-2011-2014-seat-lock-latch-genuine-oem","title":"Seat Lock Latch Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eSeat Lock Latch\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881513292101,"sku":"M1C-3","price":12.14,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstcibgh00ke04jvji0bk1g8.png?v=1786737805"},{"product_id":"ducati-1200-diavel-2011-2014-rh-side-radiator-cover-fairing-genuine-oem","title":"RH Side Radiator Cover Fairing  Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRH Side Radiator Cover Fairing\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e78014941A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881514504517,"sku":"M1C-1","price":72.89,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstcibsu00kh04jvar0vgpj9.jpg?v=1786737826"},{"product_id":"ducati-1200-diavel-2011-2014-chain-guard-genuine-oem","title":"Chain Guard Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eChain Guard\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881514537285,"sku":"M2C-5","price":10.52,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstcib1u00k904jvamsbslta.jpg?v=1786737826"},{"product_id":"ducati-1200-diavel-2011-2014-rear-cylinder-head-genuine-oem","title":"Rear Cylinder Head Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRear Cylinder Head\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881677033797,"sku":"U2-C","price":161.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstejo7q00me04l4wvhx5h61.jpg?v=1786740988"},{"product_id":"ducati-1200-diavel-2011-2014-crankshaft-crank-position-sensor-multistrada","title":"Crankshaft Crank Position Sensor Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCrankshaft Crank Position Sensor (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881900740933,"sku":"U2-E1","price":24.29,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstejjpo00hr04l45spr2tsa.jpg?v=1786745870"},{"product_id":"ducati-1200-diavel-2011-2014-connecting-rods-conrod-multistrada-genuine-oem","title":"Connecting Rods Conrod Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eConnecting Rods Conrod (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881914896709,"sku":"U2-E1","price":145.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstej1mr006w04l4yx3s7yfe.jpg?v=1786745995"},{"product_id":"ducati-1200-diavel-2011-2014-oil-pump-multistrada-genuine-oem","title":"Oil Pump Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eOil Pump (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881918304581,"sku":"U2-E1","price":24.29,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteix80002p04l4u2iunhw1.jpg?v=1786746150"},{"product_id":"ducati-1200-diavel-2011-2014-complete-gearbox-multistrada-genuine-oem","title":"Complete Gearbox Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eComplete Gearbox (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881920958789,"sku":"U2-E1","price":202.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteirht00du04jr4e515qk7.jpg?v=1786746236"},{"product_id":"ducati-1200-diavel-2011-2014-starter-motor-multistrada-genuine-oem","title":"Starter Motor Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eStarter Motor (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881925153093,"sku":"U2-E1","price":56.69,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteimzz00a704jrrzbsk8cw.jpg?v=1786746290"},{"product_id":"ducati-1200-diavel-2011-2014-engine-stator-cover-waterpump-multistrada","title":"Engine Stator Cover Waterpump Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eEngine Stator Cover Waterpump (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881928069445,"sku":"U2-E1","price":80.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteiiar007c04jr4hj4teuo.jpg?v=1786746353"},{"product_id":"ducati-1200-diavel-2011-2014-magneto-flywheel-starter-clutch-multistrada","title":"Magneto Flywheel Starter Clutch Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eMagneto Flywheel Starter Clutch (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881928200517,"sku":"U2-E1","price":121.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteih6w006w04jrntd232qe.jpg?v=1786746356"},{"product_id":"ducati-1200-diavel-2011-2014-stator-generator-multistrada-genuine-oem","title":"Stator Generator Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eStator Generator (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881929052485,"sku":"U2-E1","price":64.79,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteih75007004jr9l6p7ixz.jpg?v=1786746363"},{"product_id":"ducati-1200-diavel-2011-2014-starter-idle-gear-multistrada-genuine-oem","title":"Starter Idle Gear Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eStarter Idle Gear (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881929085253,"sku":"U2-E1","price":12.14,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteih31006o04jrgdn60st3.jpg?v=1786746366"},{"product_id":"ducati-1200-diavel-2011-2014-engine-clutch-cover-multistrada-genuine-oem","title":"Engine Clutch Cover Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eEngine Clutch Cover (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881931804997,"sku":"U2-E1","price":32.39,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteicrq002y04jr66881xxz.jpg?v=1786746395"},{"product_id":"ducati-1200-diavel-2011-2014-timing-belt-cover-set-multistrada-genuine-oem","title":"Timing Belt Cover  Set Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eTiming Belt Cover Set (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881932198213,"sku":"U2-E1","price":40.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteid00003704jr6q6127i8.jpg?v=1786746408"},{"product_id":"ducati-1200-diavel-2011-2014-headlight-cowl-genuine-oem-52010201a","title":"Headlight \u0026 Cowl Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eHeadlight \u0026amp; Cowl\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e52010201A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881950089541,"sku":"2B-6","price":292.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstehfds00cq04kyg566qlga.png?v=1786746857"},{"product_id":"ducati-1200-diavel-2011-2014-top-yoke-risers-genuine-oem-36031261a","title":"Top Yoke \u0026 Risers Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eTop Yoke \u0026amp; Risers\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e36031261A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881950253381,"sku":"2B-8","price":89.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstehf7f00ch04ky3wbkz2op.png?v=1786746864"},{"product_id":"ducati-1200-diavel-2011-2014-carbon-front-mudguard-fender-genuine-oem","title":"Carbon Front Mudguard Fender Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCarbon Front Mudguard Fender\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e56420931A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/li\u003e\n\u003cli\u003eThe fender has a visible crack on one side, but it does not extend through to the opposite side.\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881952514373,"sku":"M1C-2","price":134.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstehfp200d704kytfqtcwn2.png?v=1786746885"},{"product_id":"ducati-1200-diavel-2011-2014-bar-end-weights-genuine-oem","title":"Bar End Weights Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eBar End Weights\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881954545989,"sku":"M1C-3","price":8.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstehe1o00br04ky4y7od314.png?v=1786746905"},{"product_id":"ducati-1200-diavel-2011-2014-rear-right-foot-peg-footrest-genuine-oem","title":"Rear Right Foot Peg Footrest Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRear Right Foot Peg Footrest\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881954775365,"sku":"M1C-3","price":40.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh86t006v04kyh5q5svkw.png?v=1786746915"},{"product_id":"ducati-1200-diavel-2011-2014-front-left-foot-hanger-peg-gear-lever","title":"Front Left Foot Hanger Peg Gear Lever Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eFront Left Foot Hanger Peg Gear Lever\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e46430631B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition, scratched\/marked as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881956479301,"sku":"M1C-3","price":71.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh949008e04kyiakli4b1.png?v=1786746940"},{"product_id":"ducati-1200-diavel-2011-2014-brembo-front-brake-calipers-genuine-oem","title":"BREMBO Front Brake Calipers Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eBREMBO Front Brake Calipers\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881956708677,"sku":"M1C-3","price":224.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh9e9009c04ky7ssmgzk7.png?v=1786746950"},{"product_id":"ducati-1200-diavel-2011-2014-carbon-right-tank-fairing-panel-cover","title":"Carbon Right Tank Fairing Panel Cover Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCarbon Right Tank Fairing Panel Cover\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e48013281A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used condition, scratched as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881957495109,"sku":"M1C-2","price":161.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh8fy007b04kygq5kkws7.png?v=1786746994"},{"product_id":"ducati-1200-diavel-2011-2014-right-radiator-fan-genuine-oem-54840861b","title":"Right Radiator + Fan Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRight Radiator + Fan\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e54840861B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881958314309,"sku":"3H","price":125.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh2b5003l04kyatn01ei3.jpg?v=1786747083"},{"product_id":"ducati-1200-diavel-2011-2014-left-radiator-genuine-oem-54840891b","title":"Left Radiator Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eLeft Radiator\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e54840891B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881958478149,"sku":"3H","price":116.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh1js002k04kym07g0bak.jpg?v=1786747104"},{"product_id":"ducati-1200-diavel-2011-2014-lock-set-2-keys-ecu-genuine-oem","title":"Lock Set 2 Keys ECU Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eLock Set 2 Keys ECU\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881958969669,"sku":"1C-3","price":1007.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteh4eo004904kym732p09y.png?v=1786747125"},{"product_id":"ducati-1200-diavel-2011-2014-rear-left-foot-peg-footrest-genuine-oem","title":"Rear Left Foot Peg Footrest Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRear Left Foot Peg Footrest\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881960575301,"sku":"M1C-3","price":40.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegu0x007e04l4nm4s7io9.png?v=1786747146"},{"product_id":"ducati-1200-diavel-2011-2014-voltage-regulator-rectifier-genuine-oem","title":"Voltage Regulator Rectifier Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eVoltage Regulator Rectifier\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eFH012CA\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881960673605,"sku":"M1C-3","price":44.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegt40006504l4iyqix8w5.jpg?v=1786747151"},{"product_id":"ducati-1200-diavel-2011-2014-bottom-yoke-genuine-oem","title":"Bottom Yoke Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eBottom Yoke\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881960902981,"sku":"M1C-3","price":125.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegtd1006k04l4feffm1x8.png?v=1786747163"},{"product_id":"ducati-1200-diavel-2011-2014-carbon-tank-cover-genuine-oem-48013271a","title":"Carbon Tank Cover Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCarbon Tank Cover\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e48013271A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used good condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881960968517,"sku":"M6A","price":314.1,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegvqe007y04l4iiw68n5v.png?v=1786747173"},{"product_id":"ducati-1200-diavel-2011-2014-front-ignition-coil-genuine-oem-38010145b","title":"Front Ignition Coil Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eFront Ignition Coil\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e38010145B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881961099589,"sku":"M1C-3","price":44.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegt12005y04l4h70j5fv6.png?v=1786747183"},{"product_id":"ducati-1200-diavel-2011-2014-oxford-heated-grips-genuine-oem","title":"Oxford Heated Grips Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eOxford Heated Grips\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881961689413,"sku":"M1C-3","price":44.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegoy4002h04l4rw7p3jqo.png?v=1786747194"},{"product_id":"ducati-1200-diavel-2011-2014-carbon-rear-fender-mudguard-genuine-oem","title":"Carbon Rear Fender Mudguard Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCarbon Rear Fender Mudguard\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e96902310A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, has some marks and minor defects\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881961820485,"sku":"M1B-7","price":116.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegq58003r04l4bhmyfv3q.png?v=1786747196"},{"product_id":"ducati-1200-diavel-2011-2014-rear-ignition-coil-genuine-oem-38010145b","title":"Rear Ignition Coil Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRear Ignition Coil\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e38010145B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58881962672453,"sku":"M1C-3","price":44.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstegoa1001r04l465r6eh83.png?v=1786747207"},{"product_id":"ducati-1200-diavel-2011-2014-complete-clutch-basket-assembly-multistrada","title":"Complete Clutch Basket Assembly Ducati 1200 Diavel 2011 (Multistrada)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eComplete Clutch Basket Assembly (Multistrada)\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e\u003cul\u003e\n\u003cli\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/li\u003e\n\u003cli\u003eCame from low -17k miles good running engine\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882024210757,"sku":"U2-D","price":116.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmsteadqm00hh04jl9dsxvb2u.jpg?v=1786749234"},{"product_id":"ducati-1200-diavel-2011-2014-carbon-left-tank-fairing-panel-cover-genuine","title":"Carbon Left Tank Fairing Panel Cover Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eCarbon Left Tank Fairing Panel Cover\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e48013291A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882030338373,"sku":"M1C-2","price":161.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmste16m2016404l1uamsavup.png?v=1786749605"},{"product_id":"ducati-1200-diavel-2011-2014-battery-tray-bracket-genuine-oem","title":"Battery Tray Bracket Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eBattery Tray Bracket\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882030371141,"sku":"M1B-7","price":53.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmste16hp015w04l120b4sva3.png?v=1786749605"},{"product_id":"ducati-1200-diavel-2011-2014-front-right-indicator-genuine-oem","title":"Front Right Indicator Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eFront Right Indicator\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures, with expected wear and tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882032468293,"sku":"M1C-3","price":40.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmste10z9010v04l1h10tr8ao.png?v=1786749625"},{"product_id":"ducati-1200-diavel-2011-2014-wiring-loom-harness-genuine-oem-51017341b","title":"Wiring Loom Harness Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eWiring Loom Harness\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e51017341B\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882032501061,"sku":"M1C-3","price":85.49,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmste109g010804l1gbr7icv1.png?v=1786749625"},{"product_id":"ducati-1200-diavel-2011-2014-left-lh-radiator-fan-genuine-oem","title":"Left LH Radiator Fan Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eLeft Radiator Fan\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58882035384645,"sku":"M1C-3","price":17.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmste103100zy04l10e13x23v.jpg?v=1786749652"},{"product_id":"exhaust-valve-servo-motor-ducati-1200-diavel-2011-2011-2014","title":"Exhaust Valve Servo Motor Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eExhaust Valve Servo Motor\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e59340391A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886301942085,"sku":"M1C-3","price":16.19,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdyzn100ex04jvkwtffafg.png?v=1786787846"},{"product_id":"engine-bolts-brackets-ducati-1200-diavel-2011-2011-2014","title":"Engine Bolts \u0026 Brackets Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eEngine Bolts \u0026amp; Brackets\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886355222853,"sku":"M2C-5","price":12.14,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdy1s7002304jrwnvc56su.png?v=1786788323"},{"product_id":"starter-relay-ducati-1200-diavel-2011-2011-2014","title":"Starter Relay Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eStarter Relay\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886357025093,"sku":"M2C-5","price":12.14,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdu5mi02et04jm252fa30p.jpg?v=1786788351"},{"product_id":"radiator-brackets-ducati-1200-diavel-2011-2011-2014","title":"Radiator Brackets Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eRadiator Brackets\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e83026101A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886357090629,"sku":"M2C-5","price":10.52,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdu5l602er04jmpn1t5vq7.jpg?v=1786788357"},{"product_id":"vent-hoses-ducati-1200-diavel-2011-2011-2014","title":"Vent Hoses Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eVent Hoses\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886365249861,"sku":"M2C-5","price":8.09,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdtywv02a704jmcm5vc90r.jpg?v=1786788502"},{"product_id":"bottom-yoke-frame-cover-ducati-1200-diavel-2011-2011-2014","title":"Bottom Yoke \/ Frame Cover Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eBottom Yoke \/ Frame Cover\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e83026101A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886365446469,"sku":"M2C-5","price":16.19,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdtzq402aq04jmhq8uch1v.jpg?v=1786788513"},{"product_id":"water-pump-cover-ducati-1200-diavel-2011-2011-2014","title":"Water Pump Cover Ducati 1200 Diavel 2011 (2011 - 2014)","description":"\u003c!--\n  RRMoto — WEBSITE description template.\n\n  This file is the VERSION-CONTROLLED SOURCE. The live copy is the\n  description_template column on the \"default-website-template\" row in\n  listing_templates (edited in the admin at Settings → Listing templates).\n  Install it with:  npx tsx scripts\/set-website-description-template.mts --apply\n\n  It renders the SAME spec block as the redesigned product page section\n  (shopify-theme\/sections\/rrmoto-product.liquid), matched value for value —\n  paper ground, 9px mono labels on a 110px column, 12.5px Archivo values,\n  hairline rules, and the red-edged compatibility notice. Two differences are\n  deliberate: this is self-contained (it lands in Shopify's body_html, outside\n  the theme, so it cannot use the theme's CSS variables and hardcodes the\n  literals), and every selector is scoped under .rrd so it can never leak into\n  the theme.\n\n  Rows are in the SAME ORDER the product page renders them, so the two read\n  as one thing: PART, PART NO., CONDITION, REMOVED FROM, FITMENT, ALSO FITS,\n  WEIGHT, MADE IN.\n\n  Empty variables drop their whole row — no orphan labels, no empty rules.\n--\u003e\n\u003cdiv class=\"rrd\"\u003e\n  \u003cdiv class=\"rrd__head\"\u003e\n    \u003cspan class=\"rrd__cond\"\u003eCondition: \u003cb\u003eUsed\u003c\/b\u003e\u003c\/span\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"rrd__specs\"\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eWater Pump Cover\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003ePART NO.\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e24733642A\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eCONDITION\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eIn used working condition as shown in the pictures with expected wear \u0026amp; tear\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eREMOVED FROM\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eDucati 1200 Diavel\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eFITMENT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e2011-2014\u003c\/span\u003e\n\u003c\/div\u003e\n    \n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eWEIGHT\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003e1.0 kg\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"rrd__spec\"\u003e\n\u003cspan class=\"rrd__k\"\u003eMADE IN\u003c\/span\u003e\u003cspan class=\"rrd__v\"\u003eItaly\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"rrd__warn\"\u003e\u003cb\u003eCheck compatibility before purchasing\u003c\/b\u003e — the photographs form a critical part of the item description.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .rrd, .rrd * { box-sizing: border-box; }\n  .rrd {\n    background: #F4F2EE;\n    color: #111;\n    font-family: Archivo, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n    \/* No padding by default: on the product page this sits inside the buy\n       column, which already carries the page inset, and an extra inset here\n       would indent the rows away from the price and buttons above them.\n       Standalone surfaces (the admin preview, Shopify's admin, a feed) add\n       their own — see .rrd--boxed below. *\/\n    padding: 0;\n    margin: 0;\n    \/* The product page renders this inside its buy column, which measures\n       523px at a 1440 viewport. Capping here keeps the block the same width\n       wherever else it is shown — the admin preview, Shopify's own admin, a\n       feed — instead of stretching to the full width of its container and\n       looking like a different design. *\/\n    max-width: 540px;\n  }\n\n  \/* NO brand lockup here by design: on the website this block sits inside a\n     page that already carries the RRMoto header, so a second logo is just\n     repetition. The eBay template keeps its lockup because that description\n     stands alone with no site around it. *\/\n  .rrd__head {\n    display: flex; justify-content: flex-end;\n    padding-bottom: 14px; border-bottom: 2px solid #111;\n  }\n  .rrd__cond {\n    font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace;\n    letter-spacing: .1em; text-transform: uppercase; color: #fff;\n    background: #0A0A0B; padding: 5px 10px;\n  }\n  .rrd__cond b { color: #FF3B30; font-weight: 600; }\n\n  \/* Spec rows — matched to the product section's .rr-pd__spec \/ __k \/ __vv. *\/\n  .rrd__specs { display: flex; flex-direction: column; margin-top: 4px; }\n  .rrd__spec { display: flex; align-items: baseline; gap: 10px; padding: 9px 0; border-bottom: 1px solid #E4E1DA; }\n  .rrd__spec:last-child { border-bottom: 0; }\n  .rrd__k { font: 600 9px \"IBM Plex Mono\", ui-monospace, Menlo, Consolas, monospace; letter-spacing: .08em; color: #888; width: 110px; flex: none; }\n  .rrd__v { font: 600 12.5px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #111; min-width: 0; }\n\n  .rrd__warn {\n    background: #FBEAE9; border-left: 3px solid #E10600;\n    padding: 13px 15px; margin: 20px 0 0;\n    font: 400 12px\/1.5 Archivo, Helvetica, Arial, sans-serif; color: #7A1512;\n  }\n  .rrd__warn b { font-weight: 700; }\n\n  \/* Standalone: anywhere this is shown OUTSIDE the product page it needs its\n     own frame — the admin preview, Shopify's admin, a feed. *\/\n  .rrd--boxed { padding: 20px 22px 22px; background: #F4F2EE; }\n\n  @media (max-width: 600px) {\n    .rrd--boxed { padding: 16px; }\n    \/* The 110px label column leaves too little for the value on a phone, so\n       the row stacks rather than squeezing. *\/\n    .rrd__spec { flex-direction: column; gap: 3px; }\n    .rrd__k { width: auto; }\n  }\n\u003c\/style\u003e","brand":"Ducati","offers":[{"title":"Default Title","offer_id":58886379635013,"sku":"2A-2","price":40.5,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1074\/4558\/4197\/files\/cmstdtkt801xa04jm38e5hhq4.png?v=1786788760"}],"url":"https:\/\/rrmoto.co.uk\/collections\/used-ducati-1200-diavel-parts.oembed","provider":"RRMoto","version":"1.0","type":"link"}