{"product_id":"civic-access-pouch-0-5l-waxed-canvas","title":"Civic Access Pouch 0.5L - Waxed Canvas","description":"\u003cdiv id=\"feat\"\u003e\n\n\u003ch5\u003eEVERGOODS COMPACT, PROTECTIVE ORGANIZER IN A CUSTOM WAXED CANVAS SHELL\u003c\/h5\u003e\n\n\n\n\u003cul\u003e\n\u003cli\u003eBuilt with extremely durable P400 Wax C4X, a high-end waxed cotton shell we custom developed\u003c\/li\u003e\n\u003cli\u003eEnd-to-end zipper and 360° of padding\u003c\/li\u003e\n\u003cli\u003eHeritage edition with string + button closure and leather details\u003c\/li\u003e\n\u003cli\u003e360° of foam padding provides structure and protection for your contents.\u003c\/li\u003e\n\u003cli\u003eTwo (2) internal full-length pockets, one (1) opaque and one (1) mesh.\u003c\/li\u003e\n\u003cli\u003eInternal pockets collapse to the side when not in use, creating a variable and flexible loading main cavity.\u003c\/li\u003e\n\u003cli\u003eOpens and sits flat like a tray on a tabletop for easy viewing and access.\u003c\/li\u003e\n\u003cli\u003eP400 Wax C4X is weatherproof, durable, and ages beautifully\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003c\/div\u003e\n\u003cdiv class=\"product-description\"\u003e\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cp\u003eCIVIC Access Pouch 0.5L is known for its 360° of padding, intuitive organization, and compact size. We’ve reimagined this go-to tool with P400 Wax C4X, a custom, high-end waxed cotton shell developed in collaboration with historic Scottish mill Halley Stevensons that only gets better with age. Along with a few additional upgrades like leather zipper pullers, this heritage edition is built to create its own legacy.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"spec\"\u003e\n\u003cmeta charset=\"UTF-8\"\u003e \u003cstrong\u003eShell Textile\u003c\/strong\u003e\u003cbr\u003e\u003cspan\u003eP400 Wax C4X – Custom developed with Scottish Mill, Halley Stevensons\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eLining Fabric\u003c\/strong\u003e\u003cbr\u003e\u003cspan\u003e210d HT nylon 6,6 HT with PU coating on back and silicone finish on the face\u003c\/span\u003e\u003cbr\u003e\u003cstrong\u003e\u003cbr\u003eInternal Zippers\u003c\/strong\u003e\u003cbr\u003e\u003cspan\u003eChain: YKK #5RC with DWR finish\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eDimensions\u003c\/strong\u003e\u003cbr\u003e\u003cspan\u003e8.5 x 2.4 x 2.25 in | 21.6 x 6 x 5.7 cm\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eWeight\u003c\/strong\u003e\u003cbr\u003e\u003cspan\u003e3.8oz | 107.7g\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"war\"\u003eLifetime\u003c\/div\u003e\n\u003csection class=\"cap05w-carousel\" data-cap05w-carousel aria-labelledby=\"cap05w-carousel-title\"\u003e\n  \u003cdiv class=\"cap05w-carousel__header\"\u003e\n    \u003ch2 id=\"cap05w-carousel-title\"\u003ePRODUCT FEATURES\u003c\/h2\u003e\n\n    \u003cdiv class=\"cap05w-carousel__controls\"\u003e\n      \u003cbutton type=\"button\" class=\"cap05w-carousel__arrow\" data-cap05w-previous aria-label=\"Previous feature\"\u003e←\u003c\/button\u003e\n      \u003cbutton type=\"button\" class=\"cap05w-carousel__arrow\" data-cap05w-next aria-label=\"Next feature\"\u003e→\u003c\/button\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"cap05w-carousel__viewport\" data-cap05w-viewport role=\"region\" aria-label=\"CIVIC Access Pouch 0.5L Waxed Canvas features\" tabindex=\"0\"\u003e\n    \u003cdiv class=\"cap05w-carousel__track\" data-cap05w-track\u003e\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-tough-fabric_1.jpg?v=1792192761\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-tough-fabric_1.jpg?v=1792192761\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-tough-fabric_1.jpg?v=1792192761\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-tough-fabric_1.jpg?v=1792192761\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas Tan tough material\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003eA DECADE OF TOUGH\u003c\/h3\u003e\n          \u003cp\u003eDeveloped with Scottish mill Halley Stevensons, the P400 Wax C4X shell pairs a tear-resistant cotton weave with a hard, crystalline wax finish built for demanding everyday use.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-leather-details_1.jpg?v=1792192760\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-leather-details_1.jpg?v=1792192760\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-leather-details_1.jpg?v=1792192760\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-leather-details_1.jpg?v=1792192760\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas Tan leather details\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003eLEATHER DETAILS\u003c\/h3\u003e\n          \u003cp\u003eFull-grain, aniline-dyed 3\/4 oz chrome-tanned leather adds a refined finish to the zipper pull and exterior style label.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-interior-vis_1.jpg?v=1792192760\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-interior-vis_1.jpg?v=1792192760\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-interior-vis_1.jpg?v=1792192760\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-interior-vis_1.jpg?v=1792192760\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas Tan open interior\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003eENHANCED VISIBILITY\u003c\/h3\u003e\n          \u003cp\u003eA standard-gray 210D high-tenacity nylon lining improves contrast inside the pouch, helping small tools and everyday essentials stand out.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-padded_1.jpg?v=1792192760\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-padded_1.jpg?v=1792192760\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-padded_1.jpg?v=1792192760\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-padded_1.jpg?v=1792192760\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas Tan padded construction\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003ePANORAMIC DEFENSE\u003c\/h3\u003e\n          \u003cp\u003eThe torpedo-shaped body is wrapped in protective foam, cushioning the contents from every direction while keeping a compact profile.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-workstation_1.jpg?v=1792192760\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-workstation_1.jpg?v=1792192760\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-workstation_1.jpg?v=1792192760\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-workstation_1.jpg?v=1792192760\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas mobile workstation\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003eMOBILE WORKSTATION\u003c\/h3\u003e\n          \u003cp\u003eTwo zippered side pockets—one opaque and one mesh—organize small items. Both float above the base so they can collapse out of the way when unused.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n\n      \u003carticle class=\"cap05w-card\" data-cap05w-slide\u003e\n        \u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-fits-pockets_1.jpg?v=1792192760\u0026amp;width=1200\" srcset=\"\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-fits-pockets_1.jpg?v=1792192760\u0026amp;width=480 480w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-fits-pockets_1.jpg?v=1792192760\u0026amp;width=740 740w,\n            https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-fits-pockets_1.jpg?v=1792192760\u0026amp;width=1200 1200w\" sizes=\"(min-width: 1000px) 33vw, (min-width: 600px) 50vw, 87vw\" alt=\"CIVIC Access Pouch 0.5L Waxed Canvas Tan fitted in a bag pocket\" width=\"1200\" height=\"1500\" loading=\"lazy\" decoding=\"async\"\u003e\n        \u003cdiv class=\"cap05w-card__content\"\u003e\n          \u003ch3\u003eTHE PERFECT PAIR\u003c\/h3\u003e\n          \u003cp\u003eIts compact shape is sized to fit a range of pockets throughout the EVERGOODS bag ecosystem, making it easy to move between carry setups.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/article\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"cap05w-carousel__dots\" data-cap05w-dots aria-label=\"Choose a product feature\"\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003cstyle\u003e\n  .cap05w-carousel {\n    --cap05w-gap: 30px;\n    --cap05w-columns: 1.15;\n    --cap05w-edge: 16px;\n    width: 100%;\n    margin: 50px 0;\n    overflow: hidden;\n    color: rgb(26 26 26);\n    font-family: var(--text-font-family, Inter, sans-serif);\n  }\n\n  .cap05w-carousel *,\n  .cap05w-carousel *::before,\n  .cap05w-carousel *::after {\n    box-sizing: border-box;\n  }\n\n  .cap05w-carousel__header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 20px;\n    margin: 0 var(--cap05w-edge) 24px;\n  }\n\n  .cap05w-carousel__header h2 {\n    margin: 0;\n    color: rgb(26 26 26);\n    font-family: var(--heading-font-family, Barlow, sans-serif);\n    font-size: clamp(26px, 4vw, 42px);\n    font-style: var(--heading-font-style, normal);\n    font-weight: var(--heading-font-weight, 700);\n    line-height: 1;\n    letter-spacing: 0.02em;\n  }\n\n  .cap05w-carousel__controls {\n    display: flex;\n    flex: 0 0 auto;\n    gap: 10px;\n  }\n\n  .cap05w-carousel__arrow {\n    display: grid;\n    width: 44px;\n    height: 44px;\n    padding: 0;\n    place-items: center;\n    border: 0;\n    border-radius: var(--rounded-button, 9999px);\n    background: rgb(var(--button-background-primary, 26 26 26));\n    color: #fff;\n    font: inherit;\n    font-size: 21px;\n    line-height: 1;\n    cursor: pointer;\n    transition: opacity 0.2s ease, transform 0.2s ease;\n  }\n\n  .cap05w-carousel__arrow:hover:not(:disabled) {\n    transform: scale(1.05);\n  }\n\n  .cap05w-carousel__arrow:focus-visible,\n  .cap05w-carousel__dots button:focus-visible,\n  .cap05w-carousel__viewport:focus-visible {\n    outline: 2px solid currentColor;\n    outline-offset: 3px;\n  }\n\n  .cap05w-carousel__arrow:disabled {\n    opacity: 0.28;\n    cursor: default;\n  }\n\n  .cap05w-carousel__viewport {\n    width: 100%;\n    overflow-x: auto;\n    overscroll-behavior-x: contain;\n    scroll-padding-inline: var(--cap05w-edge);\n    scroll-snap-type: x mandatory;\n    scrollbar-width: none;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .cap05w-carousel__viewport::-webkit-scrollbar {\n    display: none;\n  }\n\n  .cap05w-carousel__track {\n    display: grid;\n    grid-auto-columns: calc(\n      (100% - (var(--cap05w-gap) * (var(--cap05w-columns) - 1))) \/\n      var(--cap05w-columns)\n    );\n    grid-auto-flow: column;\n    grid-template-columns: none;\n    gap: var(--cap05w-gap);\n    padding-inline: var(--cap05w-edge);\n  }\n\n  .cap05w-card {\n    display: flex;\n    min-width: 0;\n    overflow: hidden;\n    flex-direction: column;\n    scroll-snap-align: start;\n    scroll-snap-stop: always;\n    border: 0;\n    border-radius: var(--rounded-sm, 0.375rem);\n    background: rgb(var(--product-card-background, 255 255 255));\n    box-shadow: none;\n  }\n\n  .cap05w-card \u003e img {\n    display: block;\n    width: 100%;\n    aspect-ratio: 4 \/ 5;\n    object-fit: cover;\n    background: rgb(240 240 240);\n    border-radius:\n      var(--rounded-sm, 0.375rem)\n      var(--rounded-sm, 0.375rem)\n      0\n      0;\n  }\n\n  .cap05w-card__content {\n    flex: 1;\n    padding: 20px;\n    background: rgb(var(--product-card-background, 255 255 255));\n  }\n\n  .cap05w-card__content h3 {\n    margin: 0 0 12px;\n    color: rgb(26 26 26);\n    font-family: var(--heading-font-family, Barlow, sans-serif);\n    font-size: 20px;\n    font-style: var(--heading-font-style, normal);\n    font-weight: var(--heading-font-weight, 700);\n    line-height: 1.2;\n  }\n\n  .cap05w-card__content p {\n    margin: 0;\n    color: rgb(26 26 26 \/ 0.75);\n    font-family: var(--text-font-family, Inter, sans-serif);\n    font-size: 15px;\n    font-weight: var(--text-font-weight, 400);\n    line-height: 1.6;\n  }\n\n  .cap05w-carousel__dots {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 9px;\n    padding: 22px var(--cap05w-edge) 0;\n  }\n\n  .cap05w-carousel__dots button {\n    width: 8px;\n    height: 8px;\n    padding: 0;\n    border: 0;\n    border-radius: 50%;\n    background: rgb(26 26 26 \/ 0.25);\n    cursor: pointer;\n    transition: background-color 0.2s ease, transform 0.2s ease;\n  }\n\n  .cap05w-carousel__dots button[aria-current=\"true\"] {\n    background: rgb(26 26 26);\n    transform: scale(1.3);\n  }\n\n  @media screen and (min-width: 600px) {\n    .cap05w-carousel {\n      --cap05w-columns: 2;\n      --cap05w-edge: 30px;\n    }\n  }\n\n  @media screen and (min-width: 1000px) {\n    .cap05w-carousel {\n      --cap05w-columns: 3;\n      --cap05w-edge: 50px;\n    }\n\n    .cap05w-carousel__dots {\n      display: none;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    .cap05w-carousel__arrow,\n    .cap05w-carousel__dots button {\n      transition: none;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cscript\u003e\n  (function () {\n    function initializeCarousel(root) {\n      if (root.dataset.cap05wReady === 'true') return;\n\n      var viewport = root.querySelector('[data-cap05w-viewport]');\n      var track = root.querySelector('[data-cap05w-track]');\n      var slides = Array.prototype.slice.call(\n        root.querySelectorAll('[data-cap05w-slide]')\n      );\n      var previousButton = root.querySelector('[data-cap05w-previous]');\n      var nextButton = root.querySelector('[data-cap05w-next]');\n      var dotsContainer = root.querySelector('[data-cap05w-dots]');\n\n      if (\n        !viewport ||\n        !track ||\n        !previousButton ||\n        !nextButton ||\n        !dotsContainer ||\n        slides.length === 0\n      ) return;\n\n      root.dataset.cap05wReady = 'true';\n\n      var dots = [];\n      var activeIndex = 0;\n      var scrollFrame = 0;\n\n      function trackInset() {\n        var styles = window.getComputedStyle(track);\n\n        return parseFloat(\n          styles.paddingInlineStart || styles.paddingLeft\n        ) || 0;\n      }\n\n      function slidePosition(slide) {\n        return Math.max(0, slide.offsetLeft - trackInset());\n      }\n\n      function nearestSlideIndex() {\n        var currentPosition = viewport.scrollLeft;\n        var closestIndex = 0;\n        var closestDistance = Infinity;\n\n        slides.forEach(function (slide, index) {\n          var distance = Math.abs(\n            slidePosition(slide) - currentPosition\n          );\n\n          if (distance \u003c closestDistance) {\n            closestDistance = distance;\n            closestIndex = index;\n          }\n        });\n\n        return closestIndex;\n      }\n\n      function updateControls() {\n        var maximumScroll = Math.max(\n          0,\n          viewport.scrollWidth - viewport.clientWidth\n        );\n\n        activeIndex = nearestSlideIndex();\n\n        dots.forEach(function (dot, index) {\n          dot.setAttribute(\n            'aria-current',\n            index === activeIndex ? 'true' : 'false'\n          );\n        });\n\n        previousButton.disabled = viewport.scrollLeft \u003c= 2;\n        nextButton.disabled =\n          viewport.scrollLeft \u003e= maximumScroll - 2;\n      }\n\n      function goToSlide(index) {\n        var maximumScroll = Math.max(\n          0,\n          viewport.scrollWidth - viewport.clientWidth\n        );\n        var reducedMotion = window.matchMedia(\n          '(prefers-reduced-motion: reduce)'\n        ).matches;\n        var safeIndex = Math.max(\n          0,\n          Math.min(index, slides.length - 1)\n        );\n\n        viewport.scrollTo({\n          left: Math.min(\n            slidePosition(slides[safeIndex]),\n            maximumScroll\n          ),\n          behavior: reducedMotion ? 'auto' : 'smooth'\n        });\n      }\n\n      slides.forEach(function (slide, index) {\n        slide.setAttribute(\n          'aria-label',\n          String(index + 1) + ' of ' + String(slides.length)\n        );\n\n        var dot = document.createElement('button');\n\n        dot.type = 'button';\n        dot.setAttribute(\n          'aria-label',\n          'Go to product feature ' + String(index + 1)\n        );\n\n        dot.addEventListener('click', function () {\n          goToSlide(index);\n        });\n\n        dotsContainer.appendChild(dot);\n        dots.push(dot);\n      });\n\n      previousButton.addEventListener('click', function () {\n        goToSlide(activeIndex - 1);\n      });\n\n      nextButton.addEventListener('click', function () {\n        goToSlide(activeIndex + 1);\n      });\n\n      viewport.addEventListener('keydown', function (event) {\n        if (event.key === 'ArrowLeft') {\n          event.preventDefault();\n          goToSlide(activeIndex - 1);\n        }\n\n        if (event.key === 'ArrowRight') {\n          event.preventDefault();\n          goToSlide(activeIndex + 1);\n        }\n      });\n\n      viewport.addEventListener(\n        'scroll',\n        function () {\n          if (scrollFrame) {\n            window.cancelAnimationFrame(scrollFrame);\n          }\n\n          scrollFrame =\n            window.requestAnimationFrame(updateControls);\n        },\n        { passive: true }\n      );\n\n      if ('ResizeObserver' in window) {\n        new ResizeObserver(updateControls).observe(viewport);\n      } else {\n        window.addEventListener('resize', updateControls);\n      }\n\n      updateControls();\n    }\n\n    function initializeAllCarousels(container) {\n      var scope =\n        container \u0026\u0026 container.querySelectorAll\n          ? container\n          : document;\n\n      scope\n        .querySelectorAll('[data-cap05w-carousel]')\n        .forEach(initializeCarousel);\n    }\n\n    if (document.readyState === 'loading') {\n      document.addEventListener('DOMContentLoaded', function () {\n        initializeAllCarousels(document);\n      });\n    } else {\n      initializeAllCarousels(document);\n    }\n\n    document.addEventListener(\n      'shopify:section:load',\n      function (event) {\n        initializeAllCarousels(event.target);\n      }\n    );\n  })();\n\u003c\/script\u003e","brand":"EVERGOODS","offers":[{"title":"Waxed Tan","offer_id":50695824310342,"sku":"EVGOCAP.5L-WTN","price":289.0,"currency_code":"MYR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/CIVIC-ACCESS-POUCH-0.5L-WAXED-CANVAS-TAN-CAP0.5-FRONT_1.png?v=1792601963","url":"https:\/\/storminggravity.com\/zh\/products\/civic-access-pouch-0-5l-waxed-canvas","provider":"Storming Gravity","version":"1.0","type":"link"}