{
  "version": 3,
  "sources": ["/cdn/shop/t/21/assets/theme.js?bscly_guard=20260607v5"],
  "sourcesContent": ["// BSCLY theme JS - Shopify cart integration\n(function(){\n  const Toast = {\n    show(msg){\n      const el = document.getElementById('toast');\n      if(!el) return;\n      el.querySelector('.msg').textContent = msg;\n      el.classList.add('show');\n      clearTimeout(this._t);\n      this._t = setTimeout(() => el.classList.remove('show'), 2200);\n    }\n  };\n  window.Toast = Toast;\n\n  const Drawer = {\n    open(){\n      const drawer = document.getElementById('cart-drawer');\n      const overlay = document.getElementById('drawer-overlay');\n      if (!drawer || !overlay) return;\n      drawer.classList.add('open');\n      overlay.classList.add('open');\n      document.body.style.overflow = 'hidden';\n    },\n    close(){\n      const drawer = document.getElementById('cart-drawer');\n      const overlay = document.getElementById('drawer-overlay');\n      if (!drawer || !overlay) return;\n      drawer.classList.remove('open');\n      overlay.classList.remove('open');\n      document.body.style.overflow = '';\n    }\n  };\n  window.Drawer = Drawer;\n\n  async function refreshCart(){\n    const res = await fetch(window.routes.cart_url + '.js');\n    const cart = await res.json();\n    // Update count\n    document.querySelectorAll('.cart-count').forEach(el => {\n      el.textContent = cart.item_count > 0 ? cart.item_count : '';\n      el.dataset.count = cart.item_count;\n    });\n    // Re-render drawer\n    const sectionRes = await fetch('?sections=cart-drawer-contents,cart-drawer-foot').catch(() => null);\n    // Simpler: refetch the page fragment via section rendering API\n    try {\n      const r2 = await fetch(window.location.pathname + '?section_id=cart-drawer-contents');\n      // fall back to manually building\n    } catch(e){}\n    // Manual rebuild using cart data\n    rebuildDrawer(cart);\n  }\n\n  function money(cents){\n    return '\u20B9' + (cents/100).toLocaleString('en-IN', { maximumFractionDigits: 2 });\n  }\n\n  function routineCoverage(cart){\n    const state = {\n      cleanse: false,\n      protect: false,\n      paws: false,\n      cat: false,\n      refresh: false,\n      training: false\n    };\n    (cart.items || []).forEach(item => {\n      const text = `${item.product_title || ''} ${item.product_type || ''} ${item.variant_title || ''}`.toLowerCase();\n      if(text.includes('cat')) state.cat = true;\n      if(text.includes('tick') || text.includes('flea') || text.includes('protect') || text.includes('anti')) state.protect = true;\n      if(text.includes('paw') || text.includes('balm') || text.includes('nose')) state.paws = true;\n      if(text.includes('deodor') || text.includes('perfume') || text.includes('fresh') || text.includes('dry shampoo') || text.includes('wipe')) state.refresh = true;\n      if(text.includes('training') || text.includes('chew')) state.training = true;\n      if(text.includes('shampoo') || text.includes('conditioner') || text.includes('groom')) state.cleanse = true;\n    });\n    state.count = ['cleanse', 'protect', 'paws', 'cat', 'refresh', 'training'].filter(key => state[key]).length;\n    return state;\n  }\n\n  function cartCarePaths(title, text, cart){\n    const root = window.routes.cart_url.replace('/cart','');\n    const state = routineCoverage(cart || { items: [] });\n    const status = cart && cart.item_count > 0 ? `<div class=\"bscly-cart-paths__status\" aria-label=\"Routine coverage in cart\">\n      <span><b>${state.count}</b> routine area${state.count === 1 ? '' : 's'} covered</span>\n      <small>Use the missing labels below to complete the shelf only if your pet needs that step.</small>\n    </div>` : '';\n    const itemClass = key => `bscly-cart-paths__item ${state[key] ? 'is-covered' : 'is-missing'}`;\n    const itemFlag = (key, fallback='Missing') => state[key] ? 'In cart' : fallback;\n    return `<div class=\"bscly-cart-paths bscly-cart-paths--drawer\">\n      <div class=\"bscly-cart-paths__head\">\n        <p class=\"bscly-cart-paths__eyebrow\">Pet-care shelf</p>\n        <h3>${title}</h3>\n        <p>${text}</p>\n      </div>\n      ${status}\n      <div class=\"bscly-cart-paths__grid\">\n        <a href=\"${root}/collections/all\" class=\"bscly-cart-paths__item\"><span>Full shelf</span><small>Everything in one place</small></a>\n        <a href=\"${root}/collections/grooming-products\" class=\"${itemClass('cleanse')}\"><em>${itemFlag('cleanse')}</em><span>Bath day</span><small>Shampoo, conditioner, grooming</small></a>\n        <a href=\"${root}/collections/anti-tick\" class=\"${itemClass('protect')}\"><em>${itemFlag('protect')}</em><span>Walks + ticks</span><small>Outdoor protection routine</small></a>\n        <a href=\"${root}/collections/paw-care\" class=\"${itemClass('paws')}\"><em>${itemFlag('paws')}</em><span>Paw care</span><small>Repair, balm, daily comfort</small></a>\n        <a href=\"${root}/collections/cat-shampoo\" class=\"${itemClass('cat')}\"><em>${itemFlag('cat', 'Cat homes')}</em><span>Cat care</span><small>Gentle cat-fit products</small></a>\n        <a href=\"${root}/collections/dry-bath\" class=\"${itemClass('refresh')}\"><em>${itemFlag('refresh')}</em><span>Between baths</span><small>Freshen without full wash</small></a>\n        <a href=\"${root}/collections/training-products\" class=\"${itemClass('training')}\"><em>${itemFlag('training', 'Optional')}</em><span>Training</span><small>Home habits and boundaries</small></a>\n      </div>\n    </div>`;\n  }\n\n  function rebuildDrawer(cart){\n    const body = document.getElementById('drawer-body');\n    const foot = document.getElementById('drawer-foot');\n    if(!body || !foot) return;\n    if(cart.item_count === 0){\n      body.innerHTML = `<div class=\"empty-cart\">\n        <h4>Your cart is empty</h4>\n        <p>Start with your pet's need, then build the routine around it.</p>\n        <a href=\"${window.routes.cart_url.replace('/cart','')}/collections/all\" class=\"btn btn-primary\" style=\"margin-top:24px\">Browse all pet care \u2192</a>\n        ${cartCarePaths('Start by need', 'Bath, ticks, paws, cats, or between-bath freshness.', cart)}\n      </div>`;\n      foot.style.display = 'none';\n      return;\n    }\n    body.innerHTML = cart.items.map(i => `\n      <div class=\"cart-item\" data-key=\"${i.key}\">\n        <div class=\"cart-item-img\">\n          ${i.image ? `<img src=\"${i.image}\" alt=\"\" style=\"width:100%;height:100%;object-fit:cover;border-radius:12px\">` : i.product_title.slice(0,2).toUpperCase()}\n        </div>\n        <div class=\"cart-item-info\">\n          <h5>${i.product_title}</h5>\n          <div class=\"meta\">${i.variant_title || ''}</div>\n          <div class=\"qty\">\n            <button data-cart-act=\"dec\" data-key=\"${i.key}\">\u2212</button>\n            <span>${i.quantity}</span>\n            <button data-cart-act=\"inc\" data-key=\"${i.key}\">+</button>\n          </div>\n        </div>\n        <div>\n          <div class=\"cart-item-price\">${money(i.final_line_price)}</div>\n          <button class=\"cart-item-remove\" data-cart-act=\"remove\" data-key=\"${i.key}\">Remove</button>\n        </div>\n      </div>\n    `).join('') + cartCarePaths('Complete the shelf', 'Add the missing care step before checkout.', cart);\n    foot.style.display = 'block';\n    const free = 79900;\n    const remaining = free - cart.items_subtotal_price;\n    foot.innerHTML = `\n      <div class=\"totals\"><span>Subtotal</span><span>${money(cart.items_subtotal_price)}</span></div>\n      <div class=\"totals\"><span>Shipping</span><span>${cart.items_subtotal_price >= free ? 'Free' : 'At checkout'}</span></div>\n      <div class=\"totals grand\"><span>Total</span><span>${money(cart.total_price)}</span></div>\n      <a href=\"${window.routes.cart_url}\" class=\"btn btn-primary btn-block\">Checkout \u2192</a>\n      <p class=\"ship-note\">${cart.items_subtotal_price >= free ? '\u2713 You qualified for free shipping' : 'Add '+money(remaining)+' more for free shipping'}</p>\n    `;\n  }\n\n  async function cartChange(key, qty){\n    const res = await fetch(window.routes.cart_change_url + '.js', {\n      method: 'POST',\n      headers: { 'Content-Type': 'application/json' },\n      body: JSON.stringify({ id: key, quantity: qty })\n    });\n    return res.json();\n  }\n\n  async function cartAdd(variantId, qty=1){\n    const res = await fetch(window.routes.cart_add_url + '.js', {\n      method: 'POST',\n      headers: { 'Content-Type': 'application/json' },\n      body: JSON.stringify({ id: variantId, quantity: qty })\n    });\n    if(!res.ok){ const e = await res.json(); throw new Error(e.description || 'Add failed'); }\n    return res.json();\n  }\n\n  document.addEventListener('click', async e => {\n    if(e.target.closest('#cart-open')){ e.preventDefault(); Drawer.open(); return; }\n    if(e.target.closest('#drawer-close') || e.target.closest('#drawer-overlay')){ Drawer.close(); return; }\n    if(e.target.closest('#menu-open')){ document.getElementById('mobile-menu').classList.add('open'); document.body.style.overflow='hidden'; return; }\n    if(e.target.closest('#menu-close')){ document.getElementById('mobile-menu').classList.remove('open'); document.body.style.overflow=''; return; }\n    if(e.target.closest('.mobile-menu a')){ document.getElementById('mobile-menu').classList.remove('open'); document.body.style.overflow=''; }\n\n    const acc = e.target.closest('.acc-q');\n    if(acc){ acc.parentElement.classList.toggle('open'); }\n\n    const phr = e.target.closest('.ph-row');\n    if(phr){ phr.parentElement.querySelectorAll('.ph-row').forEach(r => r.classList.remove('active')); phr.classList.add('active'); }\n\n    const addCard = e.target.closest('[data-add-id]');\n    if(addCard){\n      e.preventDefault();\n      try {\n        await cartAdd(addCard.dataset.addId, 1);\n        Toast.show('Added to cart');\n        await refreshCart();\n        Drawer.open();\n      } catch(err){ Toast.show(err.message); }\n      return;\n    }\n\n    const op = e.target.closest('[data-cart-act]');\n    if(op){\n      e.preventDefault();\n      const key = op.dataset.key;\n      const items = await fetch(window.routes.cart_url + '.js').then(r => r.json());\n      const item = items.items.find(i => i.key === key);\n      if(!item) return;\n      let qty = item.quantity;\n      if(op.dataset.cartAct === 'inc') qty++;\n      else if(op.dataset.cartAct === 'dec') qty--;\n      else if(op.dataset.cartAct === 'remove') qty = 0;\n      await cartChange(key, qty);\n      await refreshCart();\n      // If on cart page, reload to update line items\n      if(document.body.dataset.template === 'cart'){ location.reload(); }\n    }\n  });\n\n  // PDP add-to-cart hook\n  window.addEventListener('cart:added', async () => {\n    Toast.show('Added to cart');\n    await refreshCart();\n    Drawer.open();\n  });\n\n  document.addEventListener('keydown', e => { if(e.key === 'Escape') Drawer.close(); });\n\n  document.addEventListener('submit', e => {\n    if(e.target.id === 'news-form'){\n      // let Shopify handle if action set\n      if(!e.target.action){\n        e.preventDefault();\n        Toast.show('You\\'re on the list. Welcome!');\n      }\n    }\n  });\n\n  function injectCareRouteFallback(){\n    const path = window.location.pathname.replace(/\\/+$/, '');\n    const main = document.querySelector('main') || document.body;\n    if(!main || document.getElementById('bscly-live-route-fallback')) return;\n\n    const style = '<style id=\"bscly-live-route-fallback-style\">.bscly-live-route{font-family:var(--bscly-font-body,Inter,system-ui,sans-serif);background:#fffdf7;color:#20251f}.bscly-live-route *{box-sizing:border-box}.bscly-live-wrap{width:min(1180px,calc(100% - 32px));margin:auto}.bscly-live-hero{padding:54px 0 30px}.bscly-live-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#6f7d61;margin:0 0 10px}.bscly-live-title{font-family:var(--bscly-font-head,Georgia,serif);font-size:clamp(38px,7vw,82px);line-height:.94;margin:0;letter-spacing:0}.bscly-live-copy{max-width:760px;color:#66705e;font-size:16px;line-height:1.6;margin:16px 0 0}.bscly-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.bscly-live-card{border:1.5px solid #20251f;border-radius:14px;padding:17px;text-decoration:none;color:#20251f;background:#fbf7ef;display:grid;gap:8px;min-height:150px}.bscly-live-card b{font-family:var(--bscly-font-head,Georgia,serif);font-size:22px;line-height:1.05}.bscly-live-card small{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#6f7d61}.bscly-live-card span{font-size:13px;line-height:1.45;color:#66705e}.bscly-live-dark{background:#20251f;color:#fffdf7;padding:24px;border:1.5px solid #20251f;border-radius:16px;margin:24px 0 42px}.bscly-live-dark .bscly-live-copy{color:rgba(255,253,247,.72)}.bscly-live-dark .bscly-live-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fffdf7}.bscly-live-dark .bscly-live-card span{color:rgba(255,253,247,.68)}.bscly-live-dark .bscly-live-card b{font-family:Inter,system-ui,sans-serif;font-size:14px}.bscly-live-note{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:24px 0 70px}.bscly-live-note div{border:1px solid #d9d2c3;border-radius:14px;padding:17px;background:#fbfaf7}.bscly-live-note b{display:block;font-family:var(--bscly-font-head,Georgia,serif);font-size:20px;margin-bottom:6px}.bscly-live-note p{margin:0;color:#66705e;line-height:1.55;font-size:14px}@media(max-width:720px){.bscly-live-wrap{width:min(100% - 24px,1180px)}.bscly-live-hero{padding-top:36px}.bscly-live-dark{padding:18px}}</style>';\n\n    const routineHtml = style + '<section id=\"bscly-live-route-fallback\" class=\"bscly-live-route\"><div class=\"bscly-live-wrap\"><header class=\"bscly-live-hero\"><p class=\"bscly-live-kicker\">Everything under one roof</p><h1 class=\"bscly-live-title\">The BSCLY pet-care routine system.</h1><p class=\"bscly-live-copy\">Build the shelf by pet-parent moment, not by random product names. Cleanse, condition, protect, repair, refresh, cat care, training and accessories should work as one repeatable home routine.</p></header><div class=\"bscly-live-grid\"><a class=\"bscly-live-card\" href=\"/collections/grooming-products\"><small>Step 01</small><b>Cleanse</b><span>Bath-day shampoos and washes for coat freshness and regular clean-ups.</span></a><a class=\"bscly-live-card\" href=\"/collections/grooming-products\"><small>Step 02</small><b>Condition</b><span>Coat softness, manageability and easier brushing after wash.</span></a><a class=\"bscly-live-card\" href=\"/collections/anti-tick\"><small>Step 03</small><b>Protect</b><span>Walks, outdoor time, dust and tick-prone moments.</span></a><a class=\"bscly-live-card\" href=\"/collections/paw-care\"><small>Step 04</small><b>Repair</b><span>Paws, noses, hot floors and rough patches that need comfort support.</span></a><a class=\"bscly-live-card\" href=\"/collections/dry-bath\"><small>Step 05</small><b>Refresh</b><span>Between-bath reset after guests, travel, walks and humid days.</span></a><a class=\"bscly-live-card\" href=\"/collections/cat-shampoo\"><small>Cat path</small><b>Cat care</b><span>Keep cat grooming separate from dog-default routines.</span></a></div><section class=\"bscly-live-dark\"><p class=\"bscly-live-kicker\">Start from the pet-parent moment</p><h2 class=\"bscly-live-title\" style=\"font-size:clamp(30px,4vw,54px)\">First routine, no guessing.</h2><p class=\"bscly-live-copy\">Choose by what is actually happening at home: new pet, outdoor walks, hot floors, cat grooming, guests, odour or puppy mess.</p><div class=\"bscly-live-grid\" style=\"margin-top:16px\"><a class=\"bscly-live-card\" href=\"/#care-finder\"><b>New pet</b><span>Use the finder before building the first shelf.</span></a><a class=\"bscly-live-card\" href=\"/collections/anti-tick\"><b>Walks or monsoon</b><span>Plan outdoor exposure with cleanup and paw care.</span></a><a class=\"bscly-live-card\" href=\"/collections/paw-care\"><b>Hot floors</b><span>Repair paws and noses after walks.</span></a><a class=\"bscly-live-card\" href=\"/collections/training-products\"><b>Puppy mess</b><span>Pair training support with wipes and refresh.</span></a></div></section><div class=\"bscly-live-note\"><div><b>Check the fit before you add.</b><p>Match the product to pet type, coat, usage moment and sensitivity. If the fit is unclear, ask support first.</p></div><div><b>Skip when the signal is wrong.</b><p>Do not buy by product name alone. Skip anything that does not match the pet, concern or routine step.</p></div></div></div></section>';\n\n    const collectionsHtml = style + '<section id=\"bscly-live-route-fallback\" class=\"bscly-live-route\"><div class=\"bscly-live-wrap\"><header class=\"bscly-live-hero\"><p class=\"bscly-live-kicker\">Everything under one roof</p><h1 class=\"bscly-live-title\">Pet-care directory.</h1><p class=\"bscly-live-copy\">Start by your pet&#39;s real situation: bath day, outdoor walks, paws, cat care, training, accessories, refills or support before buying.</p></header><section class=\"bscly-live-dark\"><p class=\"bscly-live-kicker\">I came here because</p><h2 class=\"bscly-live-title\" style=\"font-size:clamp(30px,4vw,54px)\">Route the problem before the product.</h2><p class=\"bscly-live-copy\">Pet parents do not think in SKUs. They think in smell, walks, paws, cats, bath day, training messes and refills. Start there.</p><div class=\"bscly-live-grid\" style=\"margin-top:16px\"><a class=\"bscly-live-card\" href=\"/#care-finder\"><b>New pet</b><span>Use the finder before building the first shelf.</span></a><a class=\"bscly-live-card\" href=\"/collections/dry-bath\"><b>Smell or guests</b><span>Choose refresh when a full bath is not needed.</span></a><a class=\"bscly-live-card\" href=\"/collections/paw-care\"><b>Hot floors</b><span>Repair paws and noses after walks.</span></a><a class=\"bscly-live-card\" href=\"/collections/cat-shampoo\"><b>Cat grooming</b><span>Keep cat care separate from dog-default routines.</span></a><a class=\"bscly-live-card\" href=\"/collections/anti-tick\"><b>Ticks or walks</b><span>Plan outdoor exposure with cleanup and paws.</span></a><a class=\"bscly-live-card\" href=\"/collections/training-products\"><b>Puppy mess</b><span>Pair training support with wipes and refresh.</span></a><a class=\"bscly-live-card\" href=\"/collections/all\"><b>Monthly refill</b><span>Return to the full shelf quickly.</span></a><a class=\"bscly-live-card\" href=\"/pages/contact\"><b>Unsure or sensitive</b><span>Ask support before buying the wrong shelf.</span></a></div></section></div></section>';\n\n    if(path === '/pages/the-routine' && !document.body.innerHTML.includes('Start from the pet-parent moment')){\n      main.insertAdjacentHTML('afterbegin', routineHtml);\n    }\n    if(path === '/collections' && !document.body.innerHTML.includes('Route the problem before the product')){\n      main.insertAdjacentHTML('afterbegin', collectionsHtml);\n      const fallback = document.getElementById('bscly-live-route-fallback');\n      if(fallback && !fallback.innerHTML.includes('Proof before product')){\n        fallback.querySelector('.bscly-live-wrap')?.insertAdjacentHTML('beforeend', '<section class=\"bscly-live-dark\" style=\"background:#fffdf7;color:#20251f;border-color:#20251f\"><p class=\"bscly-live-kicker\">Proof before product</p><h2 class=\"bscly-live-title\" style=\"font-size:clamp(30px,4vw,54px)\">Do not let pet parents guess.</h2><p class=\"bscly-live-copy\" style=\"color:#66705e\">Buy when the fit is clear. Pair when the problem repeats. Ask support when the pet is sensitive or the routine is unclear. Skip when the product role does not match today&#39;s pet-parent problem.</p><div class=\"bscly-live-grid\" style=\"margin-top:16px\"><div class=\"bscly-live-card\" style=\"background:#f8e5bd\"><b>Buy when</b><span>Pet type, coat, concern, weather and use moment match the shelf.</span></div><div class=\"bscly-live-card\" style=\"background:#d7eadf\"><b>Pair when</b><span>Cleanse needs condition, outdoor support needs paw repair, refresh needs wipes or powder.</span></div><div class=\"bscly-live-card\" style=\"background:#d9edf2\"><b>Ask when</b><span>Sensitive pets, unclear cat fit, recurring skin concerns or mixed routines need support first.</span></div><div class=\"bscly-live-card\" style=\"background:#f2d6e4\"><b>Skip when</b><span>The product role does not solve the actual home situation.</span></div></div></section>');\n      }\n    }\n  }\n\n  function rewriteHomepagePetLoversLinks(){\n    const path = window.location.pathname.replace(/\\/+$/, '') || '/';\n    if(path !== '/') return;\n\n    document.querySelectorAll('.opt1-hero__cta, .opt1-hero__sec').forEach(link => {\n      if(link.getAttribute('href') === '/#care-finder'){\n        link.setAttribute('href', '/collections?view=pet-lovers');\n      }\n    });\n  }\n\n  function rewriteProductLinksToUpgradedPdp(){\n    // Disabled: product.json now serves bscly-loveco-pdp as the default template.\n    // Adding ?view=bscly-redesign to links was causing malformed URLs when\n    // Shopify search appended its own tracking params (?_pos, _sid, _ss).\n  }\n\n  function petHomeProofHtml(){\n    return `<section id=\"bscly-pet-home-proof-fallback\" style=\"background:#20251f;color:#fffdf7;border-top:1.5px solid #20251f;border-bottom:1.5px solid #20251f;padding:24px 16px\">\n      <div style=\"width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:18px;align-items:start\">\n        <div>\n          <span style=\"display:inline-flex;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 9px;color:#d7eadf;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase\">The BSCLY test</span>\n          <h2 style=\"margin:10px 0 0;color:#fffdf7;font-family:Georgia,serif;font-size:clamp(25px,3vw,38px);line-height:1\">One roof only works if every product has a clear job.</h2>\n          <p style=\"margin:9px 0 0;color:rgba(255,253,247,.72);font-size:13px;line-height:1.55\">Pet parents should not buy by product name alone. Route by pet, routine step, concern and usage moment before the sale.</p>\n        </div>\n        <div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px\">\n          <div style=\"border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.06);padding:13px\"><b style=\"display:block;margin-bottom:6px;color:#fffdf7;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase\">Buy when</b><span style=\"display:block;color:rgba(255,253,247,.68);font-size:12px;line-height:1.45\">Pet type, coat, concern and moment match the shelf role.</span></div>\n          <div style=\"border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.06);padding:13px\"><b style=\"display:block;margin-bottom:6px;color:#fffdf7;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase\">Pair when</b><span style=\"display:block;color:rgba(255,253,247,.68);font-size:12px;line-height:1.45\">The problem needs a routine, not a single random product.</span></div>\n          <div style=\"border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.06);padding:13px\"><b style=\"display:block;margin-bottom:6px;color:#fffdf7;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase\">Skip when</b><span style=\"display:block;color:rgba(255,253,247,.68);font-size:12px;line-height:1.45\">The fit is unclear, the pet is sensitive, or the role is wrong.</span></div>\n        </div>\n      </div>\n    </section>`;\n  }\n\n  function promisesWeKeepHtml(){\n    const icon = (paths) => `<svg viewBox=\"0 0 24 24\" width=\"26\" height=\"26\" fill=\"none\" stroke=\"#b6934f\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">${paths}</svg>`;\n    const truck = icon('<path d=\"M1 3h13v10H1z\"/><path d=\"M14 7h4l3 3v3h-7z\"/><circle cx=\"5.5\" cy=\"17\" r=\"1.8\"/><circle cx=\"17.5\" cy=\"17\" r=\"1.8\"/>');\n    const flask = icon('<path d=\"M9 2h6\"/><path d=\"M10 2v6L5 18a2 2 0 0 0 1.8 3h10.4A2 2 0 0 0 19 18l-5-10V2\"/><path d=\"M7.5 14h9\"/>');\n    const shield = icon('<path d=\"M12 2 4 5v6c0 5 3.5 8 8 11 4.5-3 8-6 8-11V5z\"/><path d=\"M9 12l2 2 4-4\"/>');\n    const returns = icon('<path d=\"M3 12a9 9 0 0 1 15-6.7L21 8\"/><path d=\"M21 3v5h-5\"/><path d=\"M21 12a9 9 0 0 1-15 6.7L3 16\"/><path d=\"M3 21v-5h5\"/>');\n    const item = (svg, title, line1, line2) => `<div style=\"text-align:center\">\n        <div style=\"width:64px;height:64px;margin:0 auto 18px;border-radius:999px;background:#fffdf7;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(120,90,40,.10)\">${svg}</div>\n        <h3 style=\"margin:0 0 8px;font-family:Georgia,serif;font-size:20px;font-weight:600;color:#20251f\">${title}</h3>\n        <p style=\"margin:0;color:#8a8272;font-size:13px;line-height:1.5\">${line1}<br>${line2}</p>\n      </div>`;\n    return `<section id=\"bscly-promises-we-keep\" style=\"background:linear-gradient(180deg,#fbf3e6 0%,#f4e8d3 100%);padding:56px 16px 0\">\n      <div style=\"width:min(1180px,100%);margin:auto;text-align:center\">\n        <span style=\"display:inline-block;color:#b6934f;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase\">\u2014 Promises We Keep \u2014</span>\n        <h2 style=\"margin:18px 0 0;font-family:Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(30px,4vw,42px);line-height:1.1;color:#20251f\">Crafted with <span style=\"color:#b6934f\">care</span>, delivered with <span style=\"color:#b6934f\">conscience</span>.</h2>\n        <div style=\"width:44px;height:2px;background:#b6934f;margin:20px auto 0;border-radius:2px\"></div>\n        <div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin-top:44px\">\n          ${item(truck, 'Delivered Across India', 'From our Ambala studio to your door', '\u2014 wherever home is.')}\n          ${item(flask, 'Made in India', 'Built for Indian body-care routines,', 'heat, humidity and daily use.')}\n          ${item(shield, 'Secure Checkout', 'Your details, kept safe end to end.', 'Every single time.')}\n          ${item(returns, '14-Day Returns', 'On sealed items. Arrived damaged or', 'wrong? We replace it free.')}\n        </div>\n      </div>\n    </section>`;\n  }\n\n  function injectPromisesWeKeep(){\n    const path = window.location.pathname.replace(/\\/+$/, '') || '/';\n    if(path !== '/' || document.getElementById('bscly-promises-we-keep')) return;\n\n    const target = document.querySelector('[id^=\"bscly-home-hub-\"] .hub-wrap') || document.querySelector('main') || document.body;\n    target.insertAdjacentHTML('beforeend', promisesWeKeepHtml());\n  }\n\n  function collectionProofHtml(){\n    return `<section id=\"bscly-collection-proof-fallback\" style=\"border:1.5px solid #20251f;border-radius:16px;background:#fffdf7;color:#20251f;padding:20px;margin:0 auto 34px;width:min(1180px,calc(100% - 32px))\">\n      <div style=\"display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:18px;align-items:start\">\n        <div>\n          <span style=\"display:inline-flex;border:1.5px solid #20251f;border-radius:999px;padding:7px 10px;background:#c8e03a;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#20251f\">Proof before product</span>\n          <h2 style=\"font-family:Georgia,serif;font-size:clamp(28px,4vw,48px);line-height:1;margin:14px 0 8px;color:#20251f\">Do not let pet parents guess.</h2>\n          <p style=\"margin:0;color:#66705e;font-size:14px;line-height:1.55\">A real pet-care home gives shoppers a reason to choose, pair or skip before entering any collection.</p>\n        </div>\n        <div style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px\">\n          <div style=\"border:1.5px solid #20251f;border-radius:12px;padding:14px;background:#f8e5bd\"><b style=\"display:block;font-size:14px;margin-bottom:5px;color:#20251f\">Buy when the fit is clear</b><span style=\"display:block;font-size:12.5px;line-height:1.45;color:#66705e\">The shelf matches pet type, coat, concern, weather and the actual use moment.</span></div>\n          <div style=\"border:1.5px solid #20251f;border-radius:12px;padding:14px;background:#d7eadf\"><b style=\"display:block;font-size:14px;margin-bottom:5px;color:#20251f\">Pair when the problem repeats</b><span style=\"display:block;font-size:12.5px;line-height:1.45;color:#66705e\">Cleanse with condition, outdoor support with paw repair, refresh with wipes.</span></div>\n          <div style=\"border:1.5px solid #20251f;border-radius:12px;padding:14px;background:#d9edf2\"><b style=\"display:block;font-size:14px;margin-bottom:5px;color:#20251f\">Ask when unsure</b><span style=\"display:block;font-size:12.5px;line-height:1.45;color:#66705e\">Sensitive pets, unclear cat fit or mixed routines need support first.</span></div>\n          <div style=\"border:1.5px solid #20251f;border-radius:12px;padding:14px;background:#f2d6e4\"><b style=\"display:block;font-size:14px;margin-bottom:5px;color:#20251f\">Skip when the role is wrong</b><span style=\"display:block;font-size:12.5px;line-height:1.45;color:#66705e\">Buy only when the care role solves today's pet-parent problem.</span></div>\n        </div>\n      </div>\n    </section>`;\n  }\n\n  function injectHomepagePetHomeProof(){\n    const path = window.location.pathname.replace(/\\/+$/, '') || '/';\n    if(path !== '/' || document.body.innerHTML.includes('The BSCLY test')) return;\n\n    const target = document.querySelector('[id^=\"bscly-home-hub-\"] .hub-wrap') || document.querySelector('main') || document.body;\n    target.insertAdjacentHTML(target.matches('[id^=\"bscly-home-hub-\"] .hub-wrap') ? 'beforeend' : 'beforeend', petHomeProofHtml());\n  }\n\n  function injectCollectionProof(){\n    const path = window.location.pathname.replace(/\\/+$/, '');\n    if(path !== '/collections' || document.body.innerHTML.includes('Proof before product')) return;\n\n    const fallbackWrap = document.querySelector('#bscly-live-route-fallback .bscly-live-wrap');\n    if(fallbackWrap){\n      fallbackWrap.insertAdjacentHTML('beforeend', collectionProofHtml());\n      return;\n    }\n\n    const routeBlock = Array.from(document.querySelectorAll('section, div')).find(el => el.textContent && el.textContent.includes('Route the problem before the product'));\n    if(routeBlock){\n      routeBlock.insertAdjacentHTML('afterend', collectionProofHtml());\n    }\n  }\n\n  function productPairStory(){\n    const text = (document.title + ' ' + document.body.innerText).toLowerCase();\n    if(text.includes('cat') || text.includes('meow')) return 'Pair only with cat-fit cleanup or grooming tools. Do not borrow dog routines for cat care.';\n    if(text.includes('conditioner') || text.includes('detangl')) return 'Pair after shampoo when comb-through, knots or post-bath coat finish are the real problem.';\n    if(text.includes('tick') || text.includes('flea') || text.includes('protect')) return 'Pair with wipes or paw repair after walks, parks, boarding spaces or monsoon corners.';\n    if(text.includes('paw') || text.includes('balm') || text.includes('nose')) return 'Pair after outdoor cleanup when paws, nose or rough patches need repeat care.';\n    if(text.includes('deodor') || text.includes('perfume') || text.includes('fresh') || text.includes('dry shampoo') || text.includes('dry bath') || text.includes('foaming')) return 'Pair with wipes or bath-day wash. Use between full baths, not as a replacement for every bath.';\n    return 'Pair with conditioner, paw care or refresh only when the routine needs the next clear step.';\n  }\n\n  function injectProductBuyRules(){\n    const path = window.location.pathname.replace(/\\/+$/, '');\n    if(!path.startsWith('/products/')) return;\n\n    document.querySelectorAll('.pdp-proof-card__skip strong').forEach(strong => {\n      if(strong.textContent.trim().toLowerCase().startsWith('skip this if')) strong.textContent = 'Skip when:';\n    });\n\n    const form = document.getElementById('bch-atc-form');\n    if(!form || document.getElementById('bscly-pdp-buy-rules-fallback')) return;\n\n    const proof = document.querySelector('.pdp-proof-card__body p')?.textContent?.trim() || 'Buy when the pet type, concern and use moment match this product role.';\n    const skip = document.querySelector('.pdp-proof-card__skip')?.textContent?.replace(/^Skip (this if|when):\\s*/i, '').trim() || 'Skip when the fit is unclear, the pet is sensitive, or the routine role is wrong.';\n    const pair = productPairStory();\n\n    if(!document.getElementById('bscly-pdp-buy-rules-style')){\n      document.head.insertAdjacentHTML('beforeend', '<style id=\"bscly-pdp-buy-rules-style\">#bscly-pdp-buy-rules-fallback{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.bscly-pdp-buy-rule{border:1.5px solid #20251f;border-radius:12px;background:#fff;padding:10px 11px;box-shadow:2px 2px 0 rgba(44,62,45,.14);box-sizing:border-box}.bscly-pdp-buy-rule strong{display:block;margin-bottom:4px;color:#20251f;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:900;letter-spacing:.1em;line-height:1.15;text-transform:uppercase}.bscly-pdp-buy-rule span{display:block;color:#66705e;font-size:11.5px;font-weight:650;line-height:1.4}@media(max-width:420px){#bscly-pdp-buy-rules-fallback{grid-template-columns:1fr}}</style>');\n    }\n\n    form.insertAdjacentHTML('afterend', `<div id=\"bscly-pdp-buy-rules-fallback\" aria-label=\"Buy, pair and skip guidance\">\n      <div class=\"bscly-pdp-buy-rule\"><strong>Buy when</strong><span>${proof}</span></div>\n      <div class=\"bscly-pdp-buy-rule\"><strong>Pair with</strong><span>${pair}</span></div>\n      <div class=\"bscly-pdp-buy-rule\"><strong>Skip when</strong><span>${skip}</span></div>\n    </div>`);\n  }\n\n  function hydrateLiveRouteGuards(){\n    rewriteHomepagePetLoversLinks();\n    rewriteProductLinksToUpgradedPdp();\n    injectCareRouteFallback();\n    injectPromisesWeKeep();\n    injectCollectionProof();\n    injectProductBuyRules();\n  }\n\n  if(document.readyState === 'loading'){\n    document.addEventListener('DOMContentLoaded', hydrateLiveRouteGuards);\n  } else {\n    hydrateLiveRouteGuards();\n  }\n})();\n"],
  "mappings": "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",
  "names": []
}
