{"product_id":"f-one-bandit-17-tec-kite","title":"F-One BANDIT 17 TEC Kite","description":"\u003ch3\u003eBANDIT TEC Everywhere, anytime, in every condition.\u003c\/h3\u003e\u003chr style=\"max-width: 600px; margin: 1rem 0 !important;\"\u003eAfter two years of research and development, F-ONE is proud to present the brand-new edition of the BANDIT, our legendary kite, filled with innovations and offering ever more sensations and performances. Thanks to our new CODE-TEC fabric, this BANDIT TEC is now lighter and more responsive than ever, and benefits from new advances in design.\n\u003cul\u003e\n\u003cli\u003eBrand new CODE-TEC fabric on leading edge and struts for lightness, responsiveness and stability\u003c\/li\u003e\n\u003cli\u003eExceptional and precise handling\u003c\/li\u003e\n\u003cli\u003ePerformance guaranteed in the entire wind range\u003c\/li\u003e\n\u003cli\u003eConstant forward traction for greater comfort\u003c\/li\u003e\n\u003cli\u003eEffortless upwind abilities\u003c\/li\u003e\n\u003cli\u003eOptimized jumps and kite loops\u003c\/li\u003e\n\u003cli\u003eNew one-pump system for faster inflation and easier deflation\u003c\/li\u003e\n\u003c\/ul\u003e\u003cstyle\u003e\n    .progress-container {\n        display: flex;\n        justify-content: space-between;\n        background-color: #f9f9f9;\n        padding: 40px 25px 60px 25px;\n    }\n    .progress-ring {\n        width: 150px;\n        height: 150px;\n        position: relative;\n        text-align: center;\n    }\n    .progress-ring circle {\n        fill: transparent;\n        stroke: #ff6800;\n        stroke-width: 15;\n        transform: rotate(-90deg);\n        transform-origin: 50% 50%;\n        transition: stroke-dashoffset 0.5s;\n    }\n    .progress-ring .ring-background {\n        fill: transparent;\n        stroke: #ccc;\n        stroke-width: 15;\n        transform: rotate(-90deg);\n        transform-origin: 50% 50%;\n    }\n    .progress-text {\n        position: absolute;\n        top: 50%;\n        left: 50%;\n        transform: translate(-50%, -50%);\n        font-size: 24px;\n    }\n    .progress-title {\n        font-size: 20px;\n        color: black;\n        margin-top: 10px;\n    }\n    @media (max-width: 768px) {\n        .progress-container {\n            flex-direction: column;\n            align-items: center;\n        }\n        .progress-ring {\n            margin-bottom: 50px;\n        }\n    }\n\u003c\/style\u003e\n\u003cdiv class=\"row\"\u003e\n\u003cdiv class=\"col-md-6\"\u003e\u003ciframe src=\"https:\/\/emersya.com\/fr\/presets\/2H5132UCLT\" width=\"1280\" height=\"720\" data-gtm-yt-inspected-7=\"true\"\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n\u003cdiv class=\"col-md-6 order-md-last\"\u003e\n\u003cp style=\"text-align: justify; margin-top: -5px;\"\u003eOur CODE-TEC fabric offers an exceptional combination of lightness and strength. With less elongation and higher tear resistance, the CODE-TEC provides greater structural stiffness, minimizing deformation under load. This leads to a more precise and sharper feel, as well as a more reactive handling, all while ensuring your kite maintains its shape in any conditions. This material has been central to the new BANDIT TEC’s design, marking the entry into a new era of this emblematic F-ONE kite. Sporting renewed graphic design as well, the BANDIT TEC is once again more versatile than ever, adapting perfectly to all disciplines: strapless, foil, Big Air, freeride, wave, etc. Responsive and precise, this BANDIT TEC boasts exceptional handling, with enough support through the bar to let you feel every movement of the kite without forcing. In strong winds, the kite positions itself at the edge of the wind window, maintaining a constant forward traction with no side pull. The result is remarkable upwind performance, without the need for too much edging, saving energy and freeing up your board.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003ch3\u003ePERFORMANCE\u003c\/h3\u003e\n\u003chr style=\"border: none; border-top: 1px solid #B3B3B3; width: 30%; margin: 0 0 20px 0;\"\u003e\n\u003cdiv class=\"progress-container\"\u003e\n\u003cdiv class=\"progress-ring\" id=\"ring1\" data-progress=\"80\"\u003e\n\u003csvg width=\"150\" height=\"150\"\u003e\n            \u003ccircle class=\"ring-background\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n            \u003ccircle class=\"ring\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n        \u003c\/svg\u003e\n\u003cdiv class=\"progress-title\"\u003eBig Air\u003c\/div\u003e\n\u003cdiv class=\"progress-text\" id=\"progress1\"\u003e0%\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"progress-ring\" id=\"ring2\" data-progress=\"90\"\u003e\n\u003csvg width=\"150\" height=\"150\"\u003e\n            \u003ccircle class=\"ring-background\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n            \u003ccircle class=\"ring\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n        \u003c\/svg\u003e\n\u003cdiv class=\"progress-title\"\u003eFoil\u003c\/div\u003e\n\u003cdiv class=\"progress-text\" id=\"progress2\"\u003e0%\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"progress-ring\" id=\"ring3\" data-progress=\"100\"\u003e\n\u003csvg width=\"150\" height=\"150\"\u003e\n            \u003ccircle class=\"ring-background\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n            \u003ccircle class=\"ring\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n        \u003c\/svg\u003e\n\u003cdiv class=\"progress-title\"\u003eFreeride\u003c\/div\u003e\n\u003cdiv class=\"progress-text\" id=\"progress3\"\u003e0%\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"progress-ring\" id=\"ring4\" data-progress=\"80\"\u003e\n\u003csvg width=\"150\" height=\"150\"\u003e\n            \u003ccircle class=\"ring-background\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n            \u003ccircle class=\"ring\" cx=\"75\" cy=\"75\" r=\"65\"\u003e\u003c\/circle\u003e\n        \u003c\/svg\u003e\n\u003cdiv class=\"progress-title\"\u003eWave\u003c\/div\u003e\n\u003cdiv class=\"progress-text\" id=\"progress4\"\u003e0%\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cbr\u003e\u003cscript\u003e\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        function animateProgress(ringId, from, to, duration) {\n            const ring = document.querySelector(`#ring${ringId} .ring`);\n            const text = document.getElementById(`progress${ringId}`);\n            const title = document.querySelector(`#ring${ringId} .progress-title`);\n            const circumference = 2 * Math.PI * 65; \/\/ Hardcoding the radius as 65 for this example\n            const increment = (to - from) \/ (duration * 60);\n            let current = from;\n\n            function update() {\n                if ((increment \u003e 0 \u0026\u0026 current \u003c to) || (increment \u003c 0 \u0026\u0026 current \u003e to)) {\n                    const offset = circumference - (current \/ 100) * circumference;\n                    ring.style.strokeDasharray = `${circumference} ${circumference}`;\n                    ring.style.strokeDashoffset = offset;\n                    text.textContent = `${Math.round(current)}%`;\n\n                    current += increment;\n                    requestAnimationFrame(update);\n                } else {\n                    const offset = circumference - (to \/ 100) * circumference;\n                    ring.style.strokeDashoffset = offset;\n                    text.textContent = `${to}%`;\n                }\n            }\n\n            update();\n        }\n\n        function handleIntersection(entries, observer) {\n            entries.forEach((entry) =\u003e {\n                if (entry.isIntersecting) {\n                    const ringId = entry.target.id.replace('ring', '');\n                    const from = 0;\n                    const to = parseInt(entry.target.getAttribute('data-progress'), 10);\n                    animateProgress(ringId, from, to, 2);\n                    observer.unobserve(entry.target);\n                }\n            });\n        }\n\n        const rings = document.querySelectorAll('.progress-ring');\n\n        const observer = new IntersectionObserver(handleIntersection, {\n            root: null,\n            rootMargin: '0px',\n            threshold: 0.2 \/\/ Adjust this threshold as needed\n        });\n\n        rings.forEach((ring) =\u003e {\n            observer.observe(ring);\n        });\n    });\n\u003c\/script\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"F-One","offers":[{"title":"6m \/ White\/Onyx","offer_id":50619918811473,"sku":"FW25-77251-0101-6A","price":888.0,"currency_code":"EUR","in_stock":false},{"title":"6m \/ Black\/Mint","offer_id":50619918844241,"sku":"FW25-77251-0101-6B","price":888.0,"currency_code":"EUR","in_stock":false},{"title":"6m \/ Lilac","offer_id":52298020520273,"sku":null,"price":888.0,"currency_code":"EUR","in_stock":false},{"title":"7m \/ White\/Onyx","offer_id":50619918877009,"sku":"FW25-77251-0101-7A","price":930.0,"currency_code":"EUR","in_stock":false},{"title":"7m \/ Black\/Mint","offer_id":50619918909777,"sku":"FW25-77251-0101-7B","price":930.0,"currency_code":"EUR","in_stock":true},{"title":"7m \/ Lilac","offer_id":52298020553041,"sku":null,"price":930.0,"currency_code":"EUR","in_stock":false},{"title":"8m \/ White\/Onyx","offer_id":50619918942545,"sku":"FW25-77251-0101-8A","price":990.0,"currency_code":"EUR","in_stock":false},{"title":"8m \/ Black\/Mint","offer_id":50619918975313,"sku":"FW25-77251-0101-8B","price":990.0,"currency_code":"EUR","in_stock":false},{"title":"8m \/ Lilac","offer_id":52298020585809,"sku":null,"price":990.0,"currency_code":"EUR","in_stock":false},{"title":"9m \/ White\/Onyx","offer_id":50619919008081,"sku":"FW25-77251-0101-9A","price":1050.0,"currency_code":"EUR","in_stock":false},{"title":"9m \/ Black\/Mint","offer_id":50619919040849,"sku":"FW25-77251-0101-9B","price":1050.0,"currency_code":"EUR","in_stock":false},{"title":"9m \/ Lilac","offer_id":52298020618577,"sku":null,"price":1050.0,"currency_code":"EUR","in_stock":false},{"title":"10m \/ White\/Onyx","offer_id":50619919073617,"sku":"FW25-77251-0101-10A","price":1074.0,"currency_code":"EUR","in_stock":false},{"title":"10m \/ Black\/Mint","offer_id":50619919106385,"sku":"FW25-77251-0101-10B","price":1074.0,"currency_code":"EUR","in_stock":false},{"title":"10m \/ Lilac","offer_id":52298020651345,"sku":null,"price":1074.0,"currency_code":"EUR","in_stock":false},{"title":"11m \/ White\/Onyx","offer_id":50619919139153,"sku":"FW25-77251-0101-11A","price":1134.0,"currency_code":"EUR","in_stock":false},{"title":"11m \/ Black\/Mint","offer_id":50619919171921,"sku":"FW25-77251-0101-11B","price":1134.0,"currency_code":"EUR","in_stock":false},{"title":"11m \/ Lilac","offer_id":52298020684113,"sku":null,"price":1134.0,"currency_code":"EUR","in_stock":false},{"title":"12m \/ White\/Onyx","offer_id":50619919204689,"sku":"FW25-77251-0101-12A","price":1194.0,"currency_code":"EUR","in_stock":false},{"title":"12m \/ Black\/Mint","offer_id":50619919237457,"sku":"FW25-77251-0101-12B","price":1194.0,"currency_code":"EUR","in_stock":true},{"title":"12m \/ Lilac","offer_id":52298020716881,"sku":null,"price":1194.0,"currency_code":"EUR","in_stock":false},{"title":"14m \/ White\/Onyx","offer_id":50619919270225,"sku":"FW25-77251-0101-14A","price":1254.0,"currency_code":"EUR","in_stock":false},{"title":"14m \/ Black\/Mint","offer_id":50619919302993,"sku":"FW25-77251-0101-14B","price":1254.0,"currency_code":"EUR","in_stock":false},{"title":"14m \/ Lilac","offer_id":52298020749649,"sku":null,"price":1254.0,"currency_code":"EUR","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0512\/0838\/8795\/files\/bandit-17-tech-3.jpg?v=1739975459","url":"https:\/\/www.billy.be\/products\/f-one-bandit-17-tec-kite","provider":"Billy.be","version":"1.0","type":"link"}