{"product_id":"civic-travel-bag-26l-ultra","title":"Civic Travel Bag 26L - Ultra","description":"\u003cdiv class=\"product-description\"\u003e\n\n\u003ch3\u003e我們屢獲殊榮的旅行背包最先進版本\u003c\/h3\u003e\n\n\u003cp\u003e這款限量版 CTB26 專為 2026 ULTRA 旅行系統而打造，將我們功能齊全的旅行平台與 ULTRA 200X 相結合，打造出一款更輕巧的背包，具有出色的耐用性、防水外殼紡織品和亮白色內部，可提高裝備可見度。專為希望減少煩惱的旅行者設計，這是我們生產過的 CTB26 性能最佳的版本。\u003c\/p\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eBlack Magic ULTRA 200X 紡織品將出色的耐用性和防水性與輕巧、時尚的外觀融為一體\u003c\/li\u003e\n\n\u003cli\u003e我們功能齊全、暢銷的旅行背包，配有標誌性的面板裝載和水瓶口袋\u003c\/li\u003e\n\n\u003cli\u003e亮白色內部，可提高裝備可見度，適用於整個 ULTRA 旅行系統\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\n\u003c\/div\u003e\n\u003cdiv id=\"feat\"\u003e\n\n\u003cmeta charset=\"UTF-8\"\u003e\n\n\u003cp\u003e\u003cstrong\u003e 外部特色\u003c\/strong\u003e\u003c\/p\u003e\n\n\u003cul\u003e\n\n\u003cli\u003e彈力編織側面水瓶口袋\u003c\/li\u003e\n\n\u003cli\u003e行李直通套\u003c\/li\u003e\n\n\u003cli\u003e深層前置收納口袋\u003c\/li\u003e\n\n\u003cli\u003e前側開口口袋，附內部收納和鑰匙扣\u003c\/li\u003e\n\n\u003cli\u003e快速存取 3D 軛部口袋\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003cp\u003e\u003cstrong\u003e內部特色\u003c\/strong\u003e\u003c\/p\u003e\n\n\u003cul\u003e\n\n\u003cli\u003e帶襯墊和懸掛式筆記型電腦口袋，可保護最大 16 英寸的設備。適用於 Macbook Pro 16 英寸。\u003c\/li\u003e\n\n\u003cli\u003e用於平板電腦、科技產品或文件的懸掛式彈力套\u003c\/li\u003e\n\n\u003cli\u003e帶有可插入式收納功能的安全拉鍊口袋\u003c\/li\u003e\n\n\u003cli\u003e網狀拉鍊口袋\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n  \u003ch4\u003e細節\u003c\/h4\u003e\n\n\u003cp\u003e\u003cspan\u003e- 斜裁面板，提高耐磨性或彈性\u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e- 差異化裁剪肩帶，打造自然曲線\u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e- 鋁製側支架，方便穩固地側背\u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e- 頂部提把外部的實用掛環，可暫時夾住\/固定較小的物品\u003c\/span\u003e\u003cbr\u003e\u003cspan\u003e- 環形標誌貼片可搭配我們的 Hi-Vis 貼片進行客製化\u003c\/span\u003e\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\u003cdiv id=\"spec\"\u003e\n\n\u003cp\u003e\u003cstrong\u003e外殼紡織品\u003c\/strong\u003e\u003cbr\u003eBlack Magic ULTRA 200X\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003e內裡布料\u003c\/strong\u003e\u003cbr\u003e白色 210D 尼龍 6,6，帶 PU 塗層和矽膠飾面\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003e材料細節\u003c\/strong\u003e\u003cbr\u003e- 肩墊泡棉：Zote EV50\u003cbr\u003e- 骨架板：HDPE\u003cbr\u003e- 鋁製側支撐：7075 級\u003cbr\u003e- 外部拉鍊：#10 和 #8 YKK RCPU 塗層拉鍊\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003e尺寸\u003c\/strong\u003e\u003cbr\u003e11.5\"W x 8\"D x 19\"H | 29.2W x 20.3D x 48.2H cm\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003e重量\u003c\/strong\u003e\u003cbr\u003e3 磅 3.5 盎司 | 1459 克\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\u003cstyle\u003e\n  .ctb-feature-carousel,\n  .ctb-feature-carousel * {\n    box-sizing: border-box;\n  }\n\n  .ctb-feature-carousel {\n    position: relative;\n    width: 100%;\n    max-width: 1440px;\n    margin: 40px auto;\n    padding-inline: 16px;\n    font-family: inherit;\n  }\n\n  .ctb-feature-carousel__track {\n    display: flex;\n    gap: 30px;\n    width: 100%;\n    margin: 0;\n    padding: 0;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scroll-snap-type: x mandatory;\n    overscroll-behavior-x: contain;\n    scrollbar-width: none;\n    touch-action: pan-x pan-y pinch-zoom;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .ctb-feature-carousel__track::-webkit-scrollbar {\n    display: none;\n  }\n\n  .ctb-feature-carousel__card {\n    flex: 0 0 86%;\n    min-width: 0;\n    margin: 0;\n    scroll-snap-align: start;\n    scroll-snap-stop: always;\n  }\n\n  .ctb-feature-carousel__image {\n    width: 100%;\n    overflow: hidden;\n    aspect-ratio: 4 \/ 5;\n    background: #f2f2f2;\n  }\n\n  .ctb-feature-carousel__image img {\n    display: block;\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    transition: transform 500ms ease;\n  }\n\n  .ctb-feature-carousel__card:hover img {\n    transform: scale(1.02);\n  }\n\n  .ctb-feature-carousel__title {\n    margin: 20px 0 10px;\n    color: inherit;\n    font: inherit;\n    font-size: 20px;\n    font-weight: 700;\n    line-height: 1.2;\n    letter-spacing: 0.01em;\n    text-transform: uppercase;\n  }\n\n  .ctb-feature-carousel__text {\n    margin: 0;\n    color: inherit;\n    font: inherit;\n    font-size: 15px;\n    line-height: 1.55;\n  }\n\n  .ctb-feature-carousel__arrow {\n    position: absolute;\n    top: 34%;\n    z-index: 3;\n    display: grid;\n    width: 46px;\n    height: 46px;\n    padding: 0;\n    border: 1px solid rgba(0, 0, 0, 0.15);\n    border-radius: 50%;\n    background: rgba(255, 255, 255, 0.94);\n    color: #111;\n    font: inherit;\n    font-size: 28px;\n    line-height: 1;\n    cursor: pointer;\n    place-items: center;\n    transform: translateY(-50%);\n    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.14);\n  }\n\n  .ctb-feature-carousel__arrow--previous {\n    left: 24px;\n  }\n\n  .ctb-feature-carousel__arrow--next {\n    right: 24px;\n  }\n\n  .ctb-feature-carousel__arrow:disabled {\n    visibility: hidden;\n    opacity: 0;\n    pointer-events: none;\n  }\n\n  .ctb-feature-carousel__arrow:focus-visible,\n  .ctb-feature-carousel__dot:focus-visible {\n    outline: 3px solid #3578e5;\n    outline-offset: 3px;\n  }\n\n  .ctb-feature-carousel__navigation {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 9px;\n    margin-top: 24px;\n  }\n\n  .ctb-feature-carousel__dot {\n    width: 9px;\n    height: 9px;\n    margin: 0;\n    padding: 0;\n    border: 0;\n    border-radius: 50%;\n    background: #b5b5b5;\n    cursor: pointer;\n    transition:\n      width 180ms ease,\n      border-radius 180ms ease,\n      background-color 180ms ease;\n  }\n\n  .ctb-feature-carousel__dot.is-active {\n    width: 26px;\n    border-radius: 999px;\n    background: #111;\n  }\n\n  @media (min-width: 900px) {\n    .ctb-feature-carousel {\n      padding-inline: 50px;\n    }\n\n    .ctb-feature-carousel__card {\n      flex-basis: calc((100% - 60px) \/ 3);\n    }\n\n    .ctb-feature-carousel__arrow {\n      top: 31%;\n      width: 52px;\n      height: 52px;\n      font-size: 31px;\n    }\n\n    .ctb-feature-carousel__arrow--previous {\n      left: 64px;\n    }\n\n    .ctb-feature-carousel__arrow--next {\n      right: 64px;\n    }\n\n    .ctb-feature-carousel__title {\n      font-size: 22px;\n    }\n\n    .ctb-feature-carousel__text {\n      font-size: 16px;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    .ctb-feature-carousel__track {\n      scroll-behavior: auto !important;\n    }\n\n    .ctb-feature-carousel__image img {\n      transition: none;\n    }\n  }\n\u003c\/style\u003e\n\n\u003csection class=\"ctb-feature-carousel\" data-ctb-feature-carousel role=\"region\" aria-roledescription=\"carousel\" aria-label=\"Civic Travel Bag 26L Ultra features\" tabindex=\"0\"\u003e\n  \u003cdiv class=\"ctb-feature-carousel__track\" data-feature-track\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-shell-200x.jpg?v=1788273554\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA 200X Shell\" loading=\"eager\" fetchpriority=\"high\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003eULTRA 200X 外殼\u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        ULTRA 200X 最初為高性能戶外裝備開發，結合了卓越的耐用性和輕量化。其防水夾層結構和 UHMWPE 纖維創造出堅固、技術性的外殼，專為嚴苛的旅行而設計。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-white-interior.jpg?v=1788273571\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA Bright White Interior\" loading=\"lazy\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003e亮白色內裡\u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        亮白色的訂製 210D 尼龍 6,6 內襯，讓您無論是在機艙行李架中翻找，還是在清晨航班前打包，都能更快找到您的裝備。輕量化的布料也有助於整體減輕重量，同時不影響耐用性。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-weather-ready-zippers.jpg?v=1788273547\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA Textile and Zippers\" loading=\"lazy\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003e防風雨拉鍊\u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        所有外部拉鍊均採用 YKK 最耐用的 RC 拉鍊，並帶有 PU\n        層壓，有助於防雨、防雪和防濺水，同時保持\n        順暢操作。與防水 ULTRA 外殼紡織品結合，\n        為在不可預測的條件下旅行增加了額外的防風雨層。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-panel-loading.jpg?v=1788273530\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA Signature Panel Loading\" loading=\"lazy\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003e經典面板式開口\u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        全貝殼式開口方便在裝載 CTB 時輕鬆打包。\n        內部網狀拉鍊口袋和不透明安全口袋（帶內部口袋）\n        增加了額外的內部收納空間。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-laptop-compartment.jpg?v=1788273563\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA Laptop Compartment\" loading=\"lazy\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003e筆記型電腦隔層\u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        帶襯墊和懸掛的筆記型電腦隔層，尺寸可容納最大 16 吋的設備。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n\n    \u003carticle class=\"ctb-feature-carousel__card\"\u003e\n      \u003cdiv class=\"ctb-feature-carousel__image\"\u003e\n\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/ctb26-ultra-feature-water-bottle-pockets.jpg?v=1788273539\u0026amp;width=1200\" alt=\"CIVIC Travel Bag 26L ULTRA Water Bottle Pockets\" loading=\"lazy\"\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch3 class=\"ctb-feature-carousel__title\"\u003e\n\n        雙側多功能口袋\n      \u003c\/h3\u003e\n\n\n      \u003cp class=\"ctb-feature-carousel__text\"\u003e\n        由耐用的四向彈力編織製成，兩個側袋可安全地\n        收納水瓶、雨傘和其他快速取用的必需品，同時\n        在不使用時保持簡潔的外觀。\n      \u003c\/p\u003e\n\n    \u003c\/article\u003e\n  \u003c\/div\u003e\n\n\n  \u003cbutton class=\"ctb-feature-carousel__arrow ctb-feature-carousel__arrow--previous\" type=\"button\" data-feature-previous aria-label=\"Previous features\"\u003e‹\u003c\/button\u003e\n\n  \u003cbutton class=\"ctb-feature-carousel__arrow ctb-feature-carousel__arrow--next\" type=\"button\" data-feature-next aria-label=\"Next features\"\u003e›\u003c\/button\u003e\n\n  \u003cdiv class=\"ctb-feature-carousel__navigation\" data-feature-navigation aria-label=\"Feature carousel navigation\"\u003e\u003c\/div\u003e\n\n\u003c\/section\u003e\n\n\u003cscript\u003e\n(function () {\n  function initializeFeatureCarousel(root) {\n    if (root.dataset.featureCarouselReady === 'true') return;\n    root.dataset.featureCarouselReady = 'true';\n\n    var track = root.querySelector('[data-feature-track]');\n    var cards = Array.prototype.slice.call(\n      root.querySelectorAll('.ctb-feature-carousel__card')\n    );\n    var previousButton = root.querySelector('[data-feature-previous]');\n    var nextButton = root.querySelector('[data-feature-next]');\n    var navigation = root.querySelector('[data-feature-navigation]');\n    var positions = [];\n    var dots = [];\n    var currentPage = 0;\n    var scrollFrame;\n\n    cards.forEach(function (card, index) {\n      card.setAttribute('role', 'group');\n      card.setAttribute('aria-roledescription', 'slide');\n      card.setAttribute(\n        'aria-label',\n        String(index + 1) + ' of ' + String(cards.length)\n      );\n    });\n\n    function reducedMotion() {\n      return window.matchMedia(\n        '(prefers-reduced-motion: reduce)'\n      ).matches;\n    }\n\n    function calculatePositions() {\n      var maximumScroll = Math.max(\n        0,\n        track.scrollWidth - track.clientWidth\n      );\n      var nextPositions = [];\n\n      cards.forEach(function (card) {\n        var position = Math.min(\n          card.offsetLeft - track.offsetLeft,\n          maximumScroll\n        );\n\n        if (\n          !nextPositions.length ||\n          Math.abs(position - nextPositions[nextPositions.length - 1]) \u003e 2\n        ) {\n          nextPositions.push(position);\n        }\n      });\n\n      positions = nextPositions.length ? nextPositions : [0];\n      currentPage = Math.max(\n        0,\n        Math.min(currentPage, positions.length - 1)\n      );\n\n      buildNavigation();\n      updateControls();\n    }\n\n    function buildNavigation() {\n      navigation.innerHTML = '';\n      dots = [];\n\n      positions.forEach(function (_position, index) {\n        var dot = document.createElement('button');\n\n        dot.type = 'button';\n        dot.className = 'ctb-feature-carousel__dot';\n        dot.setAttribute(\n          'aria-label',\n          'Go to feature group ' +\n            String(index + 1) +\n            ' of ' +\n            String(positions.length)\n        );\n\n        dot.addEventListener('click', function () {\n          goToPage(index);\n        });\n\n        navigation.appendChild(dot);\n        dots.push(dot);\n      });\n    }\n\n    function updateControls() {\n      previousButton.disabled = currentPage === 0;\n      nextButton.disabled = currentPage === positions.length - 1;\n\n      dots.forEach(function (dot, index) {\n        var active = index === currentPage;\n        dot.classList.toggle('is-active', active);\n        dot.setAttribute('aria-current', active ? 'true' : 'false');\n      });\n    }\n\n    function goToPage(index, behavior) {\n      currentPage = Math.max(\n        0,\n        Math.min(index, positions.length - 1)\n      );\n\n      track.scrollTo({\n        left: positions[currentPage],\n        behavior: behavior || (reducedMotion() ? 'auto' : 'smooth')\n      });\n\n      updateControls();\n    }\n\n    function findNearestPage() {\n      var nearestIndex = 0;\n      var nearestDistance = Infinity;\n\n      positions.forEach(function (position, index) {\n        var distance = Math.abs(track.scrollLeft - position);\n\n        if (distance \u003c nearestDistance) {\n          nearestDistance = distance;\n          nearestIndex = index;\n        }\n      });\n\n      return nearestIndex;\n    }\n\n    previousButton.addEventListener('click', function () {\n      goToPage(currentPage - 1);\n    });\n\n    nextButton.addEventListener('click', function () {\n      goToPage(currentPage + 1);\n    });\n\n    track.addEventListener(\n      'scroll',\n      function () {\n        window.cancelAnimationFrame(scrollFrame);\n\n        scrollFrame = window.requestAnimationFrame(function () {\n          var nextPage = findNearestPage();\n\n          if (nextPage !== currentPage) {\n            currentPage = nextPage;\n            updateControls();\n          }\n        });\n      },\n      { passive: true }\n    );\n\n    root.addEventListener('keydown', function (event) {\n      if (event.key === 'ArrowLeft') {\n        event.preventDefault();\n        goToPage(currentPage - 1);\n      }\n\n      if (event.key === 'ArrowRight') {\n        event.preventDefault();\n        goToPage(currentPage + 1);\n      }\n\n      if (event.key === 'Home') {\n        event.preventDefault();\n        goToPage(0);\n      }\n\n      if (event.key === 'End') {\n        event.preventDefault();\n        goToPage(positions.length - 1);\n      }\n    });\n\n    if ('ResizeObserver' in window) {\n      new ResizeObserver(function () {\n        calculatePositions();\n        goToPage(currentPage, 'auto');\n      }).observe(track);\n    }\n\n    calculatePositions();\n  }\n\n  function initializeAllFeatureCarousels(container) {\n    (container || document)\n      .querySelectorAll('[data-ctb-feature-carousel]')\n      .forEach(initializeFeatureCarousel);\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', function () {\n      initializeAllFeatureCarousels(document);\n    });\n  } else {\n    initializeAllFeatureCarousels(document);\n  }\n\n  document.addEventListener('shopify:section:load', function (event) {\n    initializeAllFeatureCarousels(event.target);\n  });\n})();\n\u003c\/script\u003e\n    \u003chr\u003e\n\u003cdiv id=\"war\"\u003e\u003cspan\u003e終身保固\u003c\/span\u003e\u003c\/div\u003e\n\n\u003cdiv class=\"content-tab-info-section-container-left\"\u003e\n\n\u003cdiv class=\"content-tab-info-section-img\"\u003e\n\n\u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/Ultra-Section-Textile-Teaser-LP_1.jpg?v=1787759559\u0026amp;width=740\"\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"content-tab-info-section-txt prose\"\u003e\n\n\u003ch3 class=\"h3\"\u003eULTRA BLACK MAGIC 200X\n\n\n\u003c\/h3\u003e\n\n\u003cp\u003eULTRA 200X 是一種先進的外殼紡織品，選用原因只有一個：它在最大限度地降低重量的同時，提供了卓越的耐用性。採用 UHMWPE 纖維和防水層壓板製成，它以輕巧時尚的包裝提供令人印象深刻的耐磨性。該面料具有清爽、結構化的手感，帶有微妙的橫向交織圖案，賦予其獨特的技術特徵。\n\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\u003chr\u003e\n\u003cimg src=\"https:\/\/evergoods.us\/cdn\/shop\/files\/CIVIC-Travel-Bag-ULTRA-hotspots-desktop_2_1.jpg?v=1787781540\u0026amp;width=2000\"\u003e\n\n","brand":"EVERGOODS","offers":[{"title":"Black Magic ULTRA 200X","offer_id":46483379060806,"sku":"EVGOCTB26L-BMW","price":1799.0,"currency_code":"MYR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1112\/3836\/files\/civic-travel-bag-26l-ultra-front.png?v=1788273074","url":"https:\/\/storminggravity.com\/zh\/products\/civic-travel-bag-26l-ultra","provider":"Storming Gravity","version":"1.0","type":"link"}