{"title":"Wiper \u0026 Washer Components","description":"","products":[{"product_id":"tesla-model-y-2020-2024-washer-tank-model-y-2020-2023-1490412-00-b","title":"TESLA MODEL Y 2020-2024 — WASHER TANK; MODEL Y 2020-2023","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Tesla","offers":[{"title":"Default Title","offer_id":48355231498432,"sku":"1490412-00-B","price":73.62,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/1490412-00-B.png?v=1780429340"},{"product_id":"dodge-grand-caravan-2008-2020-washer-tank-w-pump-w-o-headlight-washer-caravan-8-ch1288193","title":"DODGE GRAND CARAVAN 2008-2020 — WASHER TANK; W\/ PUMP; W\/O HEADLIGHT WASHER; CARAVAN 8-19; TOWN \u0026 COUNTRY 08-16","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Dodge","offers":[{"title":"Default Title","offer_id":48355231531200,"sku":"CH1288193","price":105.14,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/CH1288193.png?v=1780429340"},{"product_id":"ford-transit-connect-2014-2023-washer-tank-with-rear-wiper-inlet-bracket-cap-pum-fo1288204","title":"FORD TRANSIT CONNECT 2014-2023 — WASHER TANK; WITH REAR WIPER\/INLET\/BRACKET\/CAP\/PUMP; CONNECT 2014-2022","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Ford","offers":[{"title":"Default Title","offer_id":48355231563968,"sku":"FO1288204","price":68.46,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/FO1288204.png?v=1780429341"},{"product_id":"ford-transit-van-2015-2019-washer-fluid-reservoir-w-inlet-cap-pump-sensor-bracke-fo1288222","title":"FORD TRANSIT VAN 2015-2019 — WASHER FLUID RESERVOIR; W\/ INLET\/CAP\/PUMP\/SENSOR\/BRACKET; 2015-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Ford","offers":[{"title":"Default Title","offer_id":48355231596736,"sku":"FO1288222","price":228.5,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/FO1288222.png?v=1780429342"},{"product_id":"ford-transit-van-2015-2019-washer-tank-w-inlet-cap-motor-bracket-sensor-2015-202-fo1288224","title":"FORD TRANSIT VAN 2015-2019 — WASHER TANK; W\/ INLET \u0026 CAP \u0026 MOTOR \u0026 BRACKET \u0026 SENSOR; 2015-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Ford","offers":[{"title":"Default Title","offer_id":48355231629504,"sku":"FO1288224","price":293.19,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/FO1228224.png?v=1780429343"},{"product_id":"chevrolet-cruze-2011-2015-washer-tank-buick-verano-2012-2017-gm1288164v","title":"CHEVROLET CRUZE 2011-2015 — WASHER TANK; BUICK VERANO 2012-2017","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Chevrolet","offers":[{"title":"Default Title","offer_id":48355231662272,"sku":"GM1288164V","price":147.42,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/GM1288164V.png?v=1780429345"},{"product_id":"honda-civic-2006-2011-wiper-washer-tank-coupe-2006-2011-ho1288115","title":"HONDA CIVIC 2006-2011 — WIPER WASHER TANK; COUPE 2006-2011","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355231695040,"sku":"HO1288115","price":29.37,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288115.jpg?v=1780429346"},{"product_id":"honda-accord-2013-2017-windshield-tank-sedan-coupe-2013-2017-hybrid-2014-2017-ho1288196","title":"HONDA ACCORD 2013-2017 — WINDSHIELD TANK; SEDAN\/COUPE 2013-2017; HYBRID 2014-2017","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355231727808,"sku":"HO1288196","price":58.74,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288196.png?v=1780429347"},{"product_id":"honda-accord-2018-2022-washer-tank-sedan-hyb-2018-2020-ho1288221","title":"HONDA ACCORD 2018-2022 — WASHER TANK; SEDAN\/HYB 2018-2020","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355231760576,"sku":"HO1288221","price":66.02,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288221.png?v=1780429348"},{"product_id":"honda-civic-2016-2021-washer-tank-japan-built-w-sensor-hole-w-cap-pump-filler-ne-ho1288226","title":"HONDA CIVIC 2016-2021 — WASHER TANK; JAPAN BUILT; W\/ SENSOR HOLE; W\/ CAP\/PUMP\/FILLER NECK; SEDAN\/COUPE 18-20","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355231793344,"sku":"HO1288226","price":63.57,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288226.png?v=1780429349"},{"product_id":"honda-crv-2017-2022-washer-tank-w-inlet-cap-pump-crv-2017-2022-ho1288233","title":"HONDA CRV 2017-2022 — WASHER TANK; W\/ INLET\/CAP\/PUMP; CRV 2017-2022","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355231826112,"sku":"HO1288233","price":85.57,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288233.png?v=1780429351"},{"product_id":"honda-hrv-2016-2022-washer-fluid-reservoir-hrv-2016-2022-ho1288235","title":"HONDA HRV 2016-2022 — WASHER FLUID RESERVOIR; HRV 2016-2022","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355232514240,"sku":"HO1288235","price":107.64,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288235.png?v=1780429352"},{"product_id":"honda-civic-hyb-2022-2025-washer-tank-w-inlet-cap-pump-sedan-2022-2025-ho1288240","title":"HONDA CIVIC\/HYB 2022-2025 — WASHER TANK; W\/ INLET\/CAP\/PUMP; SEDAN 2022-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Honda","offers":[{"title":"Default Title","offer_id":48355232547008,"sku":"HO1288240","price":73.35,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HO1288240.png?v=1780429353"},{"product_id":"hyundai-elantra-2014-2016-wiper-washer-tank-usa-built-elantra-sedan-2014-2016-hy1288137","title":"HYUNDAI ELANTRA 2014-2016 — WIPER WASHER TANK; USA BUILT; ELANTRA SEDAN 2014-2016","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232579776,"sku":"HY1288137","price":70.91,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288137.jpg?v=1780429355"},{"product_id":"hyundai-elantra-2019-2020-washer-fluid-tank-us-built-sedan-2017-2019-hy1288145","title":"HYUNDAI ELANTRA 2019-2020 — WASHER FLUID TANK; US BUILT; SEDAN 2017-2019","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232612544,"sku":"HY1288145","price":128.7,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288145.png?v=1780429356"},{"product_id":"hyundai-elantra-2019-2020-washer-fluid-tank-korea-built-sedan-2017-2019-hy1288146","title":"HYUNDAI ELANTRA 2019-2020 — WASHER FLUID TANK; KOREA BUILT; SEDAN 2017-2019","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232645312,"sku":"HY1288146","price":73.35,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288146.png?v=1780429358"},{"product_id":"hyundai-kona-2018-2023-washer-tank-w-cap-pump-sensor-kona-2018-2021-hy1288147","title":"HYUNDAI KONA 2018-2023 — WASHER TANK; W\/ CAP\/PUMP\/SENSOR; KONA 2018-2021","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232678080,"sku":"HY1288147","price":121.94,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288147.png?v=1780429359"},{"product_id":"hyundai-elantra-2021-2023-washer-tank-us-korea-built-w-motor-cap-inlet-sedan-202-hy1288154","title":"HYUNDAI ELANTRA 2021-2023 — WASHER TANK; US\/KOREA BUILT; W\/MOTOR \u0026 CAP \u0026 INLET; SEDAN 2021-2023","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232710848,"sku":"HY1288154","price":199.57,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288154.png?v=1780429360"},{"product_id":"hyundai-santa-fe-2019-2023-washer-tank-w-inlet-cap-pump-sensor-2021-2023-also-fi-hy1288156","title":"HYUNDAI SANTA FE 2019-2023 — WASHER TANK; W\/ INLET CAP\/PUMP\/SENSOR; 2021-2023 (ALSO FITS 23 US BUILT HYB)","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Hyundai","offers":[{"title":"Default Title","offer_id":48355232743616,"sku":"HY1288156","price":187.73,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/HY1288156.png?v=1780429361"},{"product_id":"kia-forte-2019-2024-washer-tank-w-cap-pump-sensor-2019-2024-ki1288146","title":"KIA FORTE 2019-2024 — WASHER TANK; W\/ CAP\/PUMP\/SENSOR; 2019-2024","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Kia","offers":[{"title":"Default Title","offer_id":48355232776384,"sku":"KI1288146","price":210.38,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/KI1288146.png?v=1780429364"},{"product_id":"mazda-mz-3-2014-2016-washer-tank-w-pump-cap-sensor-inlet-bracket-japan-built-hba-ma1288139","title":"MAZDA MZ 3 2014-2016 — WASHER TANK; W\/ PUMP\/CAP\/SENSOR\/INLET\/BRACKET; JAPAN BUILT; HBACK 2014-2018","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Mazda","offers":[{"title":"Default Title","offer_id":48355232809152,"sku":"MA1288139","price":114.66,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/MA1288139.png?v=1780429366"},{"product_id":"mazda-mz-3-2014-2016-washer-tank-for-japan-built-sedans-w-pump-cap-sensor-inlet-ma1288140","title":"MAZDA MZ 3 2014-2016 — WASHER TANK; FOR JAPAN BUILT SEDANS; W\/ PUMP\/CAP\/SENSOR\/INLET\/BRACKET; MAZDA 3 2014-2018","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Mazda","offers":[{"title":"Default Title","offer_id":48355234152640,"sku":"MA1288140","price":113.09,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/312IfIskqXL._SL500_AC_SS350.jpg?v=1780429368"},{"product_id":"mazda-cx-5-2012-2016-washer-fluid-tank-w-inlet-cap-bracket-pump-sensor-large-tan-ma1288146","title":"MAZDA CX 5 2012-2016 — WASHER FLUID TANK; W\/ INLET\/CAP\/BRACKET\/PUMP\/SENSOR; LARGE TANK; 2013-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Mazda","offers":[{"title":"Default Title","offer_id":48355234185408,"sku":"MA1288146","price":117.0,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/MA1288146.png?v=1780429370"},{"product_id":"mazda-mz-3-2010-2013-washer-tank-w-cap-motor-sensor-hatchback-mazda-3-2012-2013-ma1288160","title":"MAZDA MZ 3 2010-2013 — WASHER TANK; W\/CAP \u0026 MOTOR \u0026 SENSOR; HATCHBACK; MAZDA 3 2012-2013","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Mazda","offers":[{"title":"Default Title","offer_id":48355234873536,"sku":"MA1288160","price":185.73,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/MA1288160.png?v=1780429372"},{"product_id":"mazda-cx30-2020-2025-washer-tank-w-inlet-cap-pump-sensor-bracket-large-capacity-ma1288161","title":"MAZDA CX30 2020-2025 — WASHER TANK; W\/ INLET\/CAP\/PUMP\/SENSOR\/BRACKET LARGE CAPACITY; 2020-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Mazda","offers":[{"title":"Default Title","offer_id":48355234906304,"sku":"MA1288161","price":187.73,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/MA1288161N.png?v=1780429373"},{"product_id":"nissan-sentra-2013-2015-washer-tank-w-cap-pump-sensor-inlet-2013-2016-ni1288158","title":"NISSAN SENTRA 2013-2015 — WASHER TANK; W\/ CAP\/PUMP\/SENSOR\/INLET; 2013-2016","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355234939072,"sku":"NI1288158","price":124.02,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288158.png?v=1780429374"},{"product_id":"nissan-maxima-2016-2023-washer-tank-altima-2013-2018-maxima-2016-2019-ni1288165","title":"NISSAN MAXIMA 2016-2023 — WASHER TANK ; ALTIMA 2013-2018 \/ MAXIMA 2016-2019","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355234971840,"sku":"NI1288165","price":149.76,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/ni1288165_1.jpg?v=1780429375"},{"product_id":"nissan-rogue-2014-2020-washer-tank-w-motor-cap-inlet-rogue-2014-2016-ni1288167","title":"NISSAN ROGUE 2014-2020 — WASHER TANK; W\/MOTOR \u0026 CAP \u0026 INLET; ROGUE 2014-2016","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235037376,"sku":"NI1288167","price":140.4,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/s-l1600wwwww.jpg?v=1780429377"},{"product_id":"nissan-rogue-2014-2020-washer-tank-w-motor-w-o-inlet-and-head-lamp-washer-rogue-ni1288168","title":"NISSAN ROGUE 2014-2020 — WASHER TANK ;W\/MOTOR; W\/O INLET AND HEAD LAMP WASHER; ROGUE 2014-2016","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235070144,"sku":"NI1288168","price":135.72,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/ni1288168_1llllllllllllllllllll.jpg?v=1780429378"},{"product_id":"nissan-rogue-2014-2020-washer-tank-w-motor-inlet-head-lamp-washer-rogue-2014-201-ni1288170","title":"NISSAN ROGUE 2014-2020 — WASHER TANK; W\/MOTOR \u0026 INLET \u0026 HEAD LAMP WASHER ; ROGUE 2014-2017","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235102912,"sku":"NI1288170","price":149.76,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/ni1288170_1.jpg?v=1780429379"},{"product_id":"nissan-altima-2019-2025-washer-tank-w-inlet-cap-pump-sensor-altima-2019-2025-ni1288192","title":"NISSAN ALTIMA 2019-2025 — WASHER TANK; W\/ INLET\/CAP\/PUMP\/SENSOR; ALTIMA 2019-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235135680,"sku":"NI1288192","price":97.8,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288192.png?v=1780429381"},{"product_id":"nissan-murano-2015-2024-washer-tank-w-inlet-cap-pump-sensor-2015-2018-ni1288201","title":"NISSAN MURANO 2015-2024 — WASHER TANK; W\/ INLET\/CAP\/PUMP\/SENSOR; 2015-2018","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235168448,"sku":"NI1288201","price":273.48,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288201.png?v=1780429382"},{"product_id":"nissan-sentra-2020-2025-washer-tank-inlet-cap-pump-non-heated-2020-2025-ni1288204","title":"NISSAN SENTRA 2020-2025 — WASHER TANK; INLET\/CAP\/PUMP; NON-HEATED; 2020-2025","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235201216,"sku":"NI1288204","price":119.06,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288204.png?v=1780429383"},{"product_id":"nissan-sentra-2020-2025-washer-tank-w-heated-inlet-cap-pump-sensor-sentra-2020-2-ni1288207","title":"NISSAN SENTRA 2020-2025 — WASHER TANK; W\/ HEATED\/INLET\/CAP\/PUMP\/SENSOR; SENTRA 2020-2022","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235233984,"sku":"NI1288207","price":188.25,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288207.png?v=1780429385"},{"product_id":"nissan-murano-2015-2024-washer-tank-includes-cap-filler-neck-pump-sensor-2019-20-ni1288211","title":"NISSAN MURANO 2015-2024 — WASHER TANK; INCLUDES CAP\/FILLER NECK\/PUMP\/SENSOR; 2019-2024","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Nissan","offers":[{"title":"Default Title","offer_id":48355235266752,"sku":"NI1288211","price":99.95,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/NI1288211.png?v=1780429386"},{"product_id":"tesla-model-3-2017-2023-washer-tank-w-cap-model-3-2017-2022-ta1288101","title":"TESLA MODEL 3 2017-2023 — WASHER TANK; W\/CAP; MODEL 3 2017-2022","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Tesla","offers":[{"title":"Default Title","offer_id":48355235299520,"sku":"TA1288101","price":112.58,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/TA1288101.png?v=1780429388"},{"product_id":"toyota-camry-2007-2011-washer-tank-camry-hybrid-2007-2011-es350-2007-2012-to1288111","title":"TOYOTA CAMRY 2007-2011 — WASHER TANK; CAMRY \/HYBRID 2007-2011; ES350 2007-2012","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355235332288,"sku":"TO1288111","price":73.35,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288111_1.jpg?v=1780429389"},{"product_id":"toyota-corolla-2003-2008-wiper-washer-tank-w-motor-w-o-rear-washer-fits-sedan-ma-to1288112","title":"TOYOTA COROLLA 2003-2008 — WIPER WASHER TANK; W\/MOTOR ; W\/O REAR WASHER ; FITS SEDAN \/ MATRIX 2003-2008","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236020416,"sku":"TO1288112","price":78.24,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/61pLtDs8DuL._AC_SX679.jpg?v=1780429390"},{"product_id":"toyota-rav4-2006-2012-washer-tank-w-sensor-hole-rav4-2006-2008-to1288115","title":"TOYOTA RAV4 2006-2012 — WASHER TANK ; W\/SENSOR HOLE ;RAV4 2006-2008","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236053184,"sku":"TO1288115","price":102.69,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288115_1.jpg?v=1780429391"},{"product_id":"toyota-corolla-2009-2013-washer-tank-w-motor-w-sensor-hole-north-america-built-f-to1288125","title":"TOYOTA COROLLA 2009-2013 — WASHER TANK; W\/MOTOR ;W\/SENSOR HOLE ; NORTH-AMERICA BUILT; FOR SEDAN \/ MATRIX 2009-2013","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236085952,"sku":"TO1288125","price":68.46,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288125_1.jpg?v=1780429392"},{"product_id":"toyota-matrix-2003-2008-wiper-washer-tank-for-models-with-rear-washer-matrix-200-to1288126","title":"TOYOTA MATRIX 2003-2008 — WIPER WASHER TANK ; FOR MODELS WITH REAR WASHER; MATRIX 2003-2008","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236118720,"sku":"TO1288126","price":90.47,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288126_1.jpg?v=1780429394"},{"product_id":"toyota-camry-2012-2014-washer-tank-with-pump-lexus-es350-13-17-avalon-13-18-camr-to1288171","title":"TOYOTA CAMRY 2012-2014 — WASHER TANK WITH PUMP; LEXUS ES350 13-17 \u0026 AVALON 13-18 \u0026 CAMRY \/HYB 12-17","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236151488,"sku":"TO1288171","price":107.58,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/51DrUKn4rTL._SL1500.jpg?v=1780429396"},{"product_id":"toyota-camry-2012-2014-washer-tank-w-pump-and-sensor-lexus-es350-13-17-north-ame-to1288172","title":"TOYOTA CAMRY 2012-2014 — WASHER TANK W\/PUMP AND SENSOR ; LEXUS ES350 13-17 (NORTH-AMERICA BUILT ) \u0026 AVALON 13-18 \u0026 CAMRY \/HYB 12-17","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236184256,"sku":"TO1288172","price":121.68,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288172_1.jpg?v=1780429396"},{"product_id":"toyota-sienna-2004-2010-washer-tank-w-o-motor-sienna-2004-2020-to1288173","title":"TOYOTA SIENNA 2004-2010 — WASHER TANK; W\/O MOTOR ; SIENNA 2004-2020","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236413632,"sku":"TO1288173","price":92.91,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/110.jpg?v=1780429398"},{"product_id":"toyota-sienna-2011-2020-washer-tank-2-pumps-and-sensors-sienna-2011-2020-to1288175","title":"TOYOTA SIENNA 2011-2020 — WASHER TANK; 2 PUMPS AND SENSORS; SIENNA 2011-2020","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236446400,"sku":"TO1288175","price":135.72,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/TO1288175.png?v=1780429399"},{"product_id":"toyota-corolla-2014-2019-windshield-washer-tank-w-o-motor-w-o-inlet-sedan-2014-2-to1288189","title":"TOYOTA COROLLA 2014-2019 — WINDSHIELD WASHER TANK; W\/O MOTOR; W\/O INLET ; SEDAN 2014-2019","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236479168,"sku":"TO1288189","price":95.36,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288189_1.jpg?v=1780429400"},{"product_id":"toyota-corolla-2014-2019-washer-tank-w-inlet-pump-sedan-2014-2015-to1288190","title":"TOYOTA COROLLA 2014-2019 — WASHER TANK; W\/ INLET\/PUMP; SEDAN 2014-2015","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236511936,"sku":"TO1288190","price":119.34,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/TO1288190.png?v=1780429401"},{"product_id":"toyota-corolla-2014-2019-washer-tank-w-sensor-hole-canada-spec-2014-2019-to1288199","title":"TOYOTA COROLLA 2014-2019 — WASHER TANK; W\/ SENSOR HOLE; CANADA SPEC; 2014-2019","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236544704,"sku":"TO1288199","price":100.25,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/TO1288199.png?v=1780429402"},{"product_id":"toyota-corolla-2014-2019-washer-tank-w-inlet-pump-sensor-2014-2017-to1288200","title":"TOYOTA COROLLA 2014-2019 — WASHER TANK; W\/ INLET\/PUMP\/SENSOR; 2014-2017","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236577472,"sku":"TO1288200","price":121.68,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/TO1288200.png?v=1780429404"},{"product_id":"toyota-rav4-2013-2018-washer-tank-with-cap-pump-sensor-bracket-rav4-2013-2018-to1288214","title":"TOYOTA RAV4 2013-2018 — WASHER TANK ; WITH CAP\/ PUMP\/ SENSOR \/ BRACKET; RAV4 2013-2018","description":"\u003cstyle\u003e\n\/* --- \n   ENTERPRISE HIGH-TECH THEME V4\n   Bright, Flawlessly Centered (Desktop \u0026 Mobile), No Black\n--- *\/\n\n:root {\n  --jd-bg-main: #ffffff;\n  --jd-bg-surface: #f8fafc;\n  --jd-text-heading: #0f172a; \n  --jd-text-body: #334155; \n  --jd-text-muted: #64748b;\n  --jd-accent: #2563eb; \n  --jd-accent-light: #60a5fa;\n  --jd-accent-gradient: linear-gradient(135deg, #1e40af, #3b82f6, #0ea5e9);\n  --jd-border: #e2e8f0;\n  \n  --jd-shadow-sm: 0 8px 24px rgba(15, 23, 42, 0.06);\n  --jd-shadow-lg: 0 20px 48px rgba(37, 99, 235, 0.12);\n  --jd-shadow-glow: 0 0 30px rgba(59, 130, 246, 0.15);\n  \n  --jd-ease: cubic-bezier(0.165, 0.84, 0.44, 1);\n}\n\n@keyframes jd-fade-in {\n  0% { opacity: 0; transform: translateY(15px); }\n  100% { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes jd-gradient-bg {\n  0% { background-position: 0% 50%; }\n  50% { background-position: 100% 50%; }\n  100% { background-position: 0% 50%; }\n}\n\n@keyframes jd-text-shine {\n  to { background-position: 200% center; }\n}\n\n.jd-wrapper {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  max-width: 1000px; \n  margin: 30px auto;\n  color: var(--jd-text-body);\n  background: var(--jd-bg-main);\n  border-radius: 20px;\n  box-shadow: 0 0 0 1px var(--jd-border), var(--jd-shadow-sm);\n  overflow: hidden;\n  text-align: center; \n}\n\n.jd-hero {\n  background: linear-gradient(120deg, #ffffff, #f1f5f9, #e0e7ff);\n  background-size: 200% 200%;\n  animation: jd-gradient-bg 10s ease infinite, jd-fade-in 0.8s var(--jd-ease) forwards;\n  position: relative;\n  padding: 80px 40px;\n  border-bottom: 4px solid var(--jd-accent);\n}\n\n.jd-hero::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background-image: linear-gradient(var(--jd-border) 1px, transparent 1px), \n                    linear-gradient(90deg, var(--jd-border) 1px, transparent 1px);\n  background-size: 40px 40px;\n  opacity: 0.5;\n  pointer-events: none;\n}\n\n.jd-hero-content {\n  position: relative;\n  z-index: 1;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-hero h2 {\n  margin: 0;\n  font-size: 42px;\n  font-weight: 800;\n  letter-spacing: -0.5px;\n  line-height: 1.2;\n  text-align: center;\n  text-wrap: balance;\n  background: linear-gradient(90deg, #0f172a, #2563eb, #0f172a);\n  background-size: 200% auto;\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  animation: jd-text-shine 5s linear infinite;\n}\n\n.jd-hero p {\n  margin: 24px 0 0 0;\n  max-width: 650px;\n  font-size: 19px;\n  color: var(--jd-text-body);\n  line-height: 1.7;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-badges {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 16px;\n  margin: -25px auto 50px; \n  justify-content: center;\n  position: relative;\n  z-index: 2;\n  padding: 0 20px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.1s forwards;\n  opacity: 0;\n}\n\n.jd-badge {\n  background: var(--jd-bg-main);\n  border: 1px solid var(--jd-border);\n  border-radius: 50px;\n  padding: 14px 28px;\n  font-size: 15px;\n  font-weight: 600;\n  color: var(--jd-text-heading);\n  box-shadow: var(--jd-shadow-sm);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  position: relative;\n  overflow: hidden;\n  cursor: default;\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-badge::after {\n  content: \"\";\n  position: absolute;\n  top: 0; left: -100%; width: 50%; height: 100%;\n  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0) 100%);\n  transform: skewX(-25deg);\n  transition: all 0.6s ease;\n}\n\n.jd-badge:hover {\n  transform: translateY(-4px);\n  box-shadow: var(--jd-shadow-lg);\n  border-color: var(--jd-accent-light);\n  color: var(--jd-accent);\n}\n\n.jd-badge:hover::after {\n  left: 150%;\n}\n\n.jd-content-wrapper {\n  padding: 20px 50px;\n}\n\n.jd-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));\n  gap: 30px;\n  margin-top: 10px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.2s forwards;\n  opacity: 0;\n}\n\n.jd-card {\n  background: var(--jd-bg-surface);\n  border-radius: 16px;\n  padding: 40px 30px;\n  border: 1px solid var(--jd-border);\n  transition: all 0.5s var(--jd-ease);\n  position: relative;\n  overflow: hidden;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n}\n\n.jd-card::before {\n  content: \"\";\n  position: absolute;\n  top: 0; left: 0; right: 0;\n  height: 4px;\n  background: var(--jd-accent-gradient);\n  opacity: 0.5;\n  transition: all 0.5s var(--jd-ease);\n}\n\n.jd-card:hover {\n  transform: translateY(-8px) scale(1.01);\n  box-shadow: var(--jd-shadow-lg), var(--jd-shadow-glow);\n  background: var(--jd-bg-main);\n  border-color: #cbd5e1;\n}\n\n.jd-card:hover::before {\n  opacity: 1;\n  height: 6px;\n}\n\n.jd-title {\n  font-size: 20px;\n  font-weight: 800;\n  color: var(--jd-text-heading);\n  margin-bottom: 20px;\n  text-transform: uppercase;\n  letter-spacing: 1.5px;\n  text-align: center;\n}\n\n.jd-card-text {\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-specs-container {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n}\n\n.jd-specs-list {\n  display: inline-flex;\n  flex-direction: column;\n  align-items: flex-start;\n  gap: 12px;\n}\n\n.jd-specs-list span {\n  display: flex;\n  align-items: flex-start;\n  text-align: left;\n  gap: 10px;\n}\n\n.jd-specs-list span::before {\n  content: \"•\";\n  color: var(--jd-accent);\n  font-size: 20px;\n  line-height: 1.4;\n}\n\n.jd-alert {\n  margin-top: 40px;\n  background: linear-gradient(135deg, #eff6ff, #f8fafc); \n  border: 1px solid #bfdbfe;\n  padding: 30px;\n  border-radius: 16px;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 12px;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.3s forwards;\n  opacity: 0;\n  box-shadow: var(--jd-shadow-sm);\n}\n\n.jd-alert strong {\n  color: var(--jd-accent);\n  font-size: 18px;\n  text-transform: uppercase;\n  letter-spacing: 1px;\n}\n\n.jd-alert p {\n  margin: 0;\n  color: var(--jd-text-heading);\n  font-size: 16px;\n  line-height: 1.6;\n  text-wrap: balance;\n}\n\n.jd-accordion {\n  margin-top: 50px;\n  border-top: 1px solid var(--jd-border);\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.4s forwards;\n  opacity: 0;\n}\n\n.jd-item {\n  border-bottom: 1px solid var(--jd-border);\n  transition: background 0.3s ease;\n}\n\n.jd-item:hover {\n  background: #f8fafc;\n}\n\n.jd-item summary {\n  padding: 30px 0;\n  cursor: pointer;\n  font-size: 18px;\n  font-weight: 700;\n  color: var(--jd-text-heading);\n  list-style: none;\n  position: relative;\n  outline: none;\n  display: flex;\n  justify-content: center; \n  align-items: center;\n  text-align: center;\n  transition: color 0.3s ease;\n}\n\n.jd-item[open] summary {\n  color: var(--jd-accent);\n}\n\n.jd-item summary::-webkit-details-marker {\n  display: none;\n}\n\n.jd-item summary::after {\n  content: \"+\";\n  position: absolute;\n  right: 20px;\n  font-size: 26px;\n  color: var(--jd-text-muted);\n  transition: all 0.4s var(--jd-ease);\n}\n\n.jd-item[open] summary::after {\n  content: \"−\";\n  color: var(--jd-accent);\n  transform: rotate(180deg);\n}\n\n.jd-item div {\n  padding: 0 40px 30px 40px;\n  font-size: 16px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  animation: jd-fade-in 0.4s var(--jd-ease) forwards;\n  margin: 0 auto;\n  max-width: 800px;\n  text-align: center;\n  text-wrap: balance;\n}\n\n.jd-footer {\n  margin-top: 40px;\n  background: linear-gradient(180deg, var(--jd-bg-surface), #e2e8f0);\n  border-top: 1px solid var(--jd-border);\n  padding: 60px 40px;\n  text-align: center;\n  animation: jd-fade-in 0.8s var(--jd-ease) 0.5s forwards;\n  opacity: 0;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n}\n\n.jd-footer h3 {\n  margin: 0 0 20px 0;\n  font-size: 26px;\n  font-weight: 800;\n  letter-spacing: 1.5px;\n  text-transform: uppercase;\n  color: var(--jd-text-heading);\n}\n\n.jd-footer h3 span {\n  color: var(--jd-accent);\n}\n\n.jd-footer p {\n  margin: 0;\n  max-width: 650px;\n  color: var(--jd-text-body);\n  line-height: 1.8;\n  font-size: 16px;\n  font-weight: 500;\n  text-align: center;\n  text-wrap: balance;\n}\n\n@media(max-width: 768px) {\n  .jd-hero {\n    padding: 60px 20px;\n  }\n  .jd-hero h2 {\n    font-size: 32px;\n  }\n  .jd-hero p {\n    font-size: 16px;\n  }\n  .jd-content-wrapper {\n    padding: 20px;\n  }\n  .jd-badge {\n    width: 100%;\n  }\n  .jd-card {\n    padding: 30px 20px;\n  }\n  .jd-item div {\n    padding: 0 20px 30px 20px;\n  }\n  .jd-footer {\n    padding: 50px 20px;\n  }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"jd-wrapper\"\u003e\n\n  \u003cdiv class=\"jd-hero\"\u003e\n    \u003cdiv class=\"jd-hero-content\"\u003e\n      \u003ch2\u003ePremium Aftermarket Parts\u003c\/h2\u003e\n      \u003cp\u003ePrecision-engineered replacement components designed for an exact fit, flawless appearance, and enduring performance.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-badges\"\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🚚 Ships Across Canada\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e✔️ OEM-Grade Quality\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e📦 Secure Packaging\u003c\/div\u003e\n    \u003cdiv class=\"jd-badge\"\u003e🇨🇦 Canadian Warehouse\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-content-wrapper\"\u003e\n    \n    \u003cdiv class=\"jd-grid\"\u003e\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eVehicle Compatibility\u003c\/div\u003e\n        \u003cdiv class=\"jd-card-text\"\u003e\n          Always verify that your vehicle matches the compatibility specifications provided above prior to placing your order.\n          \u003cbr\u003e\u003cbr\u003e\n          If you require assistance, contact our technical support team with your VIN, and we will gladly confirm exact fitment.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"jd-card\"\u003e\n        \u003cdiv class=\"jd-title\"\u003eProduct Specifications\u003c\/div\u003e\n        \u003cdiv class=\"jd-specs-container\"\u003e\n          \u003cdiv class=\"jd-specs-list\"\u003e\n            \u003cspan\u003eBrand new aftermarket component\u003c\/span\u003e\n            \u003cspan\u003eMeets or exceeds OEM standards\u003c\/span\u003e\n            \u003cspan\u003ePrecision-designed for proper fit\u003c\/span\u003e\n            \u003cspan\u003eProfessional installation recommended\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-alert\"\u003e\n      \u003cstrong\u003eImportant Shipping Notice\u003c\/strong\u003e\n      \u003cp\u003eThis product is exclusively available for shipping within \u003cstrong\u003eCanada\u003c\/strong\u003e. Orders containing delivery addresses outside of Canada are subject to cancellation.\u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"jd-accordion\"\u003e\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCondition \u0026amp; Quality\u003c\/summary\u003e\n        \u003cdiv\u003e\n          This item is a brand-new, premium aftermarket replacement part. It is not a used, refurbished, or OEM factory component unless explicitly stated within the listing details.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eShipping \u0026amp; Handling\u003c\/summary\u003e\n        \u003cdiv\u003e\n          All orders are meticulously packaged to ensure the protection of your purchase during transit. Please inspect your shipment immediately upon delivery and notify us promptly if any shipping damage has occurred.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eInstallation Guidelines\u003c\/summary\u003e\n        \u003cdiv\u003e\n          To ensure optimal performance, professional installation is strongly recommended. Select products may require the transfer of existing hardware, mounting clips, brackets, sensors, or trim from your original part.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails class=\"jd-item\"\u003e\n        \u003csummary\u003eCustomer Support\u003c\/summary\u003e\n        \u003cdiv\u003e\n          Our dedicated team is available to assist you with compatibility checks, inventory availability, and any technical inquiries prior to your purchase.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"jd-footer\"\u003e\n    \u003ch3\u003eJapan Direct \u003cspan\u003eJapanese\u003c\/span\u003e\n\u003c\/h3\u003e\n    \u003cp\u003eServing drivers across Canada with elite aftermarket automotive components. Committed to precision, dependability, and uncompromising customer service.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e","brand":"Toyota","offers":[{"title":"Default Title","offer_id":48355236610240,"sku":"TO1288214","price":117.0,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/1469\/3312\/files\/to1288214_1.jpg?v=1780429405"}],"url":"https:\/\/japandirectjapanese.com\/collections\/wiper-washer-components\/side-marker.oembed","provider":"Japan Direct Japanese Auto Parts","version":"1.0","type":"link"}