Help
RSS
API
Feed
Maltego
Contact
Domain > textieltrade.nl
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2019-04-28
104.27.180.117
(
ClassC
)
2019-04-28
104.27.181.117
(
ClassC
)
2024-10-22
172.67.156.96
(
ClassC
)
Port 443
HTTP/1.1 200 OKDate: Tue, 22 Oct 2024 14:23:34 GMTContent-Type: text/html; charsetUTF-8Transfer-Encoding: chunkedConnection: keep-alivevary: Accept-Encodingx-built-with: Hyva Themescontent-security-policy: upgrade-insecure-requests;x-content-type-options: nosniffx-xss-protection: 1; modeblockx-frame-options: SAMEORIGINstrict-transport-security: max-age63072000strict-transport-security: max-age63072000referrer-policy: strict-origin-when-cross-originreferrer-policy: strict-origin-when-cross-originx-magento-cache-debug: HITgrace: nonepragma: no-cacheexpires: -1Cache-Control: no-store, no-cache, must-revalidate, max-age0cf-cache-status: DYNAMICReport-To: {endpoints:{url:https:\/\/a.nel.cloudflare.com\/report\/v4?spti4l%2B7RAoeYWiEpO2lmLwaHl6Qb58pfxfDk%2FP2EvtdaJy0%2Fj21UyBaKMirddzRJCCGonuHExT6sditGIP7pn9U8vjbyOL4LVKXG5Zo%2F1ElOWJvaJVvA2NnvQ4icwGaqjsc%3D},group:cf-nel,max_age:604800}NEL: {success_fraction:0,report_to:cf-nel,max_age:604800}Server: cloudflareCF-RAY: 8d6a255a99b8a34d-SEAalt-svc: h3:443; ma86400server-timing: cfL4;desc?protoTCP&rtt9305&sent5&recv6&lost0&retrans0&sent_bytes2865&recv_bytes726&delivery_rate317857&cwnd232&unsent_bytes0&cidb05be807b419025d&ts785&x0 !doctype html>html langnl>head prefixog: http://ogp.me/ns# cms: http://ogp.me/ns/cms#> meta charsetutf-8/>meta nametitle contentGroothandel | Textiel Trade/>meta namedescription contentWij bieden een groot assortiment van kinder- en babykleding en producten. Alle producten op onze website zijn in voorraad./>meta namerobots contentindex,follow/>meta nameviewport contentwidthdevice-width, initial-scale1/>title>Groothandel | Textiel Trade/title>link relstylesheet typetext/css mediaall hrefhttps://textieltrade.nl/static/version1729148135/frontend/TextielTrade/default/nl_NL/Anowave_Ec/css/ec.min.css />link relstylesheet typetext/css mediaall hrefhttps://textieltrade.nl/static/version1729148135/_cache/merged/c2ef98c458a7b47fafbfb649198eaec7.min.css />link relicon typeimage/x-icon hrefhttps://textieltrade.nl/media/favicon/websites/1/textiel.png />link relshortcut icon typeimage/x-icon hrefhttps://textieltrade.nl/media/favicon/websites/1/textiel.png />style>strong.type { color: black;}.price-per-one { display: none;}/style> script data-ommittrue defer> var AEC (function(){ return { add: function(context, dataLayer) { let element context, qty 1, variants , variant , variant_attribute_option , items ; document.querySelectorAll(inputnameqty:checked, nameqty).forEach(element > { qty element.value; }); qty Math.abs(qty); if (isNaN(qty)) { qty 1; } if (undefined ! typeof jQuery) { var form jQuery(context).closest(form); if (form.length) { if (!form.valid()) { return true; } } } if (!AEC.gtm()) { if (element.dataset.click) { AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_ADD_TO_CART, element.dataset.name, element.dataset.category); eval(element.dataset.click); } return true; } if(element.dataset.configurable) { document.querySelectorAll(name^super_attribute).forEach(attribute > { if (attribute.matches(select)) { var name attribute.getAttribute(name), id name.substring(name.indexOf() + 1, name.lastIndexOf()); if (attribute.selectedIndex) { var option attribute.optionsattribute.selectedIndex; if (option) { variants.push( { id: id, option: option.label, text: option.text }); } } } if (attribute.matches(input) && -1 ! attribute.type.indexOf(radio)) { if (attribute.parentNode.classList.contains(swatch-option-selected) || attribute.checked) { Object.entries(AEC.SUPER).forEach((key, super_attribute) > { if (-1 ! attribute.name.indexOf(super_attribute + super_attribute.id + )) { let variant { id: super_attribute.id, text: super_attribute.label, option: attribute.value }; variants.push(variant); } }); } } }); /** * Colour Swatch support */ if (!variants.length) { Object.entries(AEC.SUPER).forEach((key, attribute) > { var swatch document.querySelectorAll(divattribute-code + attribute.code + , divdata-attribute-code + attribute.code + ); swatch.forEach(element > { let variant { id: attribute.id, text: , option: null }; var select element.querySelector(select); if (select) { if (select.selectedIndex) { var option select.optionsselect.selectedIndex; if (option) { variant.text option.text; variant.option option.value; } } } else { var span element.querySelector(span.swatch-attribute-selected-option); if (span) { variant.text span.innerHTML; variant.option span.parentNode.dataset.optionSelected } } variants.push(variant); }); }); } if (!variants.length) { AEC.EventDispatcher.trigger(ec.variants, variants); } var SUPER_SELECTED ; for (i 0, l variants.length; i l; i++) { for (a 0, b AEC.SUPER.length; a b; a++) { if (AEC.SUPERa.id variantsi.id) { var text variantsi.text; if (AEC.useDefaultValues) { AEC.SUPERa.options.forEach(option > { if (parseInt(option.value_index) parseInt(variantsi.option)) { if (option.hasOwnProperty(admin_label)) { text option.admin_label; } else if (option.hasOwnProperty(store_label)) { text option.store_label; } } }); } variant.push(AEC.SUPERa.label,text.join(AEC.Const.VARIANT_DELIMITER_ATT)); let tier_price Number.parseFloat(element.dataset.price).toFixed(2); Object.entries(AEC.CONFIGURABLE_SIMPLES).forEach((key, simple) > { if (simple.hasOwnProperty(configurations)) { Object.entries(simple.configurations).forEach((key, configuration) > { if (configuration.label variantsi.option) { let prices ; Object.entries(simple.price_tier).forEach((key, tier) > { if (parseInt(qty) > parseInt(tier.price_qty)) { prices.push(Number.parseFloat(tier.price)); } }); if (prices.length) { tier_price prices.sort(function(a,b) { return a b; }).pop(); } } }); } }); variant_attribute_option.push( { attribute: variantsi.id, option: variantsi.option, price: tier_price }) } } } if (!variant.length) { if (element.dataset.click) { AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_ADD_TO_CART, element.dataset.name, element.dataset.category); eval(element.dataset.click); } return true; } } if (element.dataset.grouped) { for (u 0, y window.G.length; u y; u++) { let field document.querySelector(namesuper_group + window.Gu.id + ); if (field) { (qty > { if (qty) { let item { item_name: window.Gu.name, item_id: window.Gu.sku, price: window.Gu.price, category: window.Gu.category, item_brand: window.Gu.brand, quantity: qty }; Object.assign(item, item, AEC.GA4.transformCategories(element.dataset.category)); items.push(item); } })(Math.abs(field.value)); } } } else { let price Number.parseFloat(element.dataset.price); if (element.dataset.hasOwnProperty(selection)) { let selection parseInt(element.dataset.selection); Object.entries(AEC.CONFIGURABLE_SIMPLES).forEach((key, simple) > { if (key selection) { if (simple.hasOwnProperty(price_tier)) { Object.entries(simple.configurations).forEach((key, configuration) > { let prices ; Object.entries(simple.price_tier).forEach((key, tier) > { if (parseInt(qty) > parseInt(tier.price_qty)) { prices.push(Number.parseFloat(tier.price)); } }); if (prices.length) { price prices.sort(function(a,b) { return a b; }).pop(); } }); } } }); } let item { item_name: element.dataset.name, item_id: 1 parseInt(element.dataset.useSimple) ? element.dataset.simpleId : element.dataset.id, price: price, item_brand: element.dataset.brand, item_variant: variant.join(AEC.Const.VARIANT_DELIMITER), variants: variants, category: element.dataset.category, quantity: qty, currency: AEC.currencyCode, index: 0 }; Object.assign(item, item, AEC.GA4.transformCategories(element.dataset.category)); items.push(item); } for (i 0, l items.length; i l; i++) { (function(item) { Object.entries(AEC.parseJSON(element.dataset.attributes)).forEach((key, value) > { itemkey value; }); let options ; Object.entries(AEC.parseJSON(element.dataset.options)).forEach((key, name) > { let option document.querySelector(nameoptions + key + ), value null; switch(true) { case option instanceof HTMLInputElement: case option instanceof HTMLTextAreaElement: value option.value; break; case option instanceof HTMLSelectElement: value option.optionsoption.selectedIndex.text; break; } if (value) { options.push({ name: name, value: value }); } }); if (options.length) { itemoptions options; } })(itemsi); } var data { event:add_to_cart, eventLabel: element.dataset.name, ecommerce: { currency: AEC.currencyCode, item_list_id: element.dataset.list, item_list_name: element.dataset.list, items: items, options: variant_attribute_option }, currentStore: element.dataset.store }; if (AEC.useDefaultValues) { datacurrentStore AEC.storeName; } /** * Notify listeners */ this.EventDispatcher.trigger(ec.add.data, data); /** * Track event */ AEC.Cookie.add(data).push(dataLayer); /** * Save backreference */ if (AEC.localStorage) { (function(items) { for (var i 0, l items.length; i l; i++) { AEC.Storage.reference().set( { id: itemsi.item_id, category: itemsi.category }); } })(items); } /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_ADD_TO_CART, element.dataset.name, element.dataset.category); if (AEC.facebook) { if (undefined ! typeof fbq) { (function(product, items, fbq) { var content_ids , price 0; for (i 0, l items.length; i l; i++) { content_ids.push(itemsi.item_id); price + parseFloat(itemsi.price); } (function(callback) { if (AEC.Const.COOKIE_DIRECTIVE) { AEC.CookieConsent.queue(callback).process(); } else { callback.apply(window,); } }) ( (function(product, content_ids, price) { return function() { if (undefined typeof variants) { variants ; } fbq(track, AddToCart, { content_name: product, content_ids: content_ids, content_type: !variants.length ? product : product_group, value: price, currency: AEC.currencyCode }, { eventID: AEC.UUID.generate({ event: AddToCart}) }); } })(product, content_ids, price) ); })(element.dataset.name, items, fbq); } } if (element.dataset.click) { eval(element.dataset.click); } return true; }, addSwatch: function(context,dataLayer) { var element context; if (window.jQuery) { jQuery(document).on(ajax:addToCart, function() { var attributes ; Object.entries(AEC.parseJSON(element.dataset.swatch)).forEach((key, value) > { attributes.push(value); }); var option document.querySelector(.swatch-option.selected); if (!option) { return true; } var variant attributes0.attribute_label, option.getAttribute(aria-label).join(AEC.Const.VARIANT_DELIMITER_ATT).join(AEC.Const.VARIANT_DELIMITER); let items ; let item { item_name: element.dataset.name, item_id: element.dataset.id, price: element.dataset.price, category: element.dataset.category, item_brand: element.dataset.brand, item_variant: variant, item_list_name: element.dataset.list, item_list_id: element.dataset.list, quantity: 1, index: element.dataset.position }; Object.assign(item, item, AEC.GA4.transformCategories(element.dataset.category)); /** * Track event */ AEC.Cookie.add( { event: add_to_cart, currency: AEC.currencyCode, eventLabel: element.dataset.name, item_list_id: element.dataset.list, item_list_name: element.dataset.list, ecommerce: { items: item }, currentStore: element.dataset.store }).push(dataLayer); /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_ADD_TO_CART, element.dataset.name, element.dataset.category); }); } return true; }, click: function(context,dataLayer) { var element context; if (!AEC.gtm()) { AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_PRODUCT_CLICK, element.dataset.name, element.dataset.category); return true; } var item { item_name: element.dataset.name, item_id: element.dataset.id, price: element.dataset.price, item_brand: element.dataset.brand, quantity: element.dataset.quantity, index: element.dataset.position, category: element.dataset.category, currency: AEC.currencyCode }; Object.entries(AEC.parseJSON(element.dataset.attributes)).forEach((key, value) > { itemkey value; }); Object.assign(item, item, AEC.GA4.augmentCategories(item)); var data { event: select_item, eventLabel: element.dataset.name, item_list_id: element.dataset.list, item_list_name: element.dataset.list, ecommerce: { items: item }, currentStore: element.dataset.store }; /** * Push data */ AEC.Cookie.click(data).push(dataLayer); /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_PRODUCT_CLICK, element.dataset.name, element.dataset.category); if (element.dataset.click) { eval(element.dataset.click); } return true; }, remove: function(context, dataLayer) { var element context; if (!AEC.gtm()) { AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_REMOVE_FROM_CART, element.dataset.name, element.dataset.category); } var item { item_name: element.dataset.name, item_id: element.dataset.id, price: element.dataset.price, category: element.dataset.category, item_brand: element.dataset.brand, quantity: element.dataset.quantity, currency: AEC.currencyCode }; Object.entries(AEC.parseJSON(element.dataset.attributes)).forEach((key, value) > { itemkey value; }); Object.assign(item, item, AEC.GA4.augmentCategories(item)); var data { event: remove_from_cart, eventLabel: element.dataset.name, ecommerce: { item_list_id: element.dataset.list, item_list_name: element.dataset.list, items: item , } }; AEC.EventDispatcher.trigger(ec.remove.data, data); if (AEC.Message.confirm) { require(Magento_Ui/js/modal/confirm, function(confirmation) { confirmation( { title: AEC.Message.confirmRemoveTitle, content: AEC.Message.confirmRemove, actions: { confirm: function() { /** * Track event */ AEC.Cookie.remove(data).push(dataLayer); /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_REMOVE_FROM_CART, element.dataset.name); /** * Execute standard data-post */ (params > { let form document.createElement(form); form.setAttribute(method, post); form.setAttribute(action, params.action); let formKey jQuery.cookie(form_key); if (formKey) { params.dataform_key formKey; } Object.entries(params.data).forEach((name, value) > { let input document.createElement(input); input.setAttribute(type, text); input.setAttribute(name, name); input.setAttribute(value, value); form.append(input); }); document.querySelector(body).appendChild(form); /** * Submit form */ form.submit(); })(AEC.parseJSON(element.dataset.postAction)) }, cancel: function() { return false; }, always: function() { return false; } } }); }); } else { /** * Track event */ AEC.Cookie.remove(data).push(dataLayer); /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_REMOVE_FROM_CART, element.dataset.name); } return false; }, wishlist: function(context, dataLayer) { var element context; if (!AEC.gtm()) { /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_PRODUCT_WISHLIST, element.dataset.name,Wishlist); return true; } let attributes JSON.parse(element.dataset.eventAttributes); /** * Track event */ AEC.Cookie.wishlist( { event: element.dataset.event, eventLabel: element.dataset.eventLabel, ecommerce: { items: attributes.items } }).push(dataLayer); return true; }, compare: function(context, dataLayer) { var element context; if (!AEC.gtm()) { /** * Track time */ AEC.Time.track(dataLayer, AEC.Const.TIMING_CATEGORY_PRODUCT_COMPARE, element.dataset.name,Compare); return true; } let attributes JSON.parse(element.dataset.eventAttributes); AEC.Cookie.compare( { event: element.dataset.event, eventLabel: element.dataset.eventLabel, ecommerce: { items: attributes.items } }).push(dataLayer); return true; }, Bind: (function() { return { apply: function(parameters) { /** * Merge persistent storage */ AEC.Persist.merge(); /** * Push private data */ AEC.Cookie.pushPrivate(); document.addEventListener(DOMContentLoaded,() > { document.body.addEventListener(catalogCategoryAddToCartRedirect, () > { dataLayer.push( { event: AEC.Const.CATALOG_CATEGORY_ADD_TO_CART_REDIRECT_EVENT }); }); }); if (parameters) { if (parameters.performance) { if (window.performance) { window.onload function() { setTimeout(function() { var time performance.timing.loadEventEnd - performance.timing.responseEnd; var timePayload { event:performance, performance: { timingCategory: Load times, timingVar: load, timingValue: (time % 60000) } }; switch(window.google_tag_params.ecomm_pagetype) { case home: timePayload.performance.timingLabel Home; AEC.CookieConsent.queue(() > { dataLayer.push(timePayload); }).process(); break; case product: timePayload.performance.timingLabel Product; AEC.CookieConsent.queue(() > { dataLayer.push(timePayload); }).process(); break; case category: timePayload.performance.timingLabel Category; AEC.CookieConsent.queue(() > { dataLayer.push(timePayload); }).process(); break; } }, 0); } } } } return this; } } })(), Time: (function() { var T { event: trackTime, timingCategory: , timingVar: , timingValue: -1, timingLabel: }; var time new Date().getTime(); return { track: function(dataLayer, category, variable, label) { T.timingValue (new Date().getTime()) - time; if (category) { T.timingCategory category; } if (variable) { T.timingVar variable; } if (label) { T.timingLabel label; } (function(callback) { if (AEC.Const.COOKIE_DIRECTIVE) { AEC.CookieConsent.queue(callback).process(); } else { callback.apply(window,); } }) ( (function(dataLayer, T) { return function() { dataLayer.push(T); } })(dataLayer, T) ); }, trackContinue: function(dataLayer, category, variable, label) { this.track(dataLayer, category, variable, label); time new Date().getTime(); } } })(), Persist:(function() { var DATA_KEY persist; var proto undefined ! typeof Storage ? { push: function(key, entity) { /** * Get data */ var data this.data(); /** * Push data */ datakey entity; /** * Save to local storage */ localStorage.setItem(DATA_KEY, JSON.stringify(data)); return this; }, data: function() { var data localStorage.getItem(DATA_KEY); if (null ! data) { return JSON.parse(data); } return {}; }, merge: function() { var data this.data(); var push { persist: {} }; for (var i in data) { push.persisti datai; } dataLayer.push(push); return this; }, clear: function() { /** * Reset private local storage */ localStorage.setItem(DATA_KEY,JSON.stringify({})); return this; } } : { push: function(){}, merge: function(){}, clear: function(){} }; /** * Constants */ proto.CONST_KEY_PROMOTION persist_promotion; return proto; })(), Checkout: (function() { return { init: false, data: {}, tracked: {}, getData: function() { return this.data; }, getPayload: function() { if (this.data && this.data.hasOwnProperty(payload)) { return this.data.payload; } return { error: Missing checkout payload data } }, step: function(previous, current, currentCode) { if (!this.init) { return this.fail(Step tracking requires a checkout page.); } if (this.data && this.data.hasOwnProperty(ecommerce)) { this.data.ecommercestep ++current; /** * Notify listeners */ AEC.EventDispatcher.trigger(ec.checkout.step.data, this.data); /** * Track checkout step */ AEC.Cookie.checkout(this.data).push(dataLayer); } return this; }, stepOption: function(step, option) { if (!option) { return this; } if (!this.init) { return this.fail(Step option tracking requires a checkout page.); } if (!option.toString().length) { return this; } var data { event: checkoutOption, ecommerce: { checkout_option: { actionField: { step: step, option: option } } } }; /** * Notify listeners */ AEC.EventDispatcher.trigger(ec.checkout.step.option.data, data); /** * Track checkout option */ AEC.Cookie.checkoutOption(data).push(dataLayer); return this; }, fail: function(message) { console.log(message); return this; } } })(), Cookie: (function() { return { data: null, privateData: null, reset: function() { if (AEC.reset) { dataLayer.push({ ecommerce: null }); } return dataLayer; }, push: function(dataLayer, consent) { consent typeof consent ! undefined ? consent : true; if (this.data) { if (consent) { if (AEC.Const.COOKIE_DIRECTIVE) { if (AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED) { this.reset().push(this.data); } } else { this.reset().push(this.data); } } else { this.reset().push(this.data); } /** * Reset data to prevent further push */ this.data null; } return this; }, pushPrivate: function() { var data this.getPrivateData(); if (data) { dataLayer.push( { privateData: data }); } return this; }, augment: function(products) { /** * Parse data & apply local reference */ var reference AEC.Storage.reference().get(); if (reference) { for (var i 0, l products.length; i l; i++) { for (var a 0, b reference.length; a b; a++) { if (productsi.item_id.toString().toLowerCase() referencea.id.toString().toLowerCase()) { productsi.category referencea.category; } } } } return products; }, click: function(data) { AEC.EventDispatcher.trigger(ec.cookie.click.data, data); this.data data; return this; }, add: function(data) { AEC.EventDispatcher.trigger(ec.cookie.add.data, data); this.data data; return this; }, remove: function(data) { AEC.EventDispatcher.trigger(ec.cookie.remove.item.data, data); this.data data; if (AEC.localStorage) { this.data.ecommerce.items this.augment(this.data.ecommerce.items); } return this; }, compare: function(data) { AEC.EventDispatcher.trigger(ec.cookie.compare.data, data); this.data data; return this; }, wishlist: function(data) { AEC.EventDispatcher.trigger(ec.cookie.wishlist.data, data); this.data data; return this; }, update: function(data) { AEC.EventDispatcher.trigger(ec.cookie.update.item.data, data); this.data data; return this; }, visitor: function(data) { AEC.EventDispatcher.trigger(ec.cookie.visitor.data, data); this.data (function(data, privateData) { if (privateData) { if (privateData.hasOwnProperty(visitor)) { data.visitorId privateData.visitor.visitorId; data.visitorLoginState privateData.visitor.visitorLoginState; } } return data; })(data, AEC.Cookie.getPrivateData()); return this; }, detail: function(data) { AEC.EventDispatcher.trigger(ec.cookie.detail.data, data); this.data data; return this; }, purchase: function(data) { AEC.EventDispatcher.trigger(ec.cookie.purchase.data, data); this.data data; if (AEC.localStorage) { this.data.ecommerce.purchase.items this.augment(this.data.ecommerce.purchase.items); } return this; }, impressions: function(data) { AEC.EventDispatcher.trigger(ec.cookie.impression.data, data); this.data data; return this; }, checkout: function(data) { AEC.EventDispatcher.trigger(ec.cookie.checkout.step.data, data); this.data data; if (AEC.localStorage) { this.data.ecommerce.items this.augment(this.data.ecommerce.items); } return this; }, checkoutOption: function(data) { AEC.EventDispatcher.trigger(ec.cookie.checkout.step.option.data, data); this.data data; return this; }, promotion: function(data) { AEC.EventDispatcher.trigger(ec.cookie.promotion.data, data); this.data data; return this; }, promotionClick: function(data, element) { AEC.EventDispatcher.trigger(ec.cookie.promotion.click, data, { element: element }); this.data data; return this; }, remarketing: function(data) { AEC.EventDispatcher.trigger(ec.cookie.remarketing.data, data); this.data data; return this; }, getPrivateData: function() { if (!this.privateData) { var cookie this.get(privateData); if (cookie) { this.privateData this.parse(cookie); } } return this.privateData; }, set: function(name, value, days) { if (!days) { days 30; } let date new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); document.cookie name + + value + ; expires + date.toGMTString() + ; path/; return this; }, get: function(name) { var start document.cookie.indexOf(name + ), len start + name.length + 1; if ((!start) && (name ! document.cookie.substring(0, name.length))) { return null; } if (start -1) { return null; } var end document.cookie.indexOf(String.fromCharCode(59), len); if (end -1) { end document.cookie.length; } return decodeURIComponent(document.cookie.substring(len, end)); }, unset: function(name) { document.cookie name + + ; path/; expires + (new Date(0)).toUTCString(); return this; }, parse: function(json) { var json decodeURIComponent(json.replace(/\+/g, )); return JSON.parse(json); } } })(), CookieConsent: (function() { return { chain: {}, queue: function(callback, event) { event typeof event ! undefined ? event : AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED_EVENT; if (!this.chain.hasOwnProperty(event)) { this.chainevent ; } this.chainevent.push(callback); return this; }, dispatch: function(consent) { /** * Essential cookies */ AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED true; /** * Push consent to dataLayer */ dataLayer.push(consent); return this.process(consent.event); }, process: function(event) { event typeof event ! undefined ? event : AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED_EVENT; if (this.chain.hasOwnProperty(event) && this.getConsent(event)) { for (a 0, b this.chainevent.length; a b; a++) { this.chaineventa.apply(this,); } this.chainevent ; } return this; }, getConsent: function(event) { let consent !AEC.Const.COOKIE_DIRECTIVE ? true : 1 AEC.Cookie.get(event); /** * Notify third parties for consent */ AEC.EventDispatcher.trigger(ec.consent, consent); return consent; }, acceptGoogleConsent: function(segments) { if (function typeof gtag) { const consentMode true AEC.Const.COOKIE_DIRECTIVE_SEGMENT_MODE ? { ad_storage: -1 ! segments.indexOf(cookieConsentMarketingGranted) ? granted : denied, security_storage: -1 ! segments.indexOf(cookieConsentGranted) ? granted : denied, functionality_storage: -1 ! segments.indexOf(cookieConsentGranted) ? granted : denied, personalization_storage: -1 ! segments.indexOf(cookieConsentPreferencesGranted) ? granted : denied, analytics_storage: -1 ! segments.indexOf(cookieConsentAnalyticsGranted) ? granted : denied, ad_user_data: -1 ! segments.indexOf(cookieConsentUserdata) ? granted : denied, ad_personalization: -1 ! segments.indexOf(cookieConsentPersonalization) ? granted : denied } : { ad_storage: granted, security_storage: granted, functionality_storage: granted, personalization_storage: granted, analytics_storage: granted, ad_user_data: granted, ad_personalization: granted } /** * Update consent */ gtag(consent,update,consentMode); localStorage.setItem(consentMode, JSON.stringify(consentMode)); } return this; }, acceptConsent: function(event) { return this.dispatch({ event:event }); }, declineConsent: function(event) { return this.dispatch({ event:event }); }, declineGoogleConsent: function() { if (function typeof gtag) { const consentMode { ad_storage: denied, security_storage: denied, functionality_storage: denied, personalization_storage: denied, analytics_storage: denied, ad_user_data: denied, ad_personalization: denied }; /** * Update consent */ gtag(consent,updated,consentMode); localStorage.setItem(consentMode, JSON.stringify(consentMode)); } return this; }, getConsentDialog: function(dataLayer, endpoints) { if (1 AEC.Cookie.get(AEC.Const.COOKIE_DIRECTIVE_CONSENT_DECLINE_EVENT)) { return true; } if (1 ! AEC.Cookie.get(AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED_EVENT)) { AEC.Request.get(endpoints.cookieContent, {}, (response) > { var directive (body > { body.insertAdjacentHTML(beforeend, response.cookieContent); return body.lastElementChild; })(document.body); directive.querySelectorAll(a.ec-gtm-cookie-directive-note-toggle).forEach(element > { element.addEventListener(click, event > { event.target.nextElementSibling.style.display block event.target.nextElementSibling.style.display ? none : block; }); }); directive.querySelectorAll(a.accept).forEach(element > { element.addEventListener(click, event > { event.target.text event.target.dataset.confirm; var grant ...directive.querySelectorAll(namecookie:checked).map(element > { return element.value }); grant.unshift(cookieConsentGranted); AEC.CookieConsent.acceptGoogleConsent(grant); AEC.Request.post(endpoints.cookie, { cookie: grant }, response > { Object.keys(response).forEach(event > { AEC.CookieConsent.acceptConsent(event); }); directive.remove(); }); }); }); directive.querySelectorAll(a.accept-all).forEach(element > { element.addEventListener(click, event > { event.target.text event.target.dataset.confirm; ...directive.querySelectorAll(namecookie).forEach(element > { element.checked true; }); element.parentNode.removeChild(element.previousElementSibling); var grant ...directive.querySelectorAll(namecookie:checked).map(element > { return element.value }); grant.unshift(cookieConsentGranted); AEC.CookieConsent.acceptGoogleConsent(grant); AEC.Request.post(endpoints.cookie, { cookie: grant }, response > { Object.keys(response).forEach(event > { AEC.CookieConsent.acceptConsent(event); }); directive.remove(); }); }); }); directive.querySelectorAll(a.decline).forEach(element > { element.addEventListener(click, event > { AEC.CookieConsent.declineGoogleConsent(); AEC.Request.post(endpoints.cookie, { decline: true }, response > { Object.keys(response).forEach(event > { AEC.CookieConsent.declineConsent(event); }); directive.remove(); }); }); }); }); } else { if (AEC.Const.COOKIE_DIRECTIVE_SEGMENT_MODE) { (segments > { let grant ; for (i 0, l segments.length; i l;i++) { if (1 AEC.Cookie.get(segmentsi)) { AEC.CookieConsent.acceptConsent(segmentsi); grant.push(segmentsi); } } AEC.CookieConsent.acceptGoogleConsent(grant); })(AEC.Const.COOKIE_DIRECTIVE_SEGMENT_MODE_EVENTS); } else { AEC.CookieConsent.acceptConsent(AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED_EVENT); } } } } })(), Storage: (function(api) { return { set: function(property, value) { if (undefined ! typeof(Storage)) { localStorage.setItem(property, JSON.stringify(value)); } return this; }, get: function(property) { if (undefined ! typeof(Storage)) { return JSON.parse(localStorage.getItem(property)); } return null; }, reference: function() { return (function(storage) { return { set: function(reference) { var current storage.get(category.add) || ; var exists (function(current, reference) { for (i 0, l current.length; i l; i++) { if (currenti.id.toString().toLowerCase() reference.id.toString().toLowerCase()) { /** * Update category */ currenti.category reference.category; return true; } } return false; })(current, reference); if (!exists) { current.push(reference); } storage.set(category.add, current); return this; }, get: function() { return storage.get(category.add); } } })(this); } } })(), gtm: function() { if (undefined typeof google_tag_manager) { /** * Log error to console */ console.log(Unable to detect Google Tag Manager. Please verify if GTM install snippet is available.); return false; } return true; }, parseJSON: function(content) { if (object typeof content) { return content; } if (string typeof content) { try { return JSON.parse(content); } catch (e){} } return {}; }, getPayloadSize: function(object) { var objects object; var size 0; for (var index 0; index objects.length; index++) { switch (typeof objectsindex) { case boolean: size + 4; break; case number: size + 8; break; case string: size + 2 * objectsindex.length; break; case object: if (Object.prototype.toString.call(objectsindex) ! object Array) { for (var key in objectsindex) size + 2 * key.length; } for (var key in objectsindex) { var processed false; for (var search 0; search objects.length; search++) { if (objectssearch objectsindexkey) { processed true; break; } } if (!processed) objects.push(objectsindexkey); } } } return size; }, getPayloadChunks: function(arr, len) { var chunks ,i 0, n arr.length; while (i n) { chunks.push(arr.slice(i, i + len)); } return chunks; }, url: function(url) { return this.Const.URL, url.join(); }, EventDispatcher: (function() { return { events: {}, on: function(event, callback) { var handlers this.eventsevent || ; handlers.push(callback); this.eventsevent handlers; }, trigger: function() { /** * Cast arguments to array */ let args ...arguments; /** * Get event */ let event args ? args.shift() : null; /** * Get handlers */ let handlers this.eventsevent || ; /** * Get data */ let data args ? args.shift() : {}; /** * Get options */ let options args ? args.shift() : {}; /** * Quit if no handler */ if (!handlers || handlers.length 1) { return; } console.log(event + ( + handlers.length + listeners)); handlers.forEach(function(handler) { handler(data, options); }); } } })(), Request: (function() { return { get: function(url, params, callback) { this.execute(GET, url,this.serialize(params).join(?), callback).send(null); }, post: function(url, params, callback) { this.execute(POST, url, callback).send(this.serialize(params)); }, execute: function(method, url, callback) { try { var request new XMLHttpRequest(); request.open(method, url, true); request.setRequestHeader(Content-Type,application/x-www-form-urlencoded); request.setRequestHeader(X-Requested-With,XMLHttpRequest); request.addEventListener(load, () > { let response; if (application/json request.getResponseHeader(Content-Type)) { response JSON.parse(request.responseText); } else { response request.responseText; } if (function typeof callback) { callback(response); } }); } catch (e) { console.log(e.message); return null; } return request; }, serialize: function(entity, prefix) { var query ; Object.keys(entity).map(key > { var k prefix ? prefix + + key + : key, value entitykey; query.push((value ! null && typeof value object) ? this.serialize(value, k) : encodeURIComponent(k) + + encodeURIComponent(value)); }); return query.join(&); } } })(), UUID: (() > { return { generate: event > { event event || {}; let uuid xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx.replace(/xy/g, function(c) { var r Math.random() * 16 | 0, v c x ? r : (r & 0x3 | 0x8); return v.toString(16); }); if (-1 AddToCart.indexOf(event)) { try { let current AEC.Cookie.get(facebook_latest_uuid); if (current) { current JSON.parse(current); if (current.hasOwnProperty(uuid) && current.hasOwnProperty(event)) { if (event.event current.event) { uuid current.uuid; } } } } catch (e){} } eventuuid uuid; /** * Set facebook uuid cookie */ if (AEC.Const.COOKIE_DIRECTIVE) { if (AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED) { AEC.Cookie.set(facebook_latest_uuid, JSON.stringify(event)); } } else { AEC.Cookie.set(facebook_latest_uuid, JSON.stringify(event)); } return uuid; } } })() }})();if (undefined ! typeof AEC && undefined ! typeof AEC.EventDispatcher){ AEC.GA4 (() > { return { enabled: false, transformCategories: function(category) { if (null category) { return {}; } let map {}, categories category.toString().split(/); if (categories) { mapitem_category categories.shift(); if (categories.length) { let index 1; categories.forEach(category > { mapitem_category + (++index) category; }); } } return map; }, augmentCategories: function(product) { if (product.hasOwnProperty(category)) { AEC.Cookie.augment(product); } return this.transformCategories(product.category); }, augmentItem: function(product) { let map {}; mapgoogle_business_vertical retail; Object.entries(product).forEach((key, value) > { if (-1 id,name,price,category,currency,variant,brand.indexOf(key)) { mapkey value; } }); return map; } } })(); /** * Modify checkout step option payloasd */ AEC.EventDispatcher.on(ec.checkout.step.option.data, data > { if (!AEC.GA4.enabled) { return true; } switch(parseInt(data.ecommerce.checkout_option.actionField.step)) { case AEC.Const.CHECKOUT_STEP_SHIPPING: dataevent add_shipping_info; if (AEC.GA4.quote.hasOwnProperty(coupon)) { data.ecommercecoupon AEC.GA4.quote.coupon; } data.ecommercecurrency AEC.GA4.currency; data.ecommerceitems AEC.Checkout.getPayload().ecommerce.items; data.ecommerceshipping_tier data.ecommerce.checkout_option.actionField.option; delete data.ecommerce.checkout_option; break; case AEC.Const.CHECKOUT_STEP_PAYMENT: dataevent add_payment_info; if (AEC.GA4.quote.hasOwnProperty(coupon)) { data.ecommercecoupon AEC.GA4.quote.coupon; } data.ecommercecurrency AEC.GA4.currency; data.ecommerceitems AEC.Checkout.getPayload().ecommerce.items; data.ecommercepayment_type data.ecommerce.checkout_option.actionField.option; delete data.ecommerce.checkout_option; break; } });}/script>style> .ec-gtm-cookie-directive > div { background: #ffffff; color: #000000; -webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px; -o-border-radius: 8px; border-radius: 8px; } .ec-gtm-cookie-directive > div > div > div a.action.accept, .ec-gtm-cookie-directive > div > div > div a.action.accept-all { color: #8bc53f; } .ec-gtm-cookie-directive > div > div > div .ec-gtm-cookie-directive-note-toggle { color: #8bc53f; } .ec-gtm-cookie-directive-segments { background: #ffffff; } .ec-gtm-cookie-directive-segments > div inputtypecheckbox + label:before { border:1px solid #000000; } /style>script defer>/script>script data-ommittrue defer> window.dataLayer window.dataLayer || ; window.AEC window.AEC || { version: 103.1.7 }; AEC.Const { TIMING_CATEGORY_ADD_TO_CART: Add To Cart Time, TIMING_CATEGORY_REMOVE_FROM_CART: Remove From Cart Time, TIMING_CATEGORY_PRODUCT_CLICK: Product Detail Click Time, TIMING_CATEGORY_CHECKOUT: Checkout Time, TIMING_CATEGORY_CHECKOUT_STEP: Checkout Step Time, TIMING_CATEGORY_PRODUCT_WISHLIST: Add to Wishlist Time, TIMING_CATEGORY_PRODUCT_COMPARE: Add to Compare Time }; AEC.Const.URL https://textieltrade.nl/; AEC.Const.VARIANT_DELIMITER -; AEC.Const.VARIANT_DELIMITER_ATT :; AEC.Const.CHECKOUT_STEP_SHIPPING 1; AEC.Const.CHECKOUT_STEP_PAYMENT 2; AEC.Const.CHECKOUT_STEP_ORDER 3; AEC.Const.DIMENSION_SEARCH 18; AEC.Const.COOKIE_DIRECTIVE true; AEC.Const.COOKIE_DIRECTIVE_SEGMENT_MODE true; AEC.Const.COOKIE_DIRECTIVE_SEGMENT_MODE_EVENTS cookieConsentGranted,cookieConsentMarketingGranted,cookieConsentPreferencesGranted,cookieConsentAnalyticsGranted,cookieConsentUserdata,cookieConsentPersonalization; AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED_EVENT cookieConsentGranted; AEC.Const.COOKIE_DIRECTIVE_CONSENT_DECLINE_EVENT cookieConsentDeclined; AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED AEC.CookieConsent.getConsent(cookieConsentGranted); AEC.Const.CATALOG_CATEGORY_ADD_TO_CART_REDIRECT_EVENT catalogCategoryAddToCartRedirect; AEC.Message { confirm: true, confirmRemoveTitle: Weet je zeker dat?, confirmRemove: Weet je zeker dat je dit product wilt verwijderen? }; AEC.storeName NL; AEC.currencyCode EUR; AEC.useDefaultValues false; AEC.facebook false; AEC.facebookInitParams ; AEC.SUPER ; AEC.CONFIGURABLE_SIMPLES ; AEC.BUNDLE {bundles:,options:}; AEC.localStorage true; AEC.summary false; AEC.reset false; AEC.tax 1; /script>script data-ommittrue defer> (summary > { if (summary) { let getSummary (event) > { AEC.Request.post(https:\/\/textieltrade.nl\/datalayer\/index\/cart\/,{ event:event }, (response) > { dataLayer.push(response); }); }; ec.cookie.remove.item.data,ec.cookie.update.item.data,ec.cookie.add.data.forEach(event > { AEC.EventDispatcher.on(event, (event > { return () > { setTimeout(() > { getSummary(event); }, 2000); }; })(event)); }); } })(AEC.summary); /script>script data-ommittrue defer> if (undefined ! typeof AEC && AEC.GA4) { AEC.GA4.enabled true; AEC.GA4.conversion_event purchase; AEC.GA4.currency EUR; AEC.GA4.quote ; } /script>script data-ommittrue defer> window.dataLayer window.dataLayer || ; function gtag() { dataLayer.push(arguments); }; if (null localStorage.getItem(consentMode)) { gtag(consent, default, {ad_storage:denied,analytics_storage:denied,functionality_storage:denied,personalization_storage:denied,security_storage:denied,ad_user_data:denied,ad_personalization:denied,wait_for_update:500}); } else { gtag(consent, default, JSON.parse(localStorage.getItem(consentMode))); } var dataLayerTransport (function() { var data ; return { data:, push: function(data) { this.data.push(data); return this; }, serialize: function() { return this.data; } } })(); /script>script data-ommittrue defer> /* Dynamic remarketing */ window.google_tag_params window.google_tag_params || {}; /* Default pagetype */ window.google_tag_params.ecomm_pagetype home; /* Grouped products collection */ window.G ; /** * Global revenue */ window.revenue 0; /** * DoubleClick */ window.DoubleClick { DoubleClickRevenue: 0, DoubleClickTransaction: 0, DoubleClickQuantity: 0 }; AEC.Cookie.visitor({visitorLoginState:Logged out,visitorLifetimeValue:0,visitorExistingCustomer:Nee,visitorType:NOT LOGGED IN,currentStore:NL}).push(dataLayer, false); dataLayer.push({ pageType: home}); /script>!-- Google Tag Manager -->script defer>(function(w,d,s,l,i){wlwl||;wl.push({gtm.start:new Date().getTime(),event:gtm.js});var fd.getElementsByTagName(s)0,jd.createElement(s),dll!dataLayer?&l+l:;j.asynctrue;j.srchttps://www.googletagmanager.com/gtm.js?id+i+dl;f.parentNode.insertBefore(j,f);})(window,document,script,dataLayer,GTM-M5FDF4FM);/script>!-- End Google Tag Manager -->script data-ommittrue defer> /script>script data-ommittrue defer>AEC.Bind.apply({performance:false})/script> script data-ommittrue defer> (function() { document.addEventListener(DOMContentLoaded, () > { AEC.CookieConsent.getConsentDialog(dataLayer, {type:json,cookie:https:\/\/textieltrade.nl\/datalayer\/index\/cookie\/,cookieContent:https:\/\/textieltrade.nl\/datalayer\/index\/cookieContent\/,cookieConsent:https:\/\/textieltrade.nl\/datalayer\/index\/cookieConsent\/}); }); })(); /script> script typetext/x-magento-init defer>{ *: { Cream_AddToCartOverlay/js/modal: {} }}/script>script typetext/javascript srchttps://chimpstatic.com/mcjs-connected/js/users/7c85c6fa0fdc2e380d3d2af15/55145df9d4587132a843af997.js deferdefer>/script> script defer> /*! modernizr 3.11.4 (Custom Build) | MIT * * https://modernizr.com/download/?-avif-webp-setclasses !*/ !function (A, n, e, o) { function a(A, n) { return typeof A n } function t(A) { var n f.className, e Modernizr._config.classPrefix || ; if (u && (n n.baseVal), Modernizr._config.enableJSClass) { var o new RegExp((^|\\s) + e + no-js(\\s|$)); n n.replace(o, $1 + e + js$2) } Modernizr._config.enableClasses && (A.length > 0 && (n + + e + A.join( + e)), u ? f.className.baseVal n : f.className n) } function i(A, n) { if (object typeof A) for (var e in A) r(A, e) && i(e, Ae); else { A A.toLowerCase(); var o A.split(.), a Modernizro0; if (2 o.length && (a ao1), void 0 ! a) return Modernizr; n function typeof n ? n() : n, 1 o.length ? Modernizro0 n : (!Modernizro0 || Modernizro0 instanceof Boolean || (Modernizro0 new Boolean(Modernizro0)), Modernizro0o1 n), t((n && !1 ! n ? : no-) + o.join(-)), Modernizr._trigger(A, n) } return Modernizr } var s , l { _version: 3.11.4, _config: {classPrefix: , enableClasses: !0, enableJSClass: !0, usePrefixes: !0}, _q: , on: function (A, n) { var e this; setTimeout(function () { n(eA) }, 0) }, addTest: function (A, n, e) { s.push({name: A, fn: n, options: e}) }, addAsyncTest: function (A) { s.push({name: null, fn: A}) } }, Modernizr function () { }; Modernizr.prototype l, Modernizr new Modernizr; var r, c , f e.documentElement, u svg f.nodeName.toLowerCase(); !function () { var A {}.hasOwnProperty; r a(A, undefined) || a(A.call, undefined) ? function (A, n) { return n in A && a(A.constructor.prototypen, undefined) } : function (n, e) { return A.call(n, e) } }(), l._l {}, l.on function (A, n) { this._lA || (this._lA ), this._lA.push(n), Modernizr.hasOwnProperty(A) && setTimeout(function () { Modernizr._trigger(A, ModernizrA) }, 0) }, l._trigger function (A, n) { if (this._lA) { var e this._lA; setTimeout(function () { var A; for (A 0; A e.length; A++) (0, eA)(n) }, 0), delete this._lA } }, Modernizr._q.push(function () { l.addTest i }), Modernizr.addAsyncTest(function () { function A(A, n, e) { function o(n) { var o !(!n || load ! n.type) && 1 a.width; i(A, webp A && o ? new Boolean(o) : o), e && e(n) } var a new Image; a.onerror o, a.onload o, a.src n } var n { uri: data:image/webp;base64,UklGRiQAAABXRUJQVlA4IBgAAAAwAQCdASoBAAEAAwA0JaQAA3AA/vuUAAA, name: webp }, e n.shift(); A(e.name, e.uri, function (e) { if (e && load e.type) for (var o 0; o n.length; o++) A(no.name, no.uri) }) }), Modernizr.addAsyncTest(function () { var A new Image; A.onload A.onerror function () { i(avif, 1 A.width) }, A.src data:image/avif;base64,AAAAHGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZgAAAPBtZXRhAAAAAAAAAChoZGxyAAAAAAAAAABwaWN0AAAAAAAAAAAAAAAAbGliYXZpZgAAAAAOcGl0bQAAAAAAAQAAAB5pbG9jAAAAAEQAAAEAAQAAAAEAAAEUAAAAFQAAAChpaW5mAAAAAAABAAAAGmluZmUCAAAAAAEAAGF2MDFDb2xvcgAAAABoaXBycAAAAElpcGNvAAAAFGlzcGUAAAAAAAAAAQAAAAEAAAAOcGl4aQAAAAABCAAAAAxhdjFDgQAcAAAAABNjb2xybmNseAABAAEAAQAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB1tZGF0EgAKBxgADlgICAkyCB/xgAAghQm0 }), function () { var A, n, e, o, t, i, l; for (var r in s) if (s.hasOwnProperty(r)) { if (A , n sr, n.name && (A.push(n.name.toLowerCase()), n.options && n.options.aliases && n.options.aliases.length)) for (e 0; e n.options.aliases.length; e++) A.push(n.options.aliasese.toLowerCase()); for (o a(n.fn, function) ? n.fn() : n.fn, t 0; t A.length; t++) i At, l i.split(.), 1 l.length ? Modernizrl0 o : (Modernizrl0 && (!Modernizrl0 || Modernizrl0 instanceof Boolean) || (Modernizrl0 new Boolean(Modernizrl0)), Modernizrl0l1 o), c.push((o ? : no-) + l.join(-)) } }(), t(c), delete l.addTest, delete l.addAsyncTest; for (var d 0; d Modernizr._q.length; d++) Modernizr._qd(); A.Modernizr Modernizr }(window, window, document); /script>script defer> var BASE_URL https://textieltrade.nl/; var THEME_PATH https://textieltrade.nl/static/version1729148135/frontend/TextielTrade/default/nl_NL; var COOKIE_CONFIG { expires: null, path: \u002F, domain: .textieltrade.nl, secure: false, lifetime: 86400, cookie_restriction_enabled: false }; var CURRENT_STORE_CODE nl; var CURRENT_WEBSITE_ID 1; window.hyva window.hyva || {} window.cookie_consent_groups window.cookie_consent_groups || {} window.cookie_consent_groupsnecessary true; window.cookie_consent_config window.cookie_consent_config || {}; window.cookie_consent_confignecessary .concat( window.cookie_consent_confignecessary || , user_allowed_save_cookie, form_key, mage-messages, private_content_version, mage-cache-sessid, last_visited_store, section_data_ids );/script>script defer> use strict; (function( hyva, undefined ) { function lifetimeToExpires(options, defaults) { var lifetime options.lifetime || defaults.lifetime; if (lifetime) { var date new Date; date.setTime(date.getTime() + lifetime * 1000); return date; } return null; } function generateRandomString() { const allowedCharacters 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ, length 16; let formKey , charactersLength allowedCharacters.length; for (var i 0; i length; i++) { formKey + allowedCharactersMath.round(Math.random() * (charactersLength - 1)) } return formKey; } const cookieTempStorage {}; const internalCookie { get(name) { const v document.cookie.match((^|;) ? + name + (^;*)(;|$)); return v ? v2 : null; }, set(name, value, days, skipSetDomain) { let expires, path, domain, secure, samesite; const defaultCookieConfig { expires: null, path: /, domain: null, secure: false, lifetime: null, samesite: lax }; const cookieConfig window.COOKIE_CONFIG || {}; expires days ? lifetimeToExpires({lifetime: 24 * 60 * 60 * days, expires: null}, defaultCookieConfig) : lifetimeToExpires(window.COOKIE_CONFIG, defaultCookieConfig) || defaultCookieConfig.expires; path cookieConfig.path || defaultCookieConfig.path; domain !skipSetDomain && (cookieConfig.domain || defaultCookieConfig.domain); secure cookieConfig.secure || defaultCookieConfig.secure; samesite cookieConfig.samesite || defaultCookieConfig.samesite; document.cookie name + + encodeURIComponent(value) + (expires ? ; expires + expires.toGMTString() : ) + (path ? ; path + path : ) + (domain ? ; domain + domain : ) + (secure ? ; secure : ) + (samesite ? ; samesite + samesite : lax); }, isWebsiteAllowedToSaveCookie() { const allowedCookies this.get(user_allowed_save_cookie); if (allowedCookies) { const allowedWebsites JSON.parse(unescape(allowedCookies)); return allowedWebsitesCURRENT_WEBSITE_ID 1; } return false; }, getGroupByCookieName(name) { const cookieConsentConfig window.cookie_consent_config || {}; let group null; for (let prop in cookieConsentConfig) { if (!cookieConsentConfig.hasOwnProperty(prop)) continue; if (cookieConsentConfigprop.includes(name)) { group prop; break; } } return group; }, isCookieAllowed(name) { const cookieGroup this.getGroupByCookieName(name); return cookieGroup ? window.cookie_consent_groupscookieGroup : this.isWebsiteAllowedToSaveCookie(); }, saveTempStorageCookies() { for (const name, data of Object.entries(cookieTempStorage)) { if (this.isCookieAllowed(name)) { this.set(name, datavalue, datadays, dataskipSetDomain); delete cookieTempStoragename; } } } }; hyva.getCookie (name) > { const cookieConfig window.COOKIE_CONFIG || {}; if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) { return cookieTempStoragename ? cookieTempStoragenamevalue : null; } return internalCookie.get(name); } hyva.setCookie (name, value, days, skipSetDomain) > { const cookieConfig window.COOKIE_CONFIG || {}; if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) { cookieTempStoragename {value, days, skipSetDomain}; return; } return internalCookie.set(name, value, days, skipSetDomain); } hyva.getBrowserStorage () > { const browserStorage window.localStorage || window.sessionStorage; if (!browserStorage) { console.warn(Browser Storage is unavailable); return false; } try { browserStorage.setItem(storage_test, 1); browserStorage.removeItem(storage_test); } catch (error) { console.warn(Browser Storage is not accessible, error); return false; } return browserStorage; } hyva.postForm (postParams) > { const form document.createElement(form); let data postParams.data; if (! postParams.skipUenc && ! data.uenc) { data.uenc btoa(window.location.href); } form.method POST; form.action postParams.action; Object.keys(postParams.data).map(key > { const field document.createElement(input); field.type hidden field.value postParams.datakey; field.name key; form.appendChild(field); }); const form_key document.createElement(input); form_key.type hidden; form_key.value hyva.getFormKey(); form_key.nameform_key; form.appendChild(form_key); document.body.appendChild(form); form.submit(); } hyva.getFormKey function () { let formKey hyva.getCookie(form_key); if (!formKey) { formKey generateRandomString(); hyva.setCookie(form_key, formKey); } return formKey; } hyva.formatPrice (value, showSign) > { var formatter new Intl.NumberFormat( nl\u002DNL, { style: currency, currency: EUR, signDisplay: showSign ? always : auto } ); return (typeof Intl.NumberFormat.prototype.formatToParts function) ? formatter.formatToParts(value).map(({type, value}) > { switch (type) { case currency: return € || value; case minusSign: return - ; case plusSign: return + ; default : return value; } }).reduce((string, part) > string + part) : formatter.format(value); } const formatStr function (str, nStart) { const args Array.from(arguments).slice(2); return str.replace(/(%+)(0-9+)/g, (m, p, n) > { const idx parseInt(n) - nStart; if (argsidx null || argsidx void 0) { return m; } return p.length % 2 ? p.slice(0, -1).replace(%%, %) + argsidx : p.replace(%%, %) + n; }) } hyva.str function (string) { const args Array.from(arguments); args.splice(1, 0, 1); return formatStr.apply(undefined, args); } hyva.strf function () { const args Array.from(arguments); args.splice(1, 0, 0); return formatStr.apply(undefined, args); } /** * Take a html string as `content` parameter and * extract an element from the DOM to replace in * the current page under the same selector, * defined by `targetSelector` */ hyva.replaceDomElement (targetSelector, content) > { // Parse the content and extract the DOM node using the `targetSelector` const parser new DOMParser(); const doc parser.parseFromString(content, text/html); const contentNode doc.querySelector(targetSelector); // Bail if content cant be found if (!contentNode) { return; } // Extract all the script tags from the new content. // Script tags wont execute when inserted into a dom-element directly, // therefore we need to inject them to the head of the document. const tmpScripts contentNode.getElementsByTagName(script); if (tmpScripts.length > 0) { // Push all script tags into an array // (to prevent dom manipulation while iterating over dom nodes) const scripts ; for (let i 0; i tmpScripts.length; i++) { scripts.push(tmpScriptsi); } // Iterate over all script tags and duplicate+inject each into the head for (let i 0; i scripts.length; i++) { let script document.createElement(script); script.innerHTML scriptsi.innerHTML; document.head.appendChild(script); // Remove the original (non-executing) node from the page scriptsi.parentNode.removeChild(scriptsi); } } // Replace the old DOM node with the new content document.querySelector(targetSelector).replaceWith(contentNode); // Reload customerSectionData and display cookie-messages if present window.dispatchEvent(new CustomEvent(reload-customer-section-data)); hyva.initMessages(); } const replace {+: -, /: _, : ,}; hyva.getUenc () > btoa(window.location.href).replace(/+//g, match > replacematch); window.addEventListener(user-allowed-save-cookie, () > internalCookie.saveTempStorageCookies()) }( window.hyva window.hyva || {} ));/script>/head>body idhtml-body classcms-home cms-index-index page-layout-full_width>!-- Google Tag Manager (noscript) -->noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-M5FDF4FMheight0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>!-- End Google Tag Manager (noscript) -->input nameform_key typehidden value2bo8jyl6Pb8bkBLy />div classpage-wrapper>header classpage-header>script typeapplication/javascript async srchttps://static.klaviyo.com/onsite/js/klaviyo.js?company_idTTY4dy>/script> script typetext/x-magento-init defer> { *: { KlaviyoCustomerData: {} } } /script>script defer> function initHeader () { return { searchOpen: false, cart: {}, getData(data) { if (data.cart) { this.cart data.cart } } } } function initCompareHeader() { return { compareProducts: null, itemCount: 0, receiveCompareData(data) { if (datacompare-products) { this.compareProducts datacompare-products; this.itemCount this.compareProducts.count; } } } }/script>div idheader classborder-b-2 border-#ebf2fa pb-4 md:pb-0 x-datainitHeader() @keydown.window.escapesearchOpen false; @private-content-loaded.windowgetData(event.detail.data)> div classbg-primary> div classcontainer text-white text-sm md:text-base py-1 md:py-2 flex justify-between> div classhidden md:block flex-auto> Groothandel in Disney licentie artikelen en kleding voor kinderen/div> div x-data{ open: false } classhidden md:block text-primary mr-8 > div classrelative inline-block text-left> div> a @click.preventopen !open @click.outsideopen false @keydown.window.escapeopenfalse typebutton classtext-white flex font-bold cursor-pointer flex items-center > NL svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classflex fill-white self-center h-4 w-4 mb-1 ml-1 width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /a> /div> nav x-cloak x-showopen classmt-2 absolute right-0 top-full z-30 overflow-auto origin-top-left rounded-sm shadow-lg bg-container-lighter> div classflex flex-col w-min rolemenu aria-orientationvertical aria-labelledbyoptions-menu> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/en/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuY29tLz9fX19zdG9yZT1lbg~~/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 50 30 width25 height25 classflex fill-white self-center h-5 w-6> clipPath idt> path dM25,15h25v15zv15h-25zh-25v-15zv-15h25z/> /clipPath> path dM0,0v30h50v-30z fill#012169/> path dM0,0 50,30M50,0 0,30 stroke#fff stroke-width6/> path dM0,0 50,30M50,0 0,30 clip-pathurl(#t) stroke#C8102E stroke-width4/> path dM-1 11h22v-12h8v12h22v8h-22v12h-8v-12h-22z fill#C8102E stroke#FFF stroke-width2/>/svg> div classml-2> EN /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/de/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZGUvP19fX3N0b3JlPWRl/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 6/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -39)> g idGroup-6 transformtranslate(12, 39)> g idGroup-Copy-6 transformtranslate(1, 1)> rect idRectangle fill#222222 x0 y0 width21 height5/> rect idRectangle-Copy-2 fill#FF0000 x0 y5 width21 height5/> rect idRectangle-Copy-3 fill#E6C712 x0 y10 width21 height5/> /g> g idGroup-Copy-16 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> DE /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/fr/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZnIvP19fX3N0b3JlPWZy/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 5/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -70)> g idGroup-5 transformtranslate(12, 70)> g idGroup-Copy-11 transformtranslate(1, 1)> rect idRectangle fill#FF0000 x0 y2.27373675e-13 width7 height15/> rect idRectangle-Copy-2 fill#FFFFFF x7 y0 width7 height15/> rect idRectangle-Copy-3 fill#175EC8 x14 y0 width7 height15/> /g> g idGroup-Copy-15 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> FR /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/es/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZXMvP19fX3N0b3JlPWVz/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 4/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -101)> g idGroup-4 transformtranslate(12, 101)> g idGroup-Copy-8 transformtranslate(1, 1)> rect idRectangle fill#CC1717 x0 y0 width21 height5/> rect idRectangle-Copy-2 fill#EBBC28 x0 y5 width21 height5/> rect idRectangle-Copy-3 fill#CC1717 x0 y10 width21 height5/> /g> g idGroup-Copy-14 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> ES /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/it/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuaXQvP19fX3N0b3JlPWl0/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 3/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -132)> g idGroup-3 transformtranslate(12, 132)> g idGroup-Copy-9 transformtranslate(1, 1)> rect idRectangle fill#17A52F x0 y2.27373675e-13 width7 height15/> rect idRectangle-Copy-2 fill#FFFFFF x7 y0 width7 height15/> rect idRectangle-Copy-3 fill#E61212 x14 y0 width7 height15/> /g> g idGroup-Copy-13 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> IT /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/pl/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUucGwvP19fX3N0b3JlPXBs/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 2/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -163)> g idGroup-2 transformtranslate(12, 163)> g idGroup-Copy-10 transformtranslate(1, 8) fill#E61212> rect idRectangle-Copy-3 x0 y0 width21 height8/> /g> g idGroup-Copy-12 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> PL /div> /a> /div> /nav> /div> /div> div classw-full md:w-auto justify-end flex> a href/company-info> Klantenservice /a> /div> /div> /div> div> div classcontainer flex items-center px-2 lg:px-4 py-4 md:py-5 justify-between> div x-datainitMenuMobile_6717b5125a4f3() classz-30 xl:order-2 navigation lg:hidden> !-- mobile --> div @clickopen false classlg:hidden opacity-75 :class{ min-h-screen fixed top-0 left-0 w-full bg-primary z-20: open } >/div> div @load.windowsetActiveMenu($root) classbg-white z-30 :class{h-screen overflow-x-hidden overflow-y-auto fixed top-0 left-0 max-w-25rem w-85vw : open} @toggle-mobile-menu.windowopen !open @keydown.window.escapeopenfalse > div classflex items-baseline justify-between menu-icon> div classflex justify-end items-center w-full> div classpy-6 pl-8 :class{ hidden : !open } x-cloak> div x-data{ open: false } classmd:hidden text-primary > div classrelative inline-block text-left> div classborder border-primary rounded-lg px-2> a @click.preventopen !open @click.outsideopen false @keydown.window.escapeopenfalse typebutton classflex cursor-pointer flex items-center aria-haspopuptrue aria-expandedtrue > NL svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classflex fill-primary self-center h-4 w-4 mb-0.5 ml-1 width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /a> /div> nav x-cloak x-showopen classrounded-lg absolute left-0 top-full z-20 overflow-auto origin-top-left shadow-lg> div classflex flex-col w-min bg-white rolemenu aria-orientationvertical aria-labelledbyoptions-menu> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/en/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuY29tLz9fX19zdG9yZT1lbg~~/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 50 30 width25 height25 classflex fill-white self-center h-5 w-6> clipPath idt> path dM25,15h25v15zv15h-25zh-25v-15zv-15h25z/> /clipPath> path dM0,0v30h50v-30z fill#012169/> path dM0,0 50,30M50,0 0,30 stroke#fff stroke-width6/> path dM0,0 50,30M50,0 0,30 clip-pathurl(#t) stroke#C8102E stroke-width4/> path dM-1 11h22v-12h8v12h22v8h-22v12h-8v-12h-22z fill#C8102E stroke#FFF stroke-width2/>/svg> div classml-2> EN /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/de/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZGUvP19fX3N0b3JlPWRl/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 6/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -39)> g idGroup-6 transformtranslate(12, 39)> g idGroup-Copy-6 transformtranslate(1, 1)> rect idRectangle fill#222222 x0 y0 width21 height5/> rect idRectangle-Copy-2 fill#FF0000 x0 y5 width21 height5/> rect idRectangle-Copy-3 fill#E6C712 x0 y10 width21 height5/> /g> g idGroup-Copy-16 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> DE /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/fr/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZnIvP19fX3N0b3JlPWZy/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 5/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -70)> g idGroup-5 transformtranslate(12, 70)> g idGroup-Copy-11 transformtranslate(1, 1)> rect idRectangle fill#FF0000 x0 y2.27373675e-13 width7 height15/> rect idRectangle-Copy-2 fill#FFFFFF x7 y0 width7 height15/> rect idRectangle-Copy-3 fill#175EC8 x14 y0 width7 height15/> /g> g idGroup-Copy-15 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> FR /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/es/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuZXMvP19fX3N0b3JlPWVz/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 4/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -101)> g idGroup-4 transformtranslate(12, 101)> g idGroup-Copy-8 transformtranslate(1, 1)> rect idRectangle fill#CC1717 x0 y0 width21 height5/> rect idRectangle-Copy-2 fill#EBBC28 x0 y5 width21 height5/> rect idRectangle-Copy-3 fill#CC1717 x0 y10 width21 height5/> /g> g idGroup-Copy-14 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> ES /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/it/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUuaXQvP19fX3N0b3JlPWl0/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 3/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -132)> g idGroup-3 transformtranslate(12, 132)> g idGroup-Copy-9 transformtranslate(1, 1)> rect idRectangle fill#17A52F x0 y2.27373675e-13 width7 height15/> rect idRectangle-Copy-2 fill#FFFFFF x7 y0 width7 height15/> rect idRectangle-Copy-3 fill#E61212 x14 y0 width7 height15/> /g> g idGroup-Copy-13 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> IT /div> /a> a hrefhttps://textieltrade.nl/stores/store/redirect/___store/pl/uenc/aHR0cHM6Ly90ZXh0aWVsdHJhZGUucGwvP19fX3N0b3JlPXBs/___from_store/nl/ classw-full flex items-center px-2 py-2 lg:px-5 lg:py-2 hover:bg-primary-200 > ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width25 height25 viewBox0 0 23 17 version1.1 classflex fill-white self-center h-5 w-6> title>Group 2/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g iddropdown-DU transformtranslate(-12, -163)> g idGroup-2 transformtranslate(12, 163)> g idGroup-Copy-10 transformtranslate(1, 8) fill#E61212> rect idRectangle-Copy-3 x0 y0 width21 height8/> /g> g idGroup-Copy-12 stroke#F0F7FF> rect idRectangle-Copy-3 x0.5 y0.5 width22 height16/> /g> /g> /g> /g>/svg> div classml-2> PL /div> /a> /div> /nav> /div> /div> /div> button @click$dispatch(toggle-mobile-menu) typebutton classflex items-center justify-center cursor-pointer :class{ ml-auto: open }> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classhidden w-8 h-8 my-8 mr-8 text-primary-600 width64 height64 :class{ hidden : !open, block: open }> path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18L18 6M6 6l12 12/>/svg> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classml-1 text-primary width40 height40 :class{ hidden : open, block: !open }> path stroke-linecapround stroke-linejoinround stroke-width2 dM4 6h16M4 12h16M4 18h16/>/svg> /button> /div> /div> nav classhidden w-full duration-150 ease-in-out transform transition-display z-20 :class{ hidden : !open } > div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleBaby @clickmobilePanelActiveId mobilePanelActiveId category-node-4 ? 0 : category-node-4> Baby /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-4 ? 0 : category-node-4 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-4, translate-x-0 : mobilePanelActiveId category-node-4, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Baby /span> /button> a hrefhttps://textieltrade.nl/baby.html titleBaby classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/baby/babybroekjes.html titleBabybroekjes classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Babybroekjes /span> /a> a hrefhttps://textieltrade.nl/baby/lange-mouwen-shirts.html titleLange mouwen shirts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Lange mouwen shirts /span> /a> a hrefhttps://textieltrade.nl/baby/mutsen-sjaals-en-handschoenen.html titleMutsen, Sjaals en Handschoenen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Mutsen, Sjaals en Handschoenen /span> /a> a hrefhttps://textieltrade.nl/baby/petten.html titlePetten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Petten /span> /a> a hrefhttps://textieltrade.nl/baby/pyjama-s.html titlePyjama's classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Pyjama's /span> /a> a hrefhttps://textieltrade.nl/baby/rammelaars.html titleRammelaars classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Rammelaars /span> /a> a hrefhttps://textieltrade.nl/baby/romper-baby-pakje.html titleRomper / Baby Pakje classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Romper / Baby Pakje /span> /a> a hrefhttps://textieltrade.nl/baby/slabbetjes.html titleSlabbetjes classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Slabbetjes /span> /a> a hrefhttps://textieltrade.nl/baby/sokken.html titleSokken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Sokken /span> /a> a hrefhttps://textieltrade.nl/baby/t-shirts.html titleT-shirts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> T-shirts /span> /a> a hrefhttps://textieltrade.nl/baby/zwemkleding.html titleZwemkleding classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zwemkleding /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleKinder @clickmobilePanelActiveId mobilePanelActiveId category-node-23 ? 0 : category-node-23> Kinder /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-23 ? 0 : category-node-23 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-23, translate-x-0 : mobilePanelActiveId category-node-23, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Kinder /span> /button> a hrefhttps://textieltrade.nl/kinder.html titleKinder classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/kinder/2-delige-sets.html title2 Delige Sets classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> 2 Delige Sets /span> /a> a hrefhttps://textieltrade.nl/kinder/badjassen.html titleBadjassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Badjassen /span> /a> a hrefhttps://textieltrade.nl/kinder/hoodie-dekens.html titleHoodie dekens classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Hoodie dekens /span> /a> a hrefhttps://textieltrade.nl/kinder/hoodies-en-sweaters.html titleHoodies en Sweaters classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Hoodies en Sweaters /span> /a> a hrefhttps://textieltrade.nl/kinder/joggingbroeken.html titleJoggingbroeken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Joggingbroeken /span> /a> a hrefhttps://textieltrade.nl/kinder/joggingpakken.html titleJoggingpakken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Joggingpakken /span> /a> a hrefhttps://textieltrade.nl/kinder/jurken-en-jumpsuits.html titleJurken en Jumpsuits classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Jurken en Jumpsuits /span> /a> a hrefhttps://textieltrade.nl/kinder/lange-mouwen-shirts.html titleLange mouwen shirts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Lange mouwen shirts /span> /a> a hrefhttps://textieltrade.nl/kinder/leggings.html titleLeggings classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Leggings /span> /a> a hrefhttps://textieltrade.nl/kinder/mutsen-sjaals-en-handschoenen.html titleMutsen, Sjaals en Handschoenen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Mutsen, Sjaals en Handschoenen /span> /a> a hrefhttps://textieltrade.nl/kinder/onesies.html titleOnesies classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Onesies /span> /a> a hrefhttps://textieltrade.nl/kinder/ondergoed.html titleOndergoed classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Ondergoed /span> /a> a hrefhttps://textieltrade.nl/kinder/petten.html titlePetten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Petten /span> /a> a hrefhttps://textieltrade.nl/kinder/pyjama-s.html titlePyjama's classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Pyjama's /span> /a> a hrefhttps://textieltrade.nl/kinder/schoenen.html titleSchoenen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Schoenen /span> /a> a hrefhttps://textieltrade.nl/kinder/schorten.html titleSchorten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Schorten /span> /a> a hrefhttps://textieltrade.nl/kinder/shorts.html titleShorts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Shorts /span> /a> a hrefhttps://textieltrade.nl/kinder/sokken.html titleSokken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Sokken /span> /a> a hrefhttps://textieltrade.nl/kinder/t-shirts.html titleT-shirts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> T-shirts /span> /a> a hrefhttps://textieltrade.nl/kinder/winterjassen.html titleWinterjassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Winterjassen /span> /a> a hrefhttps://textieltrade.nl/kinder/zwemkleding.html titleZwemkleding classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zwemkleding /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleTassen @clickmobilePanelActiveId mobilePanelActiveId category-node-38 ? 0 : category-node-38> Tassen /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-38 ? 0 : category-node-38 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-38, translate-x-0 : mobilePanelActiveId category-node-38, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Tassen /span> /button> a hrefhttps://textieltrade.nl/tassen.html titleTassen classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/tassen/3d-rugzakken.html title3D Rugzakken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> 3D Rugzakken /span> /a> a hrefhttps://textieltrade.nl/tassen/etuis.html titleEtuis classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Etuis /span> /a> a hrefhttps://textieltrade.nl/tassen/gymtassen.html titleGymtassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Gymtassen /span> /a> a hrefhttps://textieltrade.nl/tassen/heuptasjes.html titleHeuptasjes classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Heuptasjes /span> /a> a hrefhttps://textieltrade.nl/tassen/luiertassen.html titleLuiertassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Luiertassen /span> /a> a hrefhttps://textieltrade.nl/tassen/lunchtassen.html titleLunchtassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Lunchtassen /span> /a> a hrefhttps://textieltrade.nl/tassen/portemonnees.html titlePortemonnees classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Portemonnees /span> /a> a hrefhttps://textieltrade.nl/tassen/rugzakken.html titleRugzakken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Rugzakken /span> /a> a hrefhttps://textieltrade.nl/tassen/schoudertassen.html titleSchoudertassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Schoudertassen /span> /a> a hrefhttps://textieltrade.nl/tassen/shoppers.html titleShoppers classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Shoppers /span> /a> a hrefhttps://textieltrade.nl/tassen/sporttassen.html titleSporttassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Sporttassen /span> /a> a hrefhttps://textieltrade.nl/tassen/toilettassen.html titleToilettassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Toilettassen /span> /a> a hrefhttps://textieltrade.nl/tassen/trolleys.html titleTrolleys classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Trolleys /span> /a> a hrefhttps://textieltrade.nl/tassen/telefoontassen.html titleTelefoontassen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Telefoontassen /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleBed en bad textiel @clickmobilePanelActiveId mobilePanelActiveId category-node-403 ? 0 : category-node-403> Bed en bad textiel /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-403 ? 0 : category-node-403 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-403, translate-x-0 : mobilePanelActiveId category-node-403, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Bed en bad textiel /span> /button> a hrefhttps://textieltrade.nl/bed-en-bad-textiel.html titleBed en bad textiel classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/dekbedovertrekken.html titleDekbedovertrekken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Dekbedovertrekken /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/fleecedekens.html titleFleecedekens classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Fleecedekens /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/hand-gezichtshanddoeken.html titleHand + Gezichtshanddoeken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Hand + Gezichtshanddoeken /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/kussens.html titleKussens classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Kussens /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/poncho-s.html titlePoncho's classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Poncho's /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/slaapzakken.html titleSlaapzakken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Slaapzakken /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/strandlakens.html titleStrandlakens classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Strandlakens /span> /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/vloerkleden.html titleVloerkleden classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Vloerkleden /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleSpeelgoed @clickmobilePanelActiveId mobilePanelActiveId category-node-375 ? 0 : category-node-375> Speelgoed /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-375 ? 0 : category-node-375 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-375, translate-x-0 : mobilePanelActiveId category-node-375, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Speelgoed /span> /button> a hrefhttps://textieltrade.nl/speelgoed.html titleSpeelgoed classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/speelgoed/bouwblokjes.html titleBouwblokjes classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Bouwblokjes /span> /a> a hrefhttps://textieltrade.nl/speelgoed/buitenspeelgoed.html titleBuitenspeelgoed classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Buitenspeelgoed /span> /a> a hrefhttps://textieltrade.nl/speelgoed/creatief-speelgoed.html titleCreatief speelgoed classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Creatief speelgoed /span> /a> a hrefhttps://textieltrade.nl/speelgoed/elektronisch-speelplezier.html titleElektronisch speelplezier classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Elektronisch speelplezier /span> /a> a hrefhttps://textieltrade.nl/speelgoed/fisher-price.html titleFisher-Price classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Fisher-Price /span> /a> a hrefhttps://textieltrade.nl/speelgoed/gezelschapsspellen.html titleGezelschapsspellen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Gezelschapsspellen /span> /a> a hrefhttps://textieltrade.nl/speelgoed/jolly-life.html titleJolly Life classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Jolly Life /span> /a> a hrefhttps://textieltrade.nl/speelgoed/muziek-speelgoed-instrumenten.html titleMuziek Speelgoed & Instrumenten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Muziek Speelgoed & Instrumenten /span> /a> a hrefhttps://textieltrade.nl/speelgoed/peuter-speelgoed.html titlePeuter speelgoed classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Peuter speelgoed /span> /a> a hrefhttps://textieltrade.nl/speelgoed/pluche.html titlePluche classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Pluche /span> /a> a hrefhttps://textieltrade.nl/speelgoed/pluche-speelgoed-met-licentie.html titlePluche speelgoed met licentie classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Pluche speelgoed met licentie /span> /a> a hrefhttps://textieltrade.nl/speelgoed/poppen.html titlePoppen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Poppen /span> /a> a hrefhttps://textieltrade.nl/speelgoed/puzzels.html titlePuzzels classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Puzzels /span> /a> a hrefhttps://textieltrade.nl/speelgoed/rc-remote-control-toys.html titleRC Remote Control Toys classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> RC Remote Control Toys /span> /a> a hrefhttps://textieltrade.nl/speelgoed/speelgoedfiguren.html titleSpeelgoedfiguren classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Speelgoedfiguren /span> /a> a hrefhttps://textieltrade.nl/speelgoed/speelgoedvoertuigen.html titleSpeelgoedvoertuigen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Speelgoedvoertuigen /span> /a> a hrefhttps://textieltrade.nl/speelgoed/soft-speelgoed-pistolen.html titleSoft speelgoed pistolen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Soft speelgoed pistolen /span> /a> a hrefhttps://textieltrade.nl/speelgoed/voetballen.html titleVoetballen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Voetballen /span> /a> a hrefhttps://textieltrade.nl/speelgoed/walkie-talkie.html titleWalkie Talkie classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Walkie Talkie /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleVolwassenen @clickmobilePanelActiveId mobilePanelActiveId category-node-366 ? 0 : category-node-366> Volwassenen /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-366 ? 0 : category-node-366 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-366, translate-x-0 : mobilePanelActiveId category-node-366, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Volwassenen /span> /button> a hrefhttps://textieltrade.nl/volwassenen.html titleVolwassenen classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/volwassenen/hoodie-dekens.html titleHoodie dekens classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Hoodie dekens /span> /a> a hrefhttps://textieltrade.nl/volwassenen/hoodies-en-sweaters.html titleHoodies en sweaters classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Hoodies en sweaters /span> /a> a hrefhttps://textieltrade.nl/volwassenen/t-shirts.html titleT-shirts classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> T-shirts /span> /a> a hrefhttps://textieltrade.nl/volwassenen/pyjamas.html titlePyjamas classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Pyjamas /span> /a> a hrefhttps://textieltrade.nl/volwassenen/sokken.html titleSokken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Sokken /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleAccessoires @clickmobilePanelActiveId mobilePanelActiveId category-node-39 ? 0 : category-node-39> Accessoires /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-39 ? 0 : category-node-39 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-39, translate-x-0 : mobilePanelActiveId category-node-39, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> Accessoires /span> /button> a hrefhttps://textieltrade.nl/accessoires.html titleAccessoires classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/accessoires/eten-en-drinken-3.html titleEten en Drinken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Eten en Drinken /span> /a> a hrefhttps://textieltrade.nl/accessoires/fiets-accessories.html titleFiets Accessories classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Fiets Accessories /span> /a> a hrefhttps://textieltrade.nl/accessoires/gadgets-accessoires.html titleGadgets accessoires classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Gadgets accessoires /span> /a> a hrefhttps://textieltrade.nl/accessoires/haar-accesoires.html titleHaar accesoires classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Haar accesoires /span> /a> a hrefhttps://textieltrade.nl/accessoires/horloges-en-klokken-3.html titleHorloges en Klokken classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Horloges en Klokken /span> /a> a hrefhttps://textieltrade.nl/accessoires/huisdieren.html titleHuisdieren classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Huisdieren /span> /a> a hrefhttps://textieltrade.nl/accessoires/juwelen-doos-3.html titleJuwelen doos classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Juwelen doos /span> /a> a hrefhttps://textieltrade.nl/accessoires/kleurplezier-3.html titleKleurplezier classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Kleurplezier /span> /a> a hrefhttps://textieltrade.nl/accessoires/koptelefoon-3.html titleKoptelefoon classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Koptelefoon /span> /a> a hrefhttps://textieltrade.nl/accessoires/make-up.html titleMake Up classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Make Up /span> /a> a hrefhttps://textieltrade.nl/accessoires/kinderkamer.html titleKinderkamer classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Kinderkamer /span> /a> a hrefhttps://textieltrade.nl/accessoires/paraplu-s.html titleParaplu's classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Paraplu's /span> /a> a hrefhttps://textieltrade.nl/accessoires/placemats.html titlePlacemats classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Placemats /span> /a> a hrefhttps://textieltrade.nl/accessoires/sleutelhangers.html titleSleutelhangers classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Sleutelhangers /span> /a> a hrefhttps://textieltrade.nl/accessoires/spaarpotten.html titleSpaarpotten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Spaarpotten /span> /a> a hrefhttps://textieltrade.nl/accessoires/stickervellen.html titleStickervellen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Stickervellen /span> /a> a hrefhttps://textieltrade.nl/accessoires/zaklamp.html titleZaklamp classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zaklamp /span> /a> a hrefhttps://textieltrade.nl/accessoires/zonneschermen.html titleZonneschermen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zonneschermen /span> /a> a hrefhttps://textieltrade.nl/accessoires/zonnebrillen.html titleZonnebrillen classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zonnebrillen /span> /a> a hrefhttps://textieltrade.nl/accessoires/zwem-producten.html titleZwem Producten classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> Zwem Producten /span> /a> /div> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > a hrefhttps://textieltrade.nl/deal-of-the-week.html classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary titleDeal of the week> Deal of the week /a> /span> /div> div classlevel-0> span classflex items-center transition-transform duration-150 ease-in-out transform :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > div classflex items-center w-full mx-8 py-2 border-b border-primary-200 cursor-pointer level-0 text-primary 2 titleSALE !!! @clickmobilePanelActiveId mobilePanelActiveId category-node-50 ? 0 : category-node-50> SALE !!! /div> button classabsolute right-0 flex w-8 h-8 mr-8 cursor-pointer text-primary typebutton @clickmobilePanelActiveId mobilePanelActiveId category-node-50 ? 0 : category-node-50 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-full h-full p-1 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM9 5l7 7-7 7/>/svg> /button> /span> div classabsolute top-0 right-0 z-10 w-full h-full transition-transform duration-200 ease-in-out translate-x-full transform :class{ translate-x-full : mobilePanelActiveId ! category-node-50, translate-x-0 : mobilePanelActiveId category-node-50, } > button classtext-primary flex items-center px-8 py-4 cursor-pointer typebutton @clickmobilePanelActiveId 0 > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM15 19l-7-7 7-7/>/svg> span classml-4> SALE !!! /span> /button> a hrefhttps://textieltrade.nl/sale-kleding-speelgoed.html titleSALE !!! classfont-normal no-underline flex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4>Alles weergeven/span>/a> a hrefhttps://textieltrade.nl/sale/0-00-0-99.html title€ 0,00 - € 0,99 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> € 0,00 - € 0,99 /span> /a> a hrefhttps://textieltrade.nl/sale/1-00-1-99.html title€ 1,00 - € 1,99 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> € 1,00 - € 1,99 /span> /a> a hrefhttps://textieltrade.nl/sale/2-00-3-99.html title€ 2,00 - € 3,99 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> € 2,00 - € 3,99 /span> /a> a hrefhttps://textieltrade.nl/sale/4-00-6-99.html title€ 4,00 - € 6,99 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> € 4,00 - € 6,99 /span> /a> a hrefhttps://textieltrade.nl/sale/7-00-9-99.html title€ 7,00 - € 9,99 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> € 7,00 - € 9,99 /span> /a> a hrefhttps://textieltrade.nl/sale/10-00.html title> €10,00 classflex items-center w-full px-8 py-2 cursor-pointer level-0 text-primary > span classw-6>/span> span classml-4> > €10,00 /span> /a> /div> /div> div classlevel-0> span classflex transition-transform duration-150 ease-in-out transform border-container p-8 pb-0 :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > a href/company-info classflex items-center font-normal text-primary no-underline hover:underline> Klantenservice /a> /span> span classflex transition-transform duration-150 ease-in-out transform border-container p-8 pt-0 :class{ -translate-x-full : mobilePanelActiveId, translate-x-0 : !mobilePanelActiveId } > a hrefhttps://textieltrade.nl/customer/account/ classflex items-center text-primary no-underline hover:underline titleAccount> span>Account/span> /a> div classpx-2 text-primary>|/div> a hrefhttps://textieltrade.nl/checkout/cart/index/ classflex items-center text-primary no-underline hover:underline titleWinkelwagen> span>Winkelwagen/span> /a> /span> /div> /nav> /div>/div>script defer> use strict; const initMenuMobile_6717b5125a4f3 () > { return { mobilePanelActiveId: null, open: false, setActiveMenu(menuNode) { Array.from(menuNode.querySelectorAll(a)).filter(link > { return link.href window.location.href.split(?)0; }).map(item > { item.classList.add(underline,font-bold); item.closest(div.level-0) && item.closest(div.level-0).querySelector(a.level-0).classList.add(underline,font-bold); }); } } }/script> div class> a classlogo flex items-center justify-center text-xl font-medium tracking-wide text-gray-800 no-underline hover:no-underline font-title hrefhttps://textieltrade.nl/ titleGroothandel in Disney licentie artikelen en kleding voor kinderen aria-labelstore logo> ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width250 height60 viewBox0 0 243.134742 55.9999418 version1.1 classh-10 w-min lg:h-14 max-w-full md:max-w-max px-2 lg:px-0> title>LOGO Copy/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g idLOGO-Copy transformtranslate(0, 0)> g idLOGO transformtranslate(63.8931, 5.4723) fill-rulenonzero> g idGroothandel transformtranslate(93.8518, 43.4642) rotate(-360) translate(-93.8518, -43.4642)translate(23.0783, 39.2331) fill#0A3A59> path dM4.43017936,8.46205015 C3.78881291,8.46205015 3.19891414,8.35765335 2.66048305,8.14885974 C2.12205196,7.94006614 1.6548838,7.6446035 1.25897859,7.26247181 C0.86307337,6.88034012 0.554267302,6.43320665 0.332560381,5.9210714 C0.11085346,5.40893615 1.77635684e-15,4.84558738 1.77635684e-15,4.23102507 C1.77635684e-15,3.61646277 0.11085346,3.053114 0.332560381,2.54097875 C0.554267302,2.02884349 0.865052896,1.58171003 1.26491716,1.19957834 C1.66478143,0.817446651 2.13392911,0.521984006 2.67236021,0.313190404 C3.2107913,0.104396801 3.80464912,1.70530257e-13 4.45393368,1.70530257e-13 C5.11113633,1.70530257e-13 5.71291226,0.106366552 6.25926146,0.319099656 C6.80561066,0.531832761 7.26881976,0.850932417 7.64888877,1.27639863 L6.91250507,2.00914598 C6.57202658,1.67822782 6.2018552,1.43594845 5.80199094,1.28230788 C5.40212667,1.1286673 4.96861046,1.05184702 4.5014423,1.05184702 C4.02635604,1.05184702 3.58492173,1.13063705 3.17713936,1.28821713 C2.76935698,1.44579721 2.41700134,1.66640932 2.12007243,1.95005346 C1.82314352,2.2336976 1.59351849,2.57052501 1.43119735,2.9605357 C1.26887622,3.35054639 1.18771565,3.77404285 1.18771565,4.23102507 C1.18771565,4.68012829 1.26887622,5.09968525 1.43119735,5.48969594 C1.59351849,5.87970663 1.82314352,6.2185038 2.12007243,6.50608744 C2.41700134,6.79367108 2.76737746,7.01625294 3.17120078,7.17383302 C3.5750241,7.33141309 4.01447889,7.41020313 4.48956515,7.41020313 C4.93297899,7.41020313 5.35857709,7.34126185 5.76635947,7.20337928 C6.17414184,7.06549671 6.55223132,6.83503585 6.90062791,6.51199669 L7.57762583,7.41020313 C7.1658844,7.7568793 6.68485957,8.01885618 6.13455132,8.19613377 C5.58424307,8.37341136 5.01611908,8.46205015 4.43017936,8.46205015 Z M6.43741881,7.25656256 L6.43741881,4.18375105 L7.57762583,4.18375105 L7.57762583,7.41020313 L6.43741881,7.25656256 Z idShape/> path dM14.3281086,8.3675021 L14.3281086,0.0945480464 L17.5705723,0.0945480464 C18.2990379,0.0945480464 18.9206091,0.208793602 19.4352858,0.437284714 C19.9499626,0.665775826 20.3458678,0.996693989 20.6230015,1.4300392 C20.9001351,1.86338441 21.038702,2.37945917 21.038702,2.97826346 C21.038702,3.57706775 20.9001351,4.09117276 20.6230015,4.52057847 C20.3458678,4.94998418 19.9499626,5.27893259 19.4352858,5.5074237 C18.9206091,5.73591481 18.2990379,5.85016037 17.5705723,5.85016037 L14.9813522,5.85016037 L15.5158242,5.3065091 L15.5158242,8.3675021 L14.3281086,8.3675021 Z M19.8866178,8.3675021 L17.7724839,5.36560163 L19.0433397,5.36560163 L21.1812278,8.3675021 L19.8866178,8.3675021 Z M15.5158242,5.42469416 L14.9813522,4.84558738 L17.5349408,4.84558738 C18.2950788,4.84558738 18.8711209,4.68209805 19.2630671,4.35511939 C19.6550132,4.02814072 19.8509863,3.56918875 19.8509863,2.97826346 C19.8509863,2.38733817 19.6550132,1.93035595 19.2630671,1.60731679 C18.8711209,1.28427763 18.2950788,1.12275805 17.5349408,1.12275805 L14.9813522,1.12275805 L15.5158242,0.531832761 L15.5158242,5.42469416 Z idShape/> path dM31.1979286,8.46205015 C30.5644802,8.46205015 29.976561,8.3556836 29.4341709,8.14295049 C28.8917807,7.93021739 28.422633,7.63278499 28.0267278,7.2506533 C27.6308226,6.86852162 27.3220165,6.42138815 27.1003096,5.9092529 C26.8786027,5.39711765 26.7677492,4.83770837 26.7677492,4.23102507 C26.7677492,3.62434178 26.8786027,3.0649325 27.1003096,2.55279725 C27.3220165,2.040662 27.6308226,1.59352853 28.0267278,1.21139684 C28.422633,0.829265157 28.8898012,0.531832761 29.4282323,0.319099656 C29.9666634,0.106366552 30.5565621,5.68434189e-14 31.1979286,5.68434189e-14 C31.8313769,5.68434189e-14 32.4153371,0.104396801 32.9498092,0.313190404 C33.4842812,0.521984006 33.9514494,0.817446651 34.3513136,1.19957834 C34.7511779,1.58171003 35.059984,2.02884349 35.2777318,2.54097875 C35.4954797,3.053114 35.6043536,3.61646277 35.6043536,4.23102507 C35.6043536,4.84558738 35.4954797,5.40893615 35.2777318,5.9210714 C35.059984,6.43320665 34.7511779,6.88034012 34.3513136,7.26247181 C33.9514494,7.6446035 33.4842812,7.94006614 32.9498092,8.14885974 C32.4153371,8.35765335 31.8313769,8.46205015 31.1979286,8.46205015 Z M31.1979286,7.41020313 C31.6571786,7.41020313 32.0827767,7.33141309 32.4747229,7.17383302 C32.8666691,7.01625294 33.2071476,6.79367108 33.4961584,6.50608744 C33.7851692,6.2185038 34.0108351,5.88167638 34.1731563,5.49560519 C34.3354774,5.109534 34.416638,4.6880073 34.416638,4.23102507 C34.416638,3.77404285 34.3354774,3.35251614 34.1731563,2.96644495 C34.0108351,2.58037377 33.7851692,2.24354635 33.4961584,1.95596271 C33.2071476,1.66837907 32.8666691,1.44579721 32.4747229,1.28821713 C32.0827767,1.13063705 31.6571786,1.05184702 31.1979286,1.05184702 C30.7307604,1.05184702 30.3012033,1.13063705 29.9092571,1.28821713 C29.5173109,1.44579721 29.1748529,1.66837907 28.8818831,1.95596271 C28.5889132,2.24354635 28.3612677,2.58037377 28.1989466,2.96644495 C28.0366254,3.35251614 27.9554649,3.77404285 27.9554649,4.23102507 C27.9554649,4.6880073 28.0366254,5.109534 28.1989466,5.49560519 C28.3612677,5.88167638 28.5889132,6.2185038 28.8818831,6.50608744 C29.1748529,6.79367108 29.5173109,7.01625294 29.9092571,7.17383302 C30.3012033,7.33141309 30.7307604,7.41020313 31.1979286,7.41020313 Z idShape/> path dM45.6566859,8.46205015 C45.0232375,8.46205015 44.4353183,8.3556836 43.8929281,8.14295049 C43.350538,7.93021739 42.8813903,7.63278499 42.4854851,7.2506533 C42.0895799,6.86852162 41.7807738,6.42138815 41.5590669,5.9092529 C41.33736,5.39711765 41.2265065,4.83770837 41.2265065,4.23102507 C41.2265065,3.62434178 41.33736,3.0649325 41.5590669,2.55279725 C41.7807738,2.040662 42.0895799,1.59352853 42.4854851,1.21139684 C42.8813903,0.829265157 43.3485585,0.531832761 43.8869895,0.319099656 C44.4254206,0.106366552 45.0153194,0 45.6566859,0 C46.2901342,0 46.8740944,0.104396801 47.4085664,0.313190404 C47.9430385,0.521984006 48.4102066,0.817446651 48.8100709,1.19957834 C49.2099352,1.58171003 49.5187412,2.02884349 49.7364891,2.54097875 C49.954237,3.053114 50.0631109,3.61646277 50.0631109,4.23102507 C50.0631109,4.84558738 49.954237,5.40893615 49.7364891,5.9210714 C49.5187412,6.43320665 49.2099352,6.88034012 48.8100709,7.26247181 C48.4102066,7.6446035 47.9430385,7.94006614 47.4085664,8.14885974 C46.8740944,8.35765335 46.2901342,8.46205015 45.6566859,8.46205015 Z M45.6566859,7.41020313 C46.1159359,7.41020313 46.541534,7.33141309 46.9334802,7.17383302 C47.3254263,7.01625294 47.6659048,6.79367108 47.9549156,6.50608744 C48.2439264,6.2185038 48.4695924,5.88167638 48.6319136,5.49560519 C48.7942347,5.109534 48.8753953,4.6880073 48.8753953,4.23102507 C48.8753953,3.77404285 48.7942347,3.35251614 48.6319136,2.96644495 C48.4695924,2.58037377 48.2439264,2.24354635 47.9549156,1.95596271 C47.6659048,1.66837907 47.3254263,1.44579721 46.9334802,1.28821713 C46.541534,1.13063705 46.1159359,1.05184702 45.6566859,1.05184702 C45.1895177,1.05184702 44.7599605,1.13063705 44.3680144,1.28821713 C43.9760682,1.44579721 43.6336102,1.66837907 43.3406403,1.95596271 C43.0476705,2.24354635 42.820025,2.58037377 42.6577039,2.96644495 C42.4953827,3.35251614 42.4142221,3.77404285 42.4142221,4.23102507 C42.4142221,4.6880073 42.4953827,5.109534 42.6577039,5.49560519 C42.820025,5.88167638 43.0476705,6.2185038 43.3406403,6.50608744 C43.6336102,6.79367108 43.9760682,7.01625294 44.3680144,7.17383302 C44.7599605,7.33141309 45.1895177,7.41020313 45.6566859,7.41020313 Z idShape/> polygon idPath points57.8944149 8.3675021 57.8944149 1.12275805 55.0438973 1.12275805 55.0438973 0.0945480464 61.9207709 0.0945480464 61.9207709 1.12275805 59.0702534 1.12275805 59.0702534 8.3675021/> path dM73.6596594,0.0945480464 L74.847375,0.0945480464 L74.847375,8.3675021 L73.6596594,8.3675021 L73.6596594,0.0945480464 Z M68.8850425,8.3675021 L67.6973268,8.3675021 L67.6973268,0.0945480464 L68.8850425,0.0945480464 L68.8850425,8.3675021 Z M73.7665538,4.68012829 L68.7662709,4.68012829 L68.7662709,3.65191829 L73.7665538,3.65191829 L73.7665538,4.68012829 Z idShape/> path dM80.5645451,8.3675021 L84.3296037,0.0945480464 L85.5054422,0.0945480464 L89.282378,8.3675021 L88.0352765,8.3675021 L84.6740413,0.756384371 L85.1491275,0.756384371 L81.7878922,8.3675021 L80.5645451,8.3675021 Z M82.1679612,6.29926359 L82.4886445,5.35378312 L87.1682441,5.35378312 L87.5126816,6.29926359 L82.1679612,6.29926359 Z idShape/> polygon idPath points94.9995481 8.3675021 94.9995481 0.0945480464 95.9734749 0.0945480464 101.472598 6.89018888 100.961881 6.89018888 100.961881 0.0945480464 102.149596 0.0945480464 102.149596 8.3675021 101.175669 8.3675021 95.676546 1.57186127 96.1872637 1.57186127 96.1872637 8.3675021/> path dM109.125745,8.3675021 L109.125745,0.0945480464 L112.629506,0.0945480464 C113.516334,0.0945480464 114.298247,0.267886131 114.975245,0.614562301 C115.652242,0.961238471 116.178796,1.44579721 116.554906,2.06823851 C116.931016,2.69067982 117.119071,3.41160867 117.119071,4.23102507 C117.119071,5.05044148 116.931016,5.77137033 116.554906,6.39381163 C116.178796,7.01625294 115.652242,7.50081168 114.975245,7.84748785 C114.298247,8.19416402 113.516334,8.3675021 112.629506,8.3675021 L109.125745,8.3675021 Z M110.313461,7.3392921 L112.558243,7.3392921 C113.247118,7.3392921 113.842956,7.20928853 114.345755,6.94928141 C114.848555,6.68927428 115.238521,6.32487035 115.515655,5.85606962 C115.792789,5.38726889 115.931356,4.84558738 115.931356,4.23102507 C115.931356,3.60858377 115.792789,3.0649325 115.515655,2.60007127 C115.238521,2.13521005 114.848555,1.77277587 114.345755,1.51276874 C113.842956,1.25276161 113.247118,1.12275805 112.558243,1.12275805 L110.313461,1.12275805 L110.313461,7.3392921 Z idShape/> path dM124.499043,3.6637368 L128.77482,3.6637368 L128.77482,4.66830979 L124.499043,4.66830979 L124.499043,3.6637368 Z M124.605938,7.3392921 L129.451818,7.3392921 L129.451818,8.3675021 L123.418222,8.3675021 L123.418222,0.0945480464 L129.285537,0.0945480464 L129.285537,1.12275805 L124.605938,1.12275805 L124.605938,7.3392921 Z idShape/> polygon idPath points135.857863 8.3675021 135.857863 0.0945480464 137.045578 0.0945480464 137.045578 7.3392921 141.547021 7.3392921 141.547021 8.3675021/> /g> g idTextiel-Trade transformtranslate(89.6208, 15.7702) rotate(-360) translate(-89.6208, -15.7702)translate(-0, 0) fill#1871A9> path dM18.7071262,6.5147258 C18.517647,6.5147258 18.257113,6.43693207 17.9255244,6.28134462 C17.5939358,6.12575717 17.3215594,6.07189998 17.1083952,6.11977304 L13.4490777,7.12510733 L13.4490777,26.0110301 C13.4490777,26.7051895 13.614872,27.4591902 13.9464606,28.2730323 C14.0412002,28.5123976 14.0175153,28.9671917 13.8754059,29.6374145 C13.7332965,30.379447 13.5082899,30.8462093 13.2003862,31.0377016 C13.1530164,31.0616381 13.0345918,31.0736064 12.8451126,31.0736064 C12.0635108,31.0736064 10.9740052,30.9180189 9.57659595,30.606844 C8.01339232,30.2477961 7.08968109,29.9007164 6.80546225,29.5656049 C6.4738736,29.1347474 6.48571605,28.5602707 6.8409896,27.8421747 C7.14889335,27.2198249 7.30284522,26.7650308 7.30284522,26.4777925 L7.30284522,8.70491836 L4.78040301,9.35120469 C4.66197849,9.37514123 4.46657804,9.47687148 4.19420165,9.65639546 C3.92182526,9.83591944 3.69089745,9.9017449 3.50141822,9.85387184 C2.95666544,9.71025266 2.21059099,8.99814087 1.26319485,7.71753647 C0.315798712,6.43693207 -0.0986870976,5.56923283 0.0197374195,5.11443875 C0.209216647,4.56389854 0.765811877,4.14500925 1.68952311,3.85777088 C1.92637214,3.78596129 2.23427589,3.77399302 2.61323434,3.82186608 C2.9921928,3.86973914 3.28825409,3.86973914 3.50141822,3.82186608 L15.8649378,0.626339222 C15.9833623,0.602402692 16.3267934,0.458783507 16.8952311,0.195481668 C17.2741896,0.0279259526 17.6176207,-0.0319153744 17.9255244,0.0159576872 C18.5887017,0.11170381 19.0387149,0.375005649 19.2755639,0.805863203 C19.4413582,1.09310157 19.618995,1.63167352 19.8084742,2.42157903 C20.0453233,3.35510373 20.1637478,4.16894578 20.1637478,4.86310517 C20.1637478,5.38970885 20.0986143,5.79064574 19.9683473,6.06591584 C19.8380803,6.34118595 19.4176733,6.49078927 18.7071262,6.5147258 Z idPath/> path dM29.6619717,23.8567424 C29.8751359,24.2157903 29.4132802,25.2809659 28.2764049,27.0522692 C27.0447899,28.9432551 25.8368598,30.2238595 24.6526146,30.8940824 C24.5105052,30.965892 24.2973411,31.0017968 24.0131223,31.0017968 C23.089411,31.0017968 21.8814809,30.7145584 20.389332,30.1400817 C18.8024435,29.5656049 17.7603078,28.9432551 17.2629248,28.2730323 C15.8892004,26.4777925 15.2023382,23.9883933 15.2023382,20.8048347 C15.2023382,17.7888318 15.8063032,15.1318769 17.0142333,12.8339699 C18.316903,10.3206342 19.9748462,9.04002979 21.988063,8.99215673 C22.722295,8.9682202 23.6104789,9.15971245 24.6526146,9.56663347 C25.9315994,10.0693006 26.9855776,10.7514917 27.8145493,11.6132069 C28.0277134,11.8286356 28.2290351,12.474922 28.4185143,13.5520658 C28.6553633,14.7010193 28.7737878,15.8260363 28.7737878,16.9271167 C28.7737878,18.5548008 28.5132539,19.6798177 27.992186,20.3021675 C25.552641,21.092073 23.0657261,21.5348989 20.5314415,21.630645 C20.4840716,22.803535 20.6261811,24.0362663 20.9577697,25.328839 C21.2893584,26.6214117 21.6327895,27.2796663 21.988063,27.3036028 C22.4617611,27.3275393 23.0301988,26.9325866 23.6933761,26.1187445 C24.2854986,25.4245851 24.6526146,24.8381401 24.7947241,24.3594095 C24.9605184,23.6413136 25.185525,22.8992811 25.4697438,22.1333121 C25.8487023,22.0854391 26.5947767,22.2769313 27.7079672,22.7077889 C28.8211576,23.1386464 29.4724925,23.5216309 29.6619717,23.8567424 Z M23.3381025,12.8698747 C22.9354592,12.8220017 22.3729427,13.468288 21.6505531,14.8087337 C20.9281636,16.1491794 20.5077566,17.4297838 20.389332,18.6505469 C21.4551527,18.6026738 22.3078092,18.339372 22.9473016,17.8606414 C23.3262601,17.573403 23.5157393,16.3765765 23.5157393,14.2701618 C23.5157393,13.3845101 23.456527,12.9177478 23.3381025,12.8698747 Z idShape/> path dM48.6459995,10.356539 C48.764424,10.9070792 48.5512599,11.4097463 48.0065071,11.8645404 C47.5564939,12.2235884 47.1183232,12.5826364 46.691995,12.9416843 L42.1800209,19.0454997 L47.1538506,26.4059829 C47.4143845,26.6932213 47.6749184,26.9684914 47.9354524,27.2317932 C48.2907259,27.6147777 48.4683627,27.9618574 48.4683627,28.2730323 C48.4683627,28.4645245 48.397308,28.6560168 48.2551986,28.847509 C48.0657194,29.1108109 47.3788572,29.5297001 46.194612,30.1041769 C45.1051064,30.6786536 44.3945593,31.0017968 44.0629707,31.0736064 C43.3761085,31.0736064 42.9497802,30.7624315 42.7839859,30.1400817 C42.4997671,29.0868743 41.2563096,26.8727452 39.0536136,23.4976944 L35.9272064,28.667985 C35.8087818,29.1227791 35.7021998,29.5656049 35.6074602,29.9964625 C35.4179809,30.6906219 35.0982347,31.0736064 34.6482216,31.145416 C34.1982084,31.2172256 33.2981821,31.0137651 31.9481426,30.5350344 C30.5270484,30.0323673 29.6862343,29.5775732 29.4257004,29.1706522 C29.3309608,29.027033 29.2835909,28.8834138 29.2835909,28.7397946 C29.2835909,28.4286197 29.5085975,28.0576035 29.9586107,27.626746 C30.5507333,27.0043962 30.858637,26.6692847 30.8823219,26.6214117 L35.7140422,19.1891188 L31.3441775,12.295398 C31.0125889,12.0799692 30.6691578,11.708953 30.3138842,11.1823493 C30.2901993,10.8951109 30.8823219,10.356539 32.090252,9.56663347 C33.2981821,8.77672796 34.1508386,8.3458704 34.6482216,8.27406081 C35.0982347,8.20225122 35.4002173,8.30996561 35.5541691,8.59720397 C35.708121,8.88444234 35.8443092,9.18364898 35.9627337,9.49482388 L39.0536136,14.8805433 L42.4642397,9.71025266 C42.5826642,9.37514123 42.7010887,9.05199806 42.8195132,8.74082316 C42.9142529,8.52539438 43.3287387,8.3817752 44.0629707,8.30996561 C44.4182442,8.28602907 45.2531371,8.54933091 46.5676492,9.09987112 C47.8821614,9.65041133 48.5749448,10.0693006 48.6459995,10.356539 Z idPath/> path dM62.6917249,12.5467316 C62.66804,12.9775891 62.5259306,13.3605736 62.2653966,13.695685 C62.0048627,14.0307965 61.7206439,14.1983522 61.4127401,14.1983522 C61.3180005,14.1983522 61.2351033,14.1863839 61.1640486,14.1624474 C60.83246,14.0427647 60.0863855,13.9829234 58.9258252,13.9829234 L58.9258252,28.1653179 C58.9258252,28.1413814 59.0028012,28.3328736 59.1567531,28.7397946 C59.3107049,29.1467157 59.3876809,29.5057636 59.3876809,29.8169385 C59.3876809,30.5110979 58.9139828,30.8821141 57.9665867,30.9299872 C57.4692037,30.9539237 56.5573349,30.738495 55.2309803,30.2837009 C53.7862012,29.8049703 53.0164418,29.3621444 52.9217022,28.9552234 C52.8743324,28.7876677 52.9572296,28.4346039 53.1703937,27.8960319 C53.3835578,27.35746 53.4901399,26.9445548 53.4901399,26.6573165 L53.4901399,13.9470186 L52.2822098,13.9470186 C51.8321967,13.9470186 51.2756014,13.5460817 50.6124242,12.7442079 C49.9492469,11.9423342 49.6176582,11.302032 49.6176582,10.8233013 C49.6176582,10.4642534 49.7538464,10.1411102 50.0262228,9.85387184 C50.2985992,9.56663347 50.6005817,9.42301429 50.9321703,9.42301429 L53.4901399,9.42301429 L53.4901399,6.19158263 C53.1348664,5.71285201 52.9572296,5.1982166 52.9572296,4.64767639 C52.9572296,4.14500925 53.1703937,3.83383435 53.596722,3.71415169 C53.8098861,3.66627863 54.1059474,3.6423421 54.4849059,3.6423421 C55.3612473,3.6423421 56.3856194,3.77997715 57.5580221,4.05524726 C58.7304248,4.33051736 59.4942629,4.6117716 59.8495365,4.89900997 C60.0153308,5.04262915 60.098228,5.21018487 60.098228,5.40167711 C60.098228,5.64104242 59.9087487,6.00009038 59.5297903,6.478821 C59.1508318,6.95755162 58.9495102,7.29266305 58.9258252,7.48415529 L58.9258252,9.42301429 L60.0627006,9.42301429 C60.2995496,9.42301429 60.7969326,9.85387184 61.5548495,10.7155869 C62.3127664,11.5773021 62.6917249,12.1876836 62.6917249,12.5467316 Z idPath/> path dM70.5912179,4.6117716 C70.6149028,4.65964466 70.6267452,4.75539078 70.6267452,4.89900997 C70.6267452,5.42561365 70.5201631,6.10780477 70.306999,6.94558335 C70.07015,7.85517152 69.8451434,8.35783867 69.6319793,8.45358479 C69.3951302,8.54933091 68.3766794,8.29201321 66.5766267,7.68163167 C64.7765741,7.07125014 63.8173355,6.63440845 63.698911,6.37110661 C63.6278563,6.25142396 63.5923289,6.07189998 63.5923289,5.83253467 C63.5923289,5.18624834 63.7581232,4.50405721 64.0897119,3.78596129 C64.4686703,2.97211924 64.8949986,2.51732515 65.3686967,2.42157903 C65.9134494,2.32583291 66.8608456,2.53527755 68.2108851,3.04991296 C69.5609246,3.56454838 70.3543688,4.08516792 70.5912179,4.6117716 Z M70.4846358,29.4219858 C70.5793754,30.2837009 70.2833141,30.8222728 69.5964519,31.0377016 C69.4780274,31.0616381 69.3122331,31.0736064 69.0990689,31.0736064 C68.2464124,31.0736064 67.1924342,30.8940824 65.9371343,30.5350344 C64.5870948,30.1520499 63.7936506,29.7451289 63.5568015,29.3142714 C63.438377,29.1227791 63.5449591,28.7517629 63.8765477,28.2012227 C64.0897119,27.8421747 64.1962939,27.1839201 64.1962939,26.2264589 L64.1962939,11.1464445 C63.9120751,10.2368563 63.7699657,9.6264748 63.7699657,9.3152999 C63.7699657,9.004125 64.2081364,8.84853755 65.0844778,8.84853755 C65.7950249,8.84853755 66.7838696,9.06995046 68.051012,9.51277628 C69.3181543,9.9556021 70.0819924,10.3445707 70.3425264,10.6796822 C70.4135811,10.7754283 70.4491084,10.8951109 70.4491084,11.0387301 C70.4491084,11.2302224 70.3129202,11.5892703 70.0405439,12.115874 C69.7681675,12.6424777 69.6319793,13.0374304 69.6319793,13.3007323 L69.6319793,27.7344603 C69.6319793,27.9738256 69.7681675,28.2730323 70.0405439,28.6320802 C70.3129202,28.9911282 70.4609509,29.25443 70.4846358,29.4219858 Z idShape/> path dM85.1698536,23.8567424 C85.3830177,24.2157903 84.9211621,25.2809659 83.7842867,27.0522692 C82.5526718,28.9432551 81.3447417,30.2238595 80.1604965,30.8940824 C80.0183871,30.965892 79.805223,31.0017968 79.5210041,31.0017968 C78.5972929,31.0017968 77.3893628,30.7145584 75.8972139,30.1400817 C74.3103254,29.5656049 73.2681896,28.9432551 72.7708067,28.2730323 C71.3970823,26.4777925 70.7102201,23.9883933 70.7102201,20.8048347 C70.7102201,17.7888318 71.3141851,15.1318769 72.5221152,12.8339699 C73.8247849,10.3206342 75.4827281,9.04002979 77.4959449,8.99215673 C78.2301769,8.9682202 79.1183608,9.15971245 80.1604965,9.56663347 C81.4394813,10.0693006 82.4934595,10.7514917 83.3224311,11.6132069 C83.5355953,11.8286356 83.7369169,12.474922 83.9263962,13.5520658 C84.1632452,14.7010193 84.2816697,15.8260363 84.2816697,16.9271167 C84.2816697,18.5548008 84.0211358,19.6798177 83.5000679,20.3021675 C81.0605228,21.092073 78.573608,21.5348989 76.0393233,21.630645 C75.9919535,22.803535 76.1340629,24.0362663 76.4656516,25.328839 C76.7972402,26.6214117 77.1406713,27.2796663 77.4959449,27.3036028 C77.969643,27.3275393 78.5380806,26.9325866 79.2012579,26.1187445 C79.7933805,25.4245851 80.1604965,24.8381401 80.3026059,24.3594095 C80.4684003,23.6413136 80.6934068,22.8992811 80.9776257,22.1333121 C81.3565841,22.0854391 82.1026586,22.2769313 83.2158491,22.7077889 C84.3290395,23.1386464 84.9803744,23.5216309 85.1698536,23.8567424 Z M78.8459844,12.8698747 C78.443341,12.8220017 77.8808246,13.468288 77.158435,14.8087337 C76.4360455,16.1491794 76.0156384,17.4297838 75.8972139,18.6505469 C76.9630346,18.6026738 77.8156911,18.339372 78.4551835,17.8606414 C78.8341419,17.573403 79.0236212,16.3765765 79.0236212,14.2701618 C79.0236212,13.3845101 78.9644089,12.9177478 78.8459844,12.8698747 Z idShape/> path dM93.1404013,2.20615025 C93.1404013,2.37370597 93.0871102,2.60110301 92.9805282,2.88834138 C92.8739461,3.17557975 92.8088126,3.35510373 92.7851277,3.42691332 C92.6430183,3.90564394 92.5009089,4.64767639 92.3587995,5.65301069 L92.3587995,27.6985555 C92.3587995,27.9857939 92.4298542,28.2431116 92.5719636,28.4705087 C92.714073,28.6979057 92.7851277,28.8834138 92.7851277,29.027033 C92.7851277,30.558971 92.5009089,31.3847813 91.9324712,31.5044639 C91.7193071,31.552337 90.9673114,31.3907654 89.6764841,31.0197492 C88.3856569,30.648733 87.6099763,30.3555105 87.3494424,30.1400817 C86.8283745,29.6852876 86.5678406,29.2663983 86.5678406,28.8834138 C86.5678406,28.7876677 86.6152104,28.6799533 86.70995,28.5602707 C86.8046896,28.440588 86.8520594,28.2371275 86.8520594,27.9498891 L86.8520594,2.63700781 C86.8520594,2.49338862 86.8106108,2.34378531 86.7277137,2.18819786 C86.6448165,2.03261041 86.6033679,1.88300709 86.6033679,1.7393879 C86.6507377,1.16491117 87.0889084,0.781926672 87.9178801,0.590434426 C88.1547291,0.542561365 88.6521121,0.542561365 89.410029,0.590434426 C90.2863704,0.662244018 91.0442873,0.793894938 91.6837797,0.985387184 C92.6548607,1.27262555 93.1404013,1.67954658 93.1404013,2.20615025 Z idPath/> path dM118.531773,6.5147258 C118.342294,6.5147258 118.08176,6.43693207 117.750171,6.28134462 C117.418583,6.12575717 117.146206,6.07189998 116.933042,6.11977304 L113.273725,7.12510733 L113.273725,26.0110301 C113.273725,26.7051895 113.439519,27.4591902 113.771108,28.2730323 C113.865847,28.5123976 113.842162,28.9671917 113.700053,29.6374145 C113.557943,30.379447 113.332937,30.8462093 113.025033,31.0377016 C112.977663,31.0616381 112.859239,31.0736064 112.669759,31.0736064 C111.888158,31.0736064 110.798652,30.9180189 109.401243,30.606844 C107.838039,30.2477961 106.914328,29.9007164 106.630109,29.5656049 C106.29852,29.1347474 106.310363,28.5602707 106.665636,27.8421747 C106.97354,27.2198249 107.127492,26.7650308 107.127492,26.4777925 L107.127492,8.70491836 L104.60505,9.35120469 C104.486625,9.37514123 104.291225,9.47687148 104.018849,9.65639546 C103.746472,9.83591944 103.515544,9.9017449 103.326065,9.85387184 C102.781312,9.71025266 102.035238,8.99814087 101.087842,7.71753647 C100.140446,6.43693207 99.7259598,5.56923283 99.8443843,5.11443875 C100.033864,4.56389854 100.590459,4.14500925 101.51417,3.85777088 C101.751019,3.78596129 102.058923,3.77399302 102.437881,3.82186608 C102.81684,3.86973914 103.112901,3.86973914 103.326065,3.82186608 L115.689585,0.626339222 C115.808009,0.602402692 116.15144,0.458783507 116.719878,0.195481668 C117.098836,0.0279259526 117.442268,-0.0319153744 117.750171,0.0159576872 C118.413349,0.11170381 118.863362,0.375005649 119.100211,0.805863203 C119.266005,1.09310157 119.443642,1.63167352 119.633121,2.42157903 C119.86997,3.35510373 119.988395,4.16894578 119.988395,4.86310517 C119.988395,5.38970885 119.923261,5.79064574 119.792994,6.06591584 C119.662727,6.34118595 119.24232,6.49078927 118.531773,6.5147258 Z idPath/> path dM129.2024,11.1105397 C129.297139,11.4935242 129.166872,11.8046991 128.811599,12.0440644 C128.52738,12.1876836 128.255004,12.343271 127.99447,12.5108268 C126.502321,14.8087337 124.477262,17.9085145 121.919292,21.810169 C121.919292,25.6160774 121.931134,27.5788729 121.954819,27.6985555 C121.978504,27.8182382 122.067323,28.123429 122.221274,28.6141278 C122.375226,29.1048267 122.452202,29.4937954 122.452202,29.7810337 C122.452202,30.2358278 122.250881,30.5470027 121.848237,30.7145584 C121.587703,30.8342411 121.23243,30.8940824 120.782417,30.8940824 C119.88239,30.8940824 118.887624,30.6906219 117.798119,30.2837009 C116.424394,29.8049703 115.737532,29.1945887 115.737532,28.4525563 C115.737532,28.2371275 115.832272,27.8900478 116.021751,27.4113172 C116.21123,26.9325866 116.30597,26.5376338 116.30597,26.2264589 L116.30597,12.0081596 C116.045436,10.6677139 115.915169,9.9735545 115.915169,9.92568143 C115.915169,9.18364898 116.246758,8.71688663 116.909935,8.52539438 C117.194154,8.45358479 117.537585,8.41767999 117.940228,8.41767999 C118.7692,8.41767999 119.63962,8.55531505 120.551489,8.83058515 C121.463358,9.10585525 122.002189,9.39907776 122.167983,9.71025266 C122.215353,9.80599878 122.239038,9.92568143 122.239038,10.0693006 C122.239038,10.1889833 122.073244,10.76346 121.741655,11.7927308 L121.741655,13.5161611 C122.310093,12.4868902 122.866688,11.4576194 123.411441,10.4283486 C124.145673,9.13577592 124.690426,8.45358479 125.045699,8.3817752 C125.566767,8.28602907 126.360211,8.59720397 127.426032,9.3152999 C128.491853,10.0333958 129.083975,10.6318091 129.2024,11.1105397 Z idPath/> path dM146.161368,29.3501762 C146.137683,29.6852876 145.995574,29.972526 145.73504,30.2118913 C145.474506,30.4512566 145.178445,30.5470027 144.846856,30.4991296 C141.909928,30.0922086 140.27567,29.5297001 139.944081,28.8116042 C139.896711,28.7158581 139.873026,28.620112 139.873026,28.5243659 C139.873026,28.4046832 139.926317,28.2730323 140.0329,28.1294131 C140.139482,27.9857939 140.204615,27.8601271 140.2283,27.7524127 C140.251985,27.6446983 140.299355,27.5429681 140.370409,27.447222 C140.417779,27.2557297 140.429622,26.8368404 140.405937,26.1905541 C140.121718,26.4059829 139.69539,26.9804596 139.126952,27.9139843 C138.534829,28.9432551 138.013762,29.6613511 137.563748,30.0682721 C136.805831,30.786368 135.941332,31.145416 134.970251,31.145416 C134.401814,31.145416 133.845219,30.9180189 133.300466,30.4632248 C133.039932,30.2477961 132.578076,29.7810337 131.914899,29.0629378 C130.778024,27.7703651 130.162216,27.0642375 130.067476,26.9445548 C129.570093,26.274332 129.321402,25.6400139 129.321402,25.0416006 C129.321402,24.8501084 129.345087,24.6586161 129.392457,24.4671239 C129.84247,22.3607092 131.239879,20.3620089 133.584685,18.4710229 C135.289998,17.1066407 137.705858,15.6584806 140.832265,14.1265426 C140.832265,13.3605736 140.642786,12.8698747 140.263827,12.6544459 C140.026978,12.5108268 139.198007,12.7801127 137.776912,13.4623039 C136.355818,14.144495 135.361052,14.7249559 134.792615,15.2036865 C134.603135,15.3951787 134.295232,15.6584806 133.868903,15.993592 C133.46626,16.2329573 133.099144,16.3047669 132.767555,16.2090208 C132.507021,16.1372112 131.950426,15.7063536 131.09777,14.9164481 C130.245113,14.1265426 129.783258,13.5999389 129.712203,13.3366371 C129.522724,12.6903507 129.724045,12.1876836 130.316168,11.8286356 C130.339853,11.8046991 130.813551,11.6610799 131.737262,11.3977781 C132.613604,10.9190475 133.489945,10.4403168 134.366286,9.96158623 C136.213709,9.07593459 137.776912,8.59720397 139.055897,8.52539438 C139.60065,8.50145785 140.216458,8.78869622 140.90332,9.38710949 C141.519127,9.9376497 142.140856,10.4822058 142.768506,11.0207777 C143.396156,11.5593497 144.041569,12.0799692 144.704747,12.5826364 C145.462664,13.2528592 145.841622,13.8991455 145.841622,14.5214953 L145.841622,28.0935083 C146.078471,28.7158581 146.185053,29.1347474 146.161368,29.3501762 Z M140.476991,18.8659757 C139.316431,19.3207698 138.321665,20.0149292 137.492694,20.9484539 C136.876886,21.7144228 136.261079,22.4684236 135.645271,23.210456 C135.147888,23.7131232 134.680111,24.3653936 134.241941,25.1672674 C133.80377,25.9691412 133.584685,26.5615703 133.584685,26.9445548 C133.584685,27.1360471 133.655739,27.2317932 133.797849,27.2317932 C134.295232,27.2317932 135.408422,26.1486652 137.13742,23.9824091 C138.866418,21.8161531 139.979608,20.1106753 140.476991,18.8659757 Z idShape/> path dM164.15063,2.52929342 C164.198,2.76865873 164.109182,3.23542108 163.884175,3.92958047 C163.659168,4.62373986 163.546665,5.01869262 163.546665,5.11443875 L163.546665,28.5243659 C163.546665,29.3142714 163.605877,29.8049703 163.724302,29.9964625 C164.079575,30.6188123 164.186157,31.0377016 164.044048,31.2531304 C163.925624,31.4446226 163.61772,31.5403687 163.120337,31.5403687 C162.575584,31.5403687 161.746612,31.4326543 160.633422,31.2172256 C159.378122,30.9539237 158.714945,30.8222728 158.64389,30.8222728 C158.217562,30.7743998 157.909658,30.4871614 157.720179,29.9605577 C157.696494,29.9126846 157.684651,29.7570972 157.684651,29.4937954 C157.684651,28.5123976 157.814918,27.0522692 158.075452,25.1134102 C157.507015,26.2623637 156.950419,27.4113172 156.405667,28.5602707 C155.624065,29.972526 154.92536,30.6188123 154.309553,30.4991296 C149.643627,29.5416684 147.310664,26.6453482 147.310664,21.810169 C147.310664,19.0574679 148.056738,16.2568938 149.548887,13.4084467 C150.993666,10.6557456 152.580555,8.86050581 154.309553,8.02272724 C154.546402,7.90304458 154.771408,7.84320325 154.984572,7.84320325 C155.576695,7.84320325 156.606988,8.58523571 158.075452,10.0693006 L158.075452,3.10377016 C158.051767,2.91227791 157.945185,2.57118235 157.755706,2.08048347 C157.566227,1.58978459 157.471487,1.22475249 157.471487,0.985387184 C157.471487,0.482720038 157.803076,0.231386464 158.466253,0.231386464 C159.058376,0.231386464 159.911032,0.39894218 161.024223,0.734053611 C161.73477,0.973418919 162.433475,1.20081596 163.120337,1.41624474 C163.712459,1.58380045 164.05589,1.95481668 164.15063,2.52929342 Z M157.96887,11.7927308 C156.642516,12.3911441 155.440507,13.7076533 154.362844,15.7422584 C153.285181,17.7768635 152.746349,19.6678495 152.746349,21.4152162 C152.746349,23.4498213 153.527951,24.56287 155.091155,24.7543623 C155.920126,24.8501084 156.879365,20.5295646 157.96887,11.7927308 Z idShape/> path dM179.191121,23.8567424 C179.404286,24.2157903 178.94243,25.2809659 177.805555,27.0522692 C176.57394,28.9432551 175.36601,30.2238595 174.181764,30.8940824 C174.039655,30.965892 173.826491,31.0017968 173.542272,31.0017968 C172.618561,31.0017968 171.410631,30.7145584 169.918482,30.1400817 C168.331593,29.5656049 167.289457,28.9432551 166.792075,28.2730323 C165.41835,26.4777925 164.731488,23.9883933 164.731488,20.8048347 C164.731488,17.7888318 165.335453,15.1318769 166.543383,12.8339699 C167.846053,10.3206342 169.503996,9.04002979 171.517213,8.99215673 C172.251445,8.9682202 173.139629,9.15971245 174.181764,9.56663347 C175.460749,10.0693006 176.514727,10.7514917 177.343699,11.6132069 C177.556863,11.8286356 177.758185,12.474922 177.947664,13.5520658 C178.184513,14.7010193 178.302938,15.8260363 178.302938,16.9271167 C178.302938,18.5548008 178.042404,19.6798177 177.521336,20.3021675 C175.081791,21.092073 172.594876,21.5348989 170.060591,21.630645 C170.013221,22.803535 170.155331,24.0362663 170.486919,25.328839 C170.818508,26.6214117 171.161939,27.2796663 171.517213,27.3036028 C171.990911,27.3275393 172.559348,26.9325866 173.222526,26.1187445 C173.814648,25.4245851 174.181764,24.8381401 174.323874,24.3594095 C174.489668,23.6413136 174.714675,22.8992811 174.998894,22.1333121 C175.377852,22.0854391 176.123926,22.2769313 177.237117,22.7077889 C178.350307,23.1386464 179.001642,23.5216309 179.191121,23.8567424 Z M172.867252,12.8698747 C172.464609,12.8220017 171.902092,13.468288 171.179703,14.8087337 C170.457313,16.1491794 170.036906,17.4297838 169.918482,18.6505469 C170.984302,18.6026738 171.836959,18.339372 172.476451,17.8606414 C172.85541,17.573403 173.044889,16.3765765 173.044889,14.2701618 C173.044889,13.3845101 172.985677,12.9177478 172.867252,12.8698747 Z idShape/> /g> /g> g idICON transformtranslate(-0, 0)> ellipse idShadow fill#D0E1F7 transformtranslate(32.5427, 49.3775) rotate(-1) translate(-32.5427, -49.3775) cx32.5426918 cy49.3774964 rx27.3182749 ry6.14661185/> path dM29.5309955,11.1464059 C32.0765915,11.1464059 34.2051549,9.3723329 34.7326027,7.00067292 C34.8356627,7.01272357 34.9370591,7.02596848 35.0370251,7.04033047 C38.5819569,7.54962617 41.5293264,8.84329693 41.8266667,8.84329693 C42.0670636,8.84329693 44.6163604,10.6013893 48.3005396,14.3478209 C49.3382501,15.4030659 51.0065148,17.3586888 53.3053336,20.2146895 L47.0827367,26.3791328 C45.8773591,25.2884336 44.9437382,24.4152447 44.2818742,23.7595661 C43.6200101,23.1038875 42.6306253,22.0720423 41.3137198,20.6640305 C40.7915979,24.9672977 40.530537,28.2336307 40.530537,30.4630296 C40.530537,32.6924284 40.7915979,37.134979 41.3137198,43.7906813 L16.6704181,43.7906813 C17.19254,37.134979 17.4536009,32.6924284 17.4536009,30.4630296 C17.4536009,28.2336307 17.19254,24.9672977 16.6704181,20.6640305 C15.3535126,22.0720423 14.3641278,23.1038875 13.7022637,23.7595661 C13.0403996,24.4152447 12.1067788,25.2884336 10.9014012,26.3791328 L4.67880429,20.2146895 C6.97762306,17.3586888 8.64588773,15.4030659 9.68359832,14.3478209 C13.3677774,10.6013893 15.9170743,8.84329693 16.1574712,8.84329693 C16.4548115,8.84329693 19.402181,7.54962617 22.9471128,7.04033047 C23.3817394,6.97788822 23.8434063,6.93656184 24.3105437,6.9109958 C24.8041449,9.3280911 26.9538539,11.1464059 29.5309955,11.1464059 Z idCombined-Shape fill#1871A9 transformtranslate(28.9921, 25.3508) rotate(-19) translate(-28.9921, -25.3508)/> /g> /g> /g>/svg> /a>/div> !--Search--> script defer> use strict; function initMiniSearch() { return { minSearchLength: 3, suggestions: , suggest() { const search this.$refs.searchInput; if (search.value.length > this.minSearchLength) { search.setCustomValidity(); search.reportValidity(); this.fetchSuggestions(search.value); } else { this.suggestions ; } }, fetchSuggestions(term) { fetch( window.BASE_URL + search/ajax/suggest? + new URLSearchParams({q: term}), { headers: { X-Requested-With: XMLHttpRequest } } ) .then(response > response.json()) .then(result > this.suggestions result); }, search(term) { const search this.$refs.searchInput; term term || search.value; if (term.length this.minSearchLength) { search.setCustomValidity(Minimale\u0020zoekopdracht\u0020lengte\u0020is\u00203); search.reportValidity(); } else { search.setCustomValidity(); search.value term; this.$refs.form.submit(); } }, focusElement(element) { if (element && element.nodeName DIV) { element.focus(); return true; } else { return false; } } } }/script>div classmx-8 max-w-33rem w-full hidden md:block x-datainitMiniSearch()> form classform minisearch relative idsearch_mini_form x-refform @submit.preventsearch() actionhttps://textieltrade.nl/catalogsearch/result/ methodget> input idsearch x-refsearchInput autocompleteoff nameq value placeholderZoek hier in de hele winkel... maxlength128 classform-input w-full bg-primary-200 border-0 rounded-lg placeholder-primary-600 h-10 font-normal @keydown.arrow-down.preventfocusElement($root.querySelector(tabindex)) /> button typesubmit titleZoeken classaction search absolute right-3 top-2.5 aria-labelSearch > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z/>/svg> /button> /form>/div> div classflex items-center pr-2> !--Customer Icon & Dropdown--> div x-datainitToggleCustomerMenu() classz-40 idcustomer-menu aria-labelMijn account > div @clickopen false classopacity-75 :class{ min-h-screen fixed top-0 left-0 w-full bg-primary z-20: open } >/div> div classbg-white z-50 :class{h-screen overflow-x-hidden overflow-y-auto fixed top-0 right-0 max-w-30rem w-85vw : open} @toggle-customer-menu.windowopen !open @keydown.window.escapeopenfalse > div classflex items-baseline justify-between menu-icon relative> div classflex justify-end items-center w-full> button @click$dispatch(toggle-customer-menu) typebutton classflex items-center justify-center cursor-pointer > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classhidden p-4 width64 height64 :class{ hidden : !open, block: open }> path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18L18 6M6 6l12 12/>/svg> div :class{ hidden: open }> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classw-6 h-6 md:w-8 md:h-8 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304H178.3z/>/svg> /div> /button> /div> /div> div classhidden w-full duration-150 ease-in-out transform transition-display z-20 px-8 :class{ hidden : !open } > div classw-full mb-6 md:mb-0> div aria-labelledbyblock-customer-login-heading> form classform form-login actionhttps://textieltrade.nl/customer/account/loginPost/ methodpost x-datainitCustomerLoginForm() @submit.preventsubmitForm() idcustomer-login-form-sidedrawer> input nameform_key typehidden value2bo8jyl6Pb8bkBLy /> fieldset classfieldset login> legend classtitle-font text-primary-800 text-xl md:text-2xl lg:text-3xl font-bold>Geregistreerde klanten/legend> p classmb-5 font-light> Als u een account heeft, meld u dan aan met uw e-mailadres. /p> div classfield email required mb-5> label classlabel foremail>span>E-mailadres/span>/label> div classcontrol> input nameloginusername classform-input w-full required value autocompleteoff idemail-sidedrawer typeemail titleE-mail/> /div> /div> div classfield password required> label forpass classlabel>span>Wachtwoord/span>/label> div classcontrol> input nameloginpassword classform-input w-full typepassword required autocompleteoff idpass-sidedrawer titleWachtwoord/> /div> /div> div classflex items-start flex-col justify-between gap-1 my-6 sm:items-center sm:flex-row > p classtext-primary-800 font-light text-sm>* Verplichte velden/p> a classtext-primary-800 font-light text-sm hover:text-accent md:hover:underline hrefhttps://textieltrade.nl/customer/account/forgotpassword/>span>Wachtwoord vergeten?/span> /a> /div> button typesubmit classw-full btn btn-primary justify-center namesend> span>Inloggen/span> /button> div classflex justify-center items-center> hr classw-full /> span classp-8 text-gray-400 uppercase>of/span> hr classw-full /> /div> div> template x-ifdisplayErrorMessage> p classtext-red flex items-center> span classinline-block w-8 h-8 mr-3> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor> path stroke-linecapround stroke-linejoinround stroke-width2 dM12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z/> /svg> /span> template x-forerrorMessage in errorMessages> span x-htmlerrorMessage>/span> /template> /p> /template> /div> a hrefhttps://textieltrade.nl/customer/account/create/ classw-full btn btn-primary justify-center> span>Account aanmaken/span>/a>div class-mx-8 p-8 bg-primary-200 mt-12> p classmb-4 font-bold> De voordelen van een account: /p> ul classfont-light !ml-0> li classflex md:items-center mb-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classflex-none fill-accent h-6 w-8 mr-2 -ml-2 width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z/>/svg> span> het strong>betalingsproces/strong> sneller doorlopen /span> /li> li classflex md:items-center mb-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classflex-none fill-accent h-6 w-8 mr-2 -ml-2 width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z/>/svg> span> strong>meerdere adressen/strong> opslaan /span> /li> li classflex md:items-center mb-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classflex-none fill-accent h-6 w-8 mr-2 -ml-2 width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z/>/svg> span> bestellingen strong>bekijken/strong> en strong>volgen/strong> /span> /li> li classflex md:items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classflex-none fill-accent h-6 w-8 mr-2 -ml-2 width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z/>/svg> span> en strong>veel/strong> meer... /span> /li> /ul>/div> /fieldset> /form> /div> div classw-full> /div> script defer> function initCustomerLoginForm() { return { errors: 0, hasCaptchaToken: 0, displayErrorMessage: false, errorMessages: , cookieName: login_redirect, get cookieUrl() { // Get the current URL return window.location.href; }, setErrorMessages(messages) { this.errorMessages messages this.displayErrorMessage this.errorMessages.length }, submitForm() { var $form document.querySelector(#customer-login-form-sidedrawer); let d new Date(); let amountOfDays 1; d.setTime(d.getTime() + (amountOfDays * 24 * 60 * 60 * 1000)); let expires expires+d.toUTCString(); document.cookie this.cookieName + + this.cookieUrl + ; + expires + ;path/; if (this.errors 0) { $form.submit(); } } } } /script>/div> /div> /div> /div>script defer> use strict; const initToggleCustomerMenu () > { return { mobilePanelActiveId: null, open: false } }/script> !--Cart Icon--> a idmenu-cart-icon @click.prevent.stop$dispatch(toggle-cart,{}); classrelative inline-block ml-1 no-underline ml-4 md:ml-8 hover:text-black hrefhttps://textieltrade.nl/checkout/cart/index/ > span classsr-only label> Winkelwagen /span> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classh-6 w-6 md:w-8 md:h-8 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM0 24C0 10.7 10.7 0 24 0H69.5c22 0 41.5 12.8 50.6 32h411c26.3 0 45.5 25 38.6 50.4l-41 152.3c-8.5 31.4-37 53.3-69.5 53.3H170.7l5.4 28.5c2.2 11.3 12.1 19.5 23.6 19.5H488c13.3 0 24 10.7 24 24s-10.7 24-24 24H199.7c-34.6 0-64.3-24.6-70.7-58.5L77.4 54.5c-.7-3.8-4-6.5-7.9-6.5H24C10.7 48 0 37.3 0 24zM128 464a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm336-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96z/>/svg> span x-textcart.summary_count classabsolute hidden items-center justify-center top-0 right-0 flex h-5 w-5 md:h-6 md:w-6 px-2 py-1 -mt-6 -mr-4 text-xs font-semibold leading-none text-center text-white uppercase transform -translate-x-1 translate-y-3/4 md:translate-y-1/2 rounded-full bg-accent :class{ hidden: !cart.summary_count, flex: cart.summary_count } >/span> /a> /div> /div> /div> script defer> use strict; function initMobileSearch() { return { minSearchLength: 3, suggestions: , suggest() { const search this.$refs.searchInput; if (search.value.length > this.minSearchLength) { search.setCustomValidity(); search.reportValidity(); this.fetchSuggestions(search.value); } else { this.suggestions ; } }, fetchSuggestions(term) { fetch( window.BASE_URL + search/ajax/suggest? + new URLSearchParams({q: term}), { headers: { X-Requested-With: XMLHttpRequest } } ) .then(response > response.json()) .then(result > this.suggestions result); }, search(term) { const search this.$refs.searchInput; term term || search.value; if (term.length this.minSearchLength) { search.setCustomValidity(Minimale\u0020zoekopdracht\u0020lengte\u0020is\u00203); search.reportValidity(); } else { search.setCustomValidity(); search.value term; this.$refs.form.submit(); } }, focusElement(element) { if (element && element.nodeName DIV) { element.focus(); return true; } else { return false; } } } }/script>div classmd:hidden px-4 w-full x-datainitMobileSearch()> form classform minisearch relative idmobile_search_form x-refform @submit.preventsearch() actionhttps://textieltrade.nl/catalogsearch/result/ methodget> input idmobile_search x-refsearchInput autocompleteoff nameq value placeholderZoek hier in de hele winkel... maxlength128 classform-input w-full bg-primary-200 border-0 rounded-lg placeholder-primary-600 h-10 font-normal @focus.oncesuggest @input.debounce.300suggest @keydown.arrow-down.preventfocusElement($root.querySelector(tabindex)) /> button typesubmit titleZoeken classaction search absolute right-3 top-2.5 aria-labelSearch > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z/>/svg> /button> /form>/div> !--Cart Drawer--> script defer> function initCartDrawer() { return { open: false, isLoading: false, cart: {}, maxItemsToDisplay: 100, itemsCount: 0, totalCartAmount: 0, getData(data) { if (data.cart) { this.cart data.cart; this.itemsCount data.cart.items && data.cart.items.length || 0; this.totalCartAmount this.cart.summary_count; this.setCartItems(); } this.isLoading false; }, cartItems: , getItemCountTitle() { return hyva.strf((%0 of %1), this.maxItemsToDisplay, this.itemsCount) }, setCartItems() { this.cartItems this.cart.items && this.cart.items.sort((a, b) > b.item_id - a.item_id) || ; if (this.maxItemsToDisplay > 0) { this.cartItems this.cartItems.slice(0, parseInt(this.maxItemsToDisplay, 10)); } }, deleteItemFromCart(itemId) { this.isLoading true; const formKey hyva.getFormKey(); const postUrl BASE_URL + checkout/sidebar/removeItem/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &item_id + itemId, method: POST, mode: cors, credentials: include }).then(response > { if (response.redirected) { window.location.href response.url; } else if (response.ok) { return response.json(); } else { window.dispatchMessages && window.dispatchMessages({ type: warning, text: Could\u0020not\u0020remove\u0020item\u0020from\u0020quote. }); this.isLoading false; } }).then(result > { window.dispatchMessages && window.dispatchMessages({ type: result.success ? success : error, text: result.success ? You\u0020removed\u0020the\u0020item. : result.error_message }, result.success ? 5000 : 0) window.dispatchEvent(new CustomEvent(reload-customer-section-data)); }); } } }/script>section idcart-drawer x-datainitCartDrawer() @private-content-loaded.windowgetData($event.detail.data) @toggle-cart.windowopentrue @keydown.window.escapeopenfalse> template x-ifcart && cart.summary_count> div roledialog aria-labelledbycart-drawer-title aria-modaltrue @click.outsideopenfalse classfixed inset-y-0 right-0 z-50 flex max-w-full> div classbackdrop x-showopen x-transition:enterease-in-out duration-500 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in-out duration-500 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0 @clickopenfalse aria-labelClose panel>/div> div classrelative w-screen max-w-md shadow-2xl x-showopen x-transition:entertransform transition ease-in-out duration-500 sm:duration-700 x-transition:enter-starttranslate-x-full x-transition:enter-endtranslate-x-0 x-transition:leavetransform transition ease-in-out duration-500 sm:duration-700 x-transition:leave-starttranslate-x-0 x-transition:leave-endtranslate-x-full > div x-showopen x-transition:enterease-in-out duration-500 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in-out duration-500 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0 classabsolute top-0 right-0 flex p-2 mt-2> button @clickopenfalse aria-labelClose panel classp-2 text-gray-300 transition duration-150 ease-in-out hover:text-black> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18L18 6M6 6l12 12/>/svg> /button> /div> div classflex flex-col h-full py-6 space-y-6 bg-white shadow-xl> header classpx-4 sm:px-6> h2 idcart-drawer-title classtext-lg font-medium leading-7 text-gray-900> Mijn winkelwagen span classitems-total text-xs x-showmaxItemsToDisplay && maxItemsToDisplay itemsCount x-textgetItemCountTitle()> /span> /h2> /header> div classrelative grid gap-6 px-4 py-6 overflow-y-auto bg-white border-b sm:gap-8 sm:px-6 border-container> template x-foritem in cartItems> div classflex items-start p-3 -m-3 space-x-4 transition duration-150 ease-in-out rounded-lg hover:bg-gray-100> a :hrefitem.product_url classw-1/4> img :srcitem.product_image.src :widthitem.product_image.width :heightitem.product_image.height loadinglazy /> /a> div classw-3/4 space-y-2> div> p classtext-xl> span x-htmlitem.qty>/span> x span x-htmlitem.product_name>/span> /p> p classtext-sm>span x-htmlitem.product_sku>/span>/p> /div> template x-foroption in item.options> div classpt-2> p classfont-semibold x-textoption.label + :>/p> p classtext-secondary x-htmloption.value>/p> /div> /template> p>span x-htmlitem.product_price>/span>/p> div classpt-4> a :hrefitem.configure_url x-showitem.product_type ! grouped classinline-flex p-2 mr-2 btn btn-primary> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width20 height20> path stroke-linecapround stroke-linejoinround stroke-width2 dM15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z/>/svg> /a> button classinline-flex p-2 btn btn-primary action-delete @clickdeleteItemFromCart(item.item_id) > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width20 height20> path stroke-linecapround stroke-linejoinround stroke-width2 dM19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16/>/svg> /button> /div> /div> /div> /template> /div> div classrelative grid gap-6 px-4 py-6 bg-white sm:gap-8 sm:px-6> div classw-full p-3 -m-3 space-x-4 transition duration-150 ease-in-out rounded-lg hover:bg-gray-100> p>Subtotaal: span x-htmlcart.subtotal>/span>/p> /div> div classw-full p-3 -m-3 space-x-4 transition duration-150 ease-in-out rounded-lg hover:bg-gray-100> a @click.prevent.stop$dispatch(toggle-authentication, {url: https://textieltrade.nl/checkout/}); hrefhttps://textieltrade.nl/checkout/ classinline-flex btn btn-primary> Afrekenen /a> span>of/span> a hrefhttps://textieltrade.nl/checkout/cart/ classunderline> Winkelwagen bekijken /a> /div> /div> /div> /div> div classflex flex-row justify-center items-center w-full h-full fixed select-none z-50 styleleft: 50%;top: 50%;transform: translateX(-50%) translateY(-50%);background: rgba(255,255,255,0.7); x-showisLoading x-transition:enterease-out duration-200 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in duration-200 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0> !-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 57 57 strokecurrentColor classtext-primary width57 height57> g fillnone fill-ruleevenodd> g transformtranslate(1 1) stroke-width2> circle cx5 cy50 r5> animate attributeNamecy begin0s dur2.2s values50;5;50;50 calcModelinear repeatCountindefinite/> animate attributeNamecx begin0s dur2.2s values5;27;49;5 calcModelinear repeatCountindefinite/> /circle> circle cx27 cy5 r5> animate attributeNamecy begin0s dur2.2s from5 to5 values5;50;50;5 calcModelinear repeatCountindefinite/> animate attributeNamecx begin0s dur2.2s from27 to27 values27;49;5;27 calcModelinear repeatCountindefinite/> /circle> circle cx49 cy50 r5> animate attributeNamecy begin0s dur2.2s values50;50;5;50 calcModelinear repeatCountindefinite/> animate attributeNamecx from49 to49 begin0s dur2.2s values49;5;27;49 calcModelinear repeatCountindefinite/> /circle> /g> /g>/svg> div classml-10 text-primary text-xl> Laden... /div>/div> /div> /template>/section> !--Authentication Pop-Up--> script defer> function initAuthentication() { return { open: false, forceAuthentication: false, checkoutUrl: https://textieltrade.nl/checkout/index/, errors: 0, hasCaptchaToken: 0, displayErrorMessage: false, errorMessages: , setErrorMessages: function setErrorMessages(messages) { this.errorMessages messages; this.displayErrorMessage this.errorMessages.length; }, submitForm: function () { // Do not rename $form, the variable is expected to be declared in the recaptcha output const $form document.querySelector(#login-form); if (this.errors 0) { this.dispatchLoginRequest($form); } }, onPrivateContentLoaded: function (data) { const isLoggedIn data.customer && data.customer.firstname; if (data.cart && !isLoggedIn) { this.forceAuthentication !data.cart.isGuestCheckoutAllowed; } }, redirectIfAuthenticated: function (event) { if (event.detail && event.detail.url) { this.checkoutUrl event.detail.url; } if (!this.forceAuthentication) { window.location.href this.checkoutUrl; } }, dispatchLoginRequest: function(form) { this.isLoading true; const username this.$refscustomer-email.value; const password this.$refscustomer-password.value; const formKey hyva.getFormKey(); const bodyFields { username: username, password: password, formKey: formKey }; const fieldName g\u002Drecaptcha\u002Dresponse; const recaptchaField fieldName && formfieldName; if (recaptchaField) { bodyFieldsfieldName recaptchaField.value; } fetch(https://textieltrade.nl/customer/ajax/login/, { method: POST, headers: { Content-Type: application/json, X-Requested-With: XMLHttpRequest }, body: JSON.stringify(bodyFields) } ).then(response > { return response.json() } ).then(data> { this.isLoading false; if (data.errors) { dispatchMessages({ type: error, text: data.message }, 5000); this.errors 1; this.hasCaptchaToken 0; } else { window.location.href this.checkoutUrl; } }); } } }/script>section idauthentication-popup x-datainitAuthentication() @private-content-loaded.windowonPrivateContentLoaded($event.detail.data) @toggle-authentication.windowopen forceAuthentication; redirectIfAuthenticated(event) @keydown.window.escapeopen false> div roledialog aria-modaltrue @click.outsideopen false classinset-y-0 right-0 z-30 flex max-w-full :class{fixed: open } x-cloak x-showopen > div classrelative w-screen max-w-md pt-16 bg-container-lighter x-showopen x-cloak x-transition:entertransform transition ease-in-out duration-500 sm:duration-700 x-transition:enter-starttranslate-x-full x-transition:enter-endtranslate-x-0 x-transition:leavetransform transition ease-in-out duration-500 sm:duration-700 x-transition:leave-starttranslate-x-0 x-transition:leave-endtranslate-x-full > div x-showopen x-cloak x-transition:enterease-in-out duration-500 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in-out duration-500 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0 classabsolute top-0 right-0 flex p-2 mt-2> button @clickopen false; aria-labelClose panel classp-2 text-gray-300 transition duration-150 ease-in-out hover:text-black> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18L18 6M6 6l12 12/>/svg> /button> /div> div classflex flex-col h-full py-6 space-y-6 bg-white shadow-xl overflow-y-auto> div classblock-customer-login bg-container border border-container mx-4 p-4 shadow-sm> p idauthenticate-customer-login classtext-lg leading-7 text-gray-900> strong classfont-medium>Checkout using your account/strong> /p> form classform form-login methodpost @submit.preventsubmitForm(); idlogin-form > div classfieldset login> div classfield email required> label classlabel forform-login-username formlogin-form > span>E-mailadres/span> /label> div classcontrol> input nameusername idform-login-username x-refcustomer-email @changeerrors 0 typeemail required classform-input input-text > /div> /div> div classfield password required> label forform-login-password classlabel formlogin-form> span>Wachtwoord/span> /label> div classcontrol> input namepassword idform-login-password typepassword classform-input input-text required x-refcustomer-password @changeerrors 0 > /div> /div> input namecontext typehidden valuecheckout /> div classactions-toolbar flex justify-between pt-6 pb-2 items-center> button typesubmit classinline-flex btn btn-primary disabled:opacity-75 > Inloggen /button> a hrefhttps://textieltrade.nl/customer/account/forgotpassword/ > Wachtwoord vergeten? /a> /div> /div> /form> /div> div classmx-4> /div> div classblock-new-customer bg-container border border-container mx-4 p-4 shadow-sm> p idauthenticate-new-customer classtext-lg mb-2 leading-7 text-gray-900> strong classfont-medium>Checkout as a new customer/strong> /p> div classblock-content> p classmb-1> Waarom een account aanmaken? /p> ul classlist-disc pl-5> li> Volg de status van je bestellingen op/li> li> Bekijk je vorige bestellingen/li> li> Reken sneller af/li> /ul> div classactions-toolbar flex justify-between mt-6 mb-2 items-center> a hrefhttps://textieltrade.nl/customer/account/create/ classinline-flex btn btn-primary> Account aanmaken /a> /div> /div> /div> /div> /div> /div>/section> div classbg-primary-200 hidden md:block> div classcontainer text-white> div x-datainitMenuDesktop_67179d2542c89() classz-20 order-2 sm:order-1 lg:order-2 navigation hidden lg:flex> !-- desktop --> div x-refnav-desktop @load.windowsetActiveMenu($root) classw-full desktop-menu hidden lg:block lg:relative text-primary> nav classw-full duration-150 ease-in-out transform flex w-auto relative min-h-0 transition-display flex-wrap justify-between z-20 > div classlevel-0 @mouseenterhoverPanelActiveId category-node-4 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/baby.html titleBaby > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Baby /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-4, block : hoverPanelActiveId category-node-4 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/baby/babybroekjes.html titleBabybroekjes classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Babybroekjes /a> a hrefhttps://textieltrade.nl/baby/lange-mouwen-shirts.html titleLange mouwen shirts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Lange mouwen shirts /a> a hrefhttps://textieltrade.nl/baby/mutsen-sjaals-en-handschoenen.html titleMutsen, Sjaals en Handschoenen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Mutsen, Sjaals en Handschoenen /a> a hrefhttps://textieltrade.nl/baby/petten.html titlePetten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Petten /a> a hrefhttps://textieltrade.nl/baby/pyjama-s.html titlePyjama's classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Pyjama's /a> a hrefhttps://textieltrade.nl/baby/rammelaars.html titleRammelaars classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Rammelaars /a> a hrefhttps://textieltrade.nl/baby/romper-baby-pakje.html titleRomper / Baby Pakje classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Romper / Baby Pakje /a> a hrefhttps://textieltrade.nl/baby/slabbetjes.html titleSlabbetjes classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Slabbetjes /a> a hrefhttps://textieltrade.nl/baby/sokken.html titleSokken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Sokken /a> a hrefhttps://textieltrade.nl/baby/t-shirts.html titleT-shirts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > T-shirts /a> a hrefhttps://textieltrade.nl/baby/zwemkleding.html titleZwemkleding classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zwemkleding /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-23 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/kinder.html titleKinder > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Kinder /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-23, block : hoverPanelActiveId category-node-23 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/kinder/2-delige-sets.html title2 Delige Sets classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > 2 Delige Sets /a> a hrefhttps://textieltrade.nl/kinder/badjassen.html titleBadjassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Badjassen /a> a hrefhttps://textieltrade.nl/kinder/hoodie-dekens.html titleHoodie dekens classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Hoodie dekens /a> a hrefhttps://textieltrade.nl/kinder/hoodies-en-sweaters.html titleHoodies en Sweaters classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Hoodies en Sweaters /a> a hrefhttps://textieltrade.nl/kinder/joggingbroeken.html titleJoggingbroeken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Joggingbroeken /a> a hrefhttps://textieltrade.nl/kinder/joggingpakken.html titleJoggingpakken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Joggingpakken /a> a hrefhttps://textieltrade.nl/kinder/jurken-en-jumpsuits.html titleJurken en Jumpsuits classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Jurken en Jumpsuits /a> a hrefhttps://textieltrade.nl/kinder/lange-mouwen-shirts.html titleLange mouwen shirts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Lange mouwen shirts /a> a hrefhttps://textieltrade.nl/kinder/leggings.html titleLeggings classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Leggings /a> a hrefhttps://textieltrade.nl/kinder/mutsen-sjaals-en-handschoenen.html titleMutsen, Sjaals en Handschoenen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Mutsen, Sjaals en Handschoenen /a> a hrefhttps://textieltrade.nl/kinder/onesies.html titleOnesies classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Onesies /a> a hrefhttps://textieltrade.nl/kinder/ondergoed.html titleOndergoed classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Ondergoed /a> a hrefhttps://textieltrade.nl/kinder/petten.html titlePetten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Petten /a> a hrefhttps://textieltrade.nl/kinder/pyjama-s.html titlePyjama's classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Pyjama's /a> a hrefhttps://textieltrade.nl/kinder/schoenen.html titleSchoenen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Schoenen /a> a hrefhttps://textieltrade.nl/kinder/schorten.html titleSchorten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Schorten /a> a hrefhttps://textieltrade.nl/kinder/shorts.html titleShorts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Shorts /a> a hrefhttps://textieltrade.nl/kinder/sokken.html titleSokken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Sokken /a> a hrefhttps://textieltrade.nl/kinder/t-shirts.html titleT-shirts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > T-shirts /a> a hrefhttps://textieltrade.nl/kinder/winterjassen.html titleWinterjassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Winterjassen /a> a hrefhttps://textieltrade.nl/kinder/zwemkleding.html titleZwemkleding classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zwemkleding /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-38 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/tassen.html titleTassen > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Tassen /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-38, block : hoverPanelActiveId category-node-38 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/tassen/3d-rugzakken.html title3D Rugzakken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > 3D Rugzakken /a> a hrefhttps://textieltrade.nl/tassen/etuis.html titleEtuis classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Etuis /a> a hrefhttps://textieltrade.nl/tassen/gymtassen.html titleGymtassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Gymtassen /a> a hrefhttps://textieltrade.nl/tassen/heuptasjes.html titleHeuptasjes classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Heuptasjes /a> a hrefhttps://textieltrade.nl/tassen/luiertassen.html titleLuiertassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Luiertassen /a> a hrefhttps://textieltrade.nl/tassen/lunchtassen.html titleLunchtassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Lunchtassen /a> a hrefhttps://textieltrade.nl/tassen/portemonnees.html titlePortemonnees classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Portemonnees /a> a hrefhttps://textieltrade.nl/tassen/rugzakken.html titleRugzakken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Rugzakken /a> a hrefhttps://textieltrade.nl/tassen/schoudertassen.html titleSchoudertassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Schoudertassen /a> a hrefhttps://textieltrade.nl/tassen/shoppers.html titleShoppers classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Shoppers /a> a hrefhttps://textieltrade.nl/tassen/sporttassen.html titleSporttassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Sporttassen /a> a hrefhttps://textieltrade.nl/tassen/toilettassen.html titleToilettassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Toilettassen /a> a hrefhttps://textieltrade.nl/tassen/trolleys.html titleTrolleys classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Trolleys /a> a hrefhttps://textieltrade.nl/tassen/telefoontassen.html titleTelefoontassen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Telefoontassen /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-403 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/bed-en-bad-textiel.html titleBed en bad textiel > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Bed en bad textiel /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-403, block : hoverPanelActiveId category-node-403 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/dekbedovertrekken.html titleDekbedovertrekken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Dekbedovertrekken /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/fleecedekens.html titleFleecedekens classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Fleecedekens /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/hand-gezichtshanddoeken.html titleHand + Gezichtshanddoeken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Hand + Gezichtshanddoeken /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/kussens.html titleKussens classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Kussens /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/poncho-s.html titlePoncho's classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Poncho's /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/slaapzakken.html titleSlaapzakken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Slaapzakken /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/strandlakens.html titleStrandlakens classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Strandlakens /a> a hrefhttps://textieltrade.nl/bed-en-bad-textiel/vloerkleden.html titleVloerkleden classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Vloerkleden /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-375 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/speelgoed.html titleSpeelgoed > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Speelgoed /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-375, block : hoverPanelActiveId category-node-375 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/speelgoed/bouwblokjes.html titleBouwblokjes classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Bouwblokjes /a> a hrefhttps://textieltrade.nl/speelgoed/buitenspeelgoed.html titleBuitenspeelgoed classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Buitenspeelgoed /a> a hrefhttps://textieltrade.nl/speelgoed/creatief-speelgoed.html titleCreatief speelgoed classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Creatief speelgoed /a> a hrefhttps://textieltrade.nl/speelgoed/elektronisch-speelplezier.html titleElektronisch speelplezier classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Elektronisch speelplezier /a> a hrefhttps://textieltrade.nl/speelgoed/fisher-price.html titleFisher-Price classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Fisher-Price /a> a hrefhttps://textieltrade.nl/speelgoed/gezelschapsspellen.html titleGezelschapsspellen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Gezelschapsspellen /a> a hrefhttps://textieltrade.nl/speelgoed/jolly-life.html titleJolly Life classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Jolly Life /a> a hrefhttps://textieltrade.nl/speelgoed/muziek-speelgoed-instrumenten.html titleMuziek Speelgoed & Instrumenten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Muziek Speelgoed & Instrumenten /a> a hrefhttps://textieltrade.nl/speelgoed/peuter-speelgoed.html titlePeuter speelgoed classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Peuter speelgoed /a> a hrefhttps://textieltrade.nl/speelgoed/pluche.html titlePluche classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Pluche /a> a hrefhttps://textieltrade.nl/speelgoed/pluche-speelgoed-met-licentie.html titlePluche speelgoed met licentie classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Pluche speelgoed met licentie /a> a hrefhttps://textieltrade.nl/speelgoed/poppen.html titlePoppen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Poppen /a> a hrefhttps://textieltrade.nl/speelgoed/puzzels.html titlePuzzels classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Puzzels /a> a hrefhttps://textieltrade.nl/speelgoed/rc-remote-control-toys.html titleRC Remote Control Toys classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > RC Remote Control Toys /a> a hrefhttps://textieltrade.nl/speelgoed/speelgoedfiguren.html titleSpeelgoedfiguren classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Speelgoedfiguren /a> a hrefhttps://textieltrade.nl/speelgoed/speelgoedvoertuigen.html titleSpeelgoedvoertuigen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Speelgoedvoertuigen /a> a hrefhttps://textieltrade.nl/speelgoed/soft-speelgoed-pistolen.html titleSoft speelgoed pistolen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Soft speelgoed pistolen /a> a hrefhttps://textieltrade.nl/speelgoed/voetballen.html titleVoetballen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Voetballen /a> a hrefhttps://textieltrade.nl/speelgoed/walkie-talkie.html titleWalkie Talkie classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Walkie Talkie /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-366 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/volwassenen.html titleVolwassenen > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Volwassenen /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-366, block : hoverPanelActiveId category-node-366 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/volwassenen/hoodie-dekens.html titleHoodie dekens classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Hoodie dekens /a> a hrefhttps://textieltrade.nl/volwassenen/hoodies-en-sweaters.html titleHoodies en sweaters classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Hoodies en sweaters /a> a hrefhttps://textieltrade.nl/volwassenen/t-shirts.html titleT-shirts classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > T-shirts /a> a hrefhttps://textieltrade.nl/volwassenen/pyjamas.html titlePyjamas classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Pyjamas /a> a hrefhttps://textieltrade.nl/volwassenen/sokken.html titleSokken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Sokken /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-39 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/accessoires.html titleAccessoires > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Accessoires /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-39, block : hoverPanelActiveId category-node-39 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/accessoires/eten-en-drinken-3.html titleEten en Drinken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Eten en Drinken /a> a hrefhttps://textieltrade.nl/accessoires/fiets-accessories.html titleFiets Accessories classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Fiets Accessories /a> a hrefhttps://textieltrade.nl/accessoires/gadgets-accessoires.html titleGadgets accessoires classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Gadgets accessoires /a> a hrefhttps://textieltrade.nl/accessoires/haar-accesoires.html titleHaar accesoires classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Haar accesoires /a> a hrefhttps://textieltrade.nl/accessoires/horloges-en-klokken-3.html titleHorloges en Klokken classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Horloges en Klokken /a> a hrefhttps://textieltrade.nl/accessoires/huisdieren.html titleHuisdieren classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Huisdieren /a> a hrefhttps://textieltrade.nl/accessoires/juwelen-doos-3.html titleJuwelen doos classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Juwelen doos /a> a hrefhttps://textieltrade.nl/accessoires/kleurplezier-3.html titleKleurplezier classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Kleurplezier /a> a hrefhttps://textieltrade.nl/accessoires/koptelefoon-3.html titleKoptelefoon classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Koptelefoon /a> a hrefhttps://textieltrade.nl/accessoires/make-up.html titleMake Up classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Make Up /a> a hrefhttps://textieltrade.nl/accessoires/kinderkamer.html titleKinderkamer classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Kinderkamer /a> a hrefhttps://textieltrade.nl/accessoires/paraplu-s.html titleParaplu's classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Paraplu's /a> a hrefhttps://textieltrade.nl/accessoires/placemats.html titlePlacemats classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Placemats /a> a hrefhttps://textieltrade.nl/accessoires/sleutelhangers.html titleSleutelhangers classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Sleutelhangers /a> a hrefhttps://textieltrade.nl/accessoires/spaarpotten.html titleSpaarpotten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Spaarpotten /a> a hrefhttps://textieltrade.nl/accessoires/stickervellen.html titleStickervellen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Stickervellen /a> a hrefhttps://textieltrade.nl/accessoires/zaklamp.html titleZaklamp classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zaklamp /a> a hrefhttps://textieltrade.nl/accessoires/zonneschermen.html titleZonneschermen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zonneschermen /a> a hrefhttps://textieltrade.nl/accessoires/zonnebrillen.html titleZonnebrillen classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zonnebrillen /a> a hrefhttps://textieltrade.nl/accessoires/zwem-producten.html titleZwem Producten classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > Zwem Producten /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> div classlevel-0 @mouseenterhoverPanelActiveId category-node-300 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/deal-of-the-week.html titleDeal of the week > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> Deal of the week /span> /a> /div> div classlevel-0 sale-category @mouseenterhoverPanelActiveId category-node-50 @mouseleavehoverPanelActiveId 0 > a classmenu-link level-0-link block px-2 xl:px-2 w-full text-base level-0 whitespace-nowrap hrefhttps://textieltrade.nl/sale-kleding-speelgoed.html titleSALE !!! > span classblock mt-1 py-2.5 border-b-4 hover:border-accent> SALE !!! /span> /a> div classw-full absolute z-20 bg-white child-container left-0 p-8 shadow-lg bg-container-lighter/95 :class{ hidden : hoverPanelActiveId ! category-node-50, block : hoverPanelActiveId category-node-50 } x-cloak> div classflex items-start gap-8> div classcolumns-2 w-1/2 max-w-50% gap-x-8> a hrefhttps://textieltrade.nl/sale/0-00-0-99.html title€ 0,00 - € 0,99 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > € 0,00 - € 0,99 /a> a hrefhttps://textieltrade.nl/sale/1-00-1-99.html title€ 1,00 - € 1,99 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > € 1,00 - € 1,99 /a> a hrefhttps://textieltrade.nl/sale/2-00-3-99.html title€ 2,00 - € 3,99 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > € 2,00 - € 3,99 /a> a hrefhttps://textieltrade.nl/sale/4-00-6-99.html title€ 4,00 - € 6,99 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > € 4,00 - € 6,99 /a> a hrefhttps://textieltrade.nl/sale/7-00-9-99.html title€ 7,00 - € 9,99 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > € 7,00 - € 9,99 /a> a hrefhttps://textieltrade.nl/sale/10-00.html title> €10,00 classmenu-link block w-full text-primary hover:underline mb-2 pb-0.5 border-b border-primary-200 > > €10,00 /a> /div> div classw-1/2> p>div classrelative w-full h-21rem> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: > Elke week een nieuw product tegen de beste prijs! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/730x730/MENU_BANNER_-_18-10-2024_.png alt classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width730 height402 />/div>/p> /div> /div> /div> /div> /nav> /div>/div>script> use strict; const initMenuDesktop_67179d2542c89 () > { return { hoverPanelActiveId: null, setActiveMenu(menuNode) { Array.from(menuNode.querySelectorAll(a.menu-link)).filter(link > { return link.href window.location.href.split(?)0; }).map(item > { item.classList.add(active); item.closest(div.level-0) && item.closest(div.level-0).querySelector(a.level-0).classList.add(active); }); } } }/script> /div> /div>/div>a classaction skip sr-only contentarea href#contentarea> span> Ga direct door naar de inhoud /span>/a>/header>main idmaincontent classpage-main>div idcontentarea tabindex-1>/div>div classpage messages>script defer> function initMessages() { use strict; return { messages: window.mageMessages || , isEmpty() { return this.messages.reduce( function (isEmpty, message) { return isEmpty && message undefined }, true ) }, removeMessage(messageIndex) { this.messagesmessageIndex undefined; }, addMessages(messages, hideAfter) { messages.map((message) > { hideAfter 10000; this.messages this.messages.concat(message); if (hideAfter) { this.setHideTimeOut(this.messages.length -1, hideAfter); } }); }, setHideTimeOut(messageIndex, hideAfter) { setTimeout((messageIndex) > { this.removeMessage(messageIndex); }, hideAfter, messageIndex); }, eventListeners: { @messages-loaded.window() { this.addMessages(event.detail.messages, event.detail.hideAfter) }, @private-content-loaded.window(event) { const data event.detail.data; if ( data.messages && data.messages.messages && data.messages.messages.length ) { this.addMessages(data.messages.messages); } }, @clear-messages.window() { this.messages ; } } } }/script>section idmessages x-datainitMessages() x-bindeventListeners> template x-if!isEmpty()> div classw-full> div rolealert classmessages container mx-auto py-3> template x-for(message, index) in messages :keyindex> div> template x-ifmessage> div classmessage :classmessage.type :ui-idmessage- + message.type > span x-htmlmessage.text>/span> a href# classclose cursor-pointer titleclose @click.preventremoveMessage(index)> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 384 512 classw-5 h-5 fill-current width18 height18>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z/>/svg> /a> /div> /template> /div> /template> /div> /div> /template>/section>/div>div classcolumns>div classcolumn main>div idmonkey_campaign styledisplay:none; data-mage-init{campaigncatcher:{checkCampaignUrl: https://textieltrade.nl/mailchimp/campaign/check/}}>/div>p>section classbg-primary-200 widget-block widget-banner-masonry relative > div classcontainer grid grid-flow-col grid-cols-12 xl:grid-rows-2 gap-4 md:gap-10 py-8 md:py-10> div classcol-span-12 xl:col-span-7 xl:row-span-2 relative h-fit lg:h-28rem> div classabsolute flex items-end z-10 h-full w-full py-4 px-5 md:py-6 md:px-8 bg-dark bg-opacity-40 rounded-xl> div classflex items-center gap-1> a classflex group item-center hrefhttps://textieltrade.nl/deal-of-the-week.html> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: > Weekaanbieding /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: #1871a9> Elke week nieuwe producten voor de beste prijzen! /div> /div> div classpl-4 fill-accent flex items-center transition-all group-hover:ml-5> svg xmlnshttp://www.w3.org/2000/svg fill viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> /div> img srchttps://textieltrade.nl/media/resized/widgets/1250x1250/IMAGE_1_18-10-2024_840_x_450_px_.png altWeekaanbieding classobject-cover object-center w-full h-full rounded-xl loadingeager width840 height450 /> /div> div classhidden xl:block relative rounded-xl col-start-1 col-span-6 row-start-2 grid-cols-5 xl:col-start-8 xl:col-span-5 xl:row-start-1> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-6 px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center group hrefhttps://textieltrade.nl/brand/fisher_price> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: #e6572> Fisher-Price /h2> div classtext-sm md:text-base text-primary font-bold line-clamp-2 stylecolor: #1871a9> Officiele distributeur /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent transition-all group-hover:ml-5> svg xmlnshttp://www.w3.org/2000/svg fill#e6572 viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/840x450/IMAGE_2_-_FISHER-PRICE_-600_x_200.jpg altFisher-Price classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width840 height280 /> /div> div classhidden xl:block relative rounded-xl col-start-7 col-span-6 xl:col-start-8 xl:col-span-5 row-start-2 grid-cols-5> div classrelative z-10 h-full w-full inline-flex items-start justify-end flex-col py-6 px-8 bg-dark bg-opacity-40 rounded-xl> a classflex item-center group hrefhttps://textieltrade.nl/brands> div classflex flex-col> h2 classtext-2xl md:text-4xl font-bold text-accent mb-1 stylecolor: #ffffff> Check al onze licenties! /h2> div classtext-sm md:text-base text-primary font-bold stylecolor: #ffffff> Op zoek naar een favoriet merk? Scroll door de lijst en vind precies het merk dat u zoekt! /div> /div> div classpl-4 h-full flex justify-center items-center fill-accent transition-all group-hover:ml-5> svg xmlnshttp://www.w3.org/2000/svg fill#ffffff viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /a> /div> img srchttps://textieltrade.nl/media/resized/widgets/840x450/Banner_Logo_-_opacity_20_2x.png altWeekaanbieding classabsolute top-0 left-0 object-cover object-center w-full h-full rounded-xl loadingeager width840 height280 /> /div> /div>/section>section classwidget-block shadow relative bg-primary-200> div classcontainer flex justify-center items-center text-primary bg-primary-200 font-light lg:justify-between> !-- USPs for Mobile --> div classusp-swiper block lg:hidden> div classusp-1 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1v9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1h1c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24v4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H379.3c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3h11.3c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16H454c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4H251.4c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3v3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3H248c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z/>/svg> p classp1>strong>span classs1>Gratis/span>/strong> verzending naar strong>span classs1>12 landen in Europa/span>/strong> bij > €500/p> /div> div classusp-2 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 640 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM112 0C85.5 0 64 21.5 64 48V96H16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 272c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 48c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 240c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 208c8.8 0 16 7.2 16 16s-7.2 16-16 16H64V416c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H112zM544 237.3V256H416V160h50.7L544 237.3zM160 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm272 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z/>/svg> p classp1>Verzending binnen strong>span classs1>48 - 96 uur/span>/strong> na betaling/p> /div> div classusp-3 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z/>/svg> p classp1>Altijd de strong>span classs1>nieuwste/span>/strong> licenties/p> /div> div classusp-4 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z/>/svg> p classp1>strong>span classs1>Veilige/span>/strong> Betalingen/p> /div> /div> !-- USPs for desktop --> div classhidden w-full py-3 justify-center items-center text-primary bg-primary-200 font-light lg:justify-between lg:flex> div classflex gap-2 items-center> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1v9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1h1c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24v4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H379.3c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3h11.3c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16H454c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4H251.4c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3v3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3H248c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z/>/svg> /div> div> p classp1>strong>span classs1>Gratis/span>/strong> verzending naar strong>span classs1>12 landen in Europa/span>/strong> bij > €500/p> /div> /div> div classflex gap-2 items-center hidden lg:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 640 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM112 0C85.5 0 64 21.5 64 48V96H16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 272c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 48c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 240c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 208c8.8 0 16 7.2 16 16s-7.2 16-16 16H64V416c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H112zM544 237.3V256H416V160h50.7L544 237.3zM160 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm272 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z/>/svg> /div> div> p classp1>Verzending binnen strong>span classs1>48 - 96 uur/span>/strong> na betaling/p> /div> /div> div classflex gap-2 items-center hidden xl:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z/>/svg> /div> div> p classp1>Altijd de strong>span classs1>nieuwste/span>/strong> licenties/p> /div> /div> div classflex gap-2 items-center hidden 2xl:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z/>/svg> /div> div> p classp1>strong>span classs1>Veilige/span>/strong> Betalingen/p> /div> /div> /div> /div>/section>section classrelative w-full py-16> div classcontainer x-data{ active: 1 }> h2 classtext-2xl md:text-4xl mb-0 w-full text-center> Aanbevolen categorieën /h2> div classmd:text-xl mb-3 md:mb-5 w-full text-center font-light> Ontdek de populairste categorieën! /div> div classselect-none cursor-grab relative x-datainitSlider(20423983650) @resize.windowsetNavigationVisibility() @load.windowsetNavigationVisibility() @set-navigation-visibility.window$nextTick(() > { setNavigationVisibility() }) data-uniqueid20423983650 > div classproducts-slider w-full relative overflow-auto snap-x scroll-smooth styled-scrollbar flex gap-4 md:gap-10 flex-nowrap items-stretch js-slider pb-4 -mb-4 hide-scrollbar > div classflex-none snap-start snap-always w-9/12 max-w-258px sm:w-4/12 lg:w-1/4 xl:w-1/5 js-slider-item> a classbg-category-orange flex group items-end rounded-lg overflow-hidden text-primary hover:no-underline relative justify-end h-full hrefhttps://textieltrade.nl/kinder.html titleKinder > img src/media/catalog/category/Kinder_categorie_Pokemon.png altCategorie afbeelding over Kinder width180 height180 classmax-w-180px mix-blend-multiply /> div classbg-primary text-white absolute left-0 bottom-0 py-2 px-4 flex rounded-bl-lg rounded-tr-lg items-center> Kinder span classtransition-all group-hover:ml-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classml-2 w-5 h-5 fill-white width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z/>/svg> /span> /div> /a> /div> div classflex-none snap-start snap-always w-9/12 max-w-258px sm:w-4/12 lg:w-1/4 xl:w-1/5 js-slider-item> a classbg-category-blue flex group items-end rounded-lg overflow-hidden text-primary hover:no-underline relative justify-end h-full hrefhttps://textieltrade.nl/bed-en-bad-textiel/dekbedovertrekken.html titleDekbedovertrekken > img src/media/catalog/category/Dekbedovertrek_categorie_Lilo_en_Stitch.png altCategorie afbeelding over Dekbedovertrekken width180 height180 classmax-w-180px mix-blend-multiply /> div classbg-primary text-white absolute left-0 bottom-0 py-2 px-4 flex rounded-bl-lg rounded-tr-lg items-center> Dekbedovertrekken span classtransition-all group-hover:ml-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classml-2 w-5 h-5 fill-white width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z/>/svg> /span> /div> /a> /div> div classflex-none snap-start snap-always w-9/12 max-w-258px sm:w-4/12 lg:w-1/4 xl:w-1/5 js-slider-item> a classbg-category-green flex group items-end rounded-lg overflow-hidden text-primary hover:no-underline relative justify-end h-full hrefhttps://textieltrade.nl/sale-kleding-speelgoed.html titleSALE !!! > img src/media/catalog/category/Sale-categorie.png altCategorie afbeelding over SALE !!! width180 height180 classmax-w-180px mix-blend-multiply /> div classbg-primary text-white absolute left-0 bottom-0 py-2 px-4 flex rounded-bl-lg rounded-tr-lg items-center> SALE !!! span classtransition-all group-hover:ml-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classml-2 w-5 h-5 fill-white width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z/>/svg> /span> /div> /a> /div> div classflex-none snap-start snap-always w-9/12 max-w-258px sm:w-4/12 lg:w-1/4 xl:w-1/5 js-slider-item> a classbg-category-purple flex group items-end rounded-lg overflow-hidden text-primary hover:no-underline relative justify-end h-full hrefhttps://textieltrade.nl/accessoires/eten-en-drinken-3.html titleEten en Drinken > img src/media/catalog/category/Eten_en_drinken_categorie_Gabby_s_Dollhouse.png altCategorie afbeelding over Eten en Drinken width180 height180 classmax-w-180px mix-blend-multiply /> div classbg-primary text-white absolute left-0 bottom-0 py-2 px-4 flex rounded-bl-lg rounded-tr-lg items-center> Eten en Drinken span classtransition-all group-hover:ml-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classml-2 w-5 h-5 fill-white width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z/>/svg> /span> /div> /a> /div> div classflex-none snap-start snap-always w-9/12 max-w-258px sm:w-4/12 lg:w-1/4 xl:w-1/5 js-slider-item> a classbg-category-red flex group items-end rounded-lg overflow-hidden text-primary hover:no-underline relative justify-end h-full hrefhttps://textieltrade.nl/tassen/rugzakken.html titleRugzakken > img src/media/catalog/category/Rugzakken_categorie_Spiderman.png altCategorie afbeelding over Rugzakken width180 height180 classmax-w-180px mix-blend-multiply /> div classbg-primary text-white absolute left-0 bottom-0 py-2 px-4 flex rounded-bl-lg rounded-tr-lg items-center> Rugzakken span classtransition-all group-hover:ml-3> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classml-2 w-5 h-5 fill-white width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z/>/svg> /span> /div> /a> /div> /div> template x-ifshowNavigation> div x-cloak> div classabsolute bottom-1/2 left-0 xl:-left-5 bg-transparent rounded w-10 lg:w-12> button aria-labelVorige classw-8 h-8 relative z-40 flex rounded-full items-center justify-center bg-accent text-white inline-block outline-none transition-colors focus:outline-none hover:bg-accent-600 lg:w-10 lg:h-10 :class{ hidden : !active.left } @clickscroll(prev)> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-3.5 rotate-90 fill-white width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /button> /div> div classabsolute bottom-1/2 right-0 xl:-right-6 bg-transparent rounded w-10 lg:w-12> button aria-labelVolgende classw-8 h-8 relative z-40 flex rounded-full items-center justify-center bg-accent text-white inline-block outline-none transition-colors focus:outline-none hover:bg-accent-600 lg:w-10 lg:h-10 :class{ hidden : !active.right } @clickscroll(next)> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-3.5 -rotate-90 fill-white width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /button> /div> /div> /template> /div> /div>/section>section classwidget-block py-16 stylebackground-color: #FFF9F4; > h2 classtext-3xl lg:text-4xl text-center mb-0>Nieuwe Producten/h2> h3 classfont-light text-center mb-8>Direct leverbaar/h3> div> section classselect-none cursor-grab relative w-full> div classcontainer x-data{ active: 1 }> div classselect-none cursor-grab relative x-datainitSlider(_6717b5134f7ed) @resize.windowsetNavigationVisibility() @load.windowsetNavigationVisibility() @set-navigation-visibility.window$nextTick(() > { setNavigationVisibility() }) data-uniqueid_6717b5134f7ed > div classproducts-slider w-full relative overflow-auto snap-x scroll-smooth flex gap-5 flex-nowrap items-stretch js-slider pb-4 -mb-4 hide-scrollbar > div classflex-none snap-start snap-always w-full max-w-full xs:max-w-275px sm:w-1/2 md:w-4/12 xl:w-1/5 js-slider-item> form methodpost actionhttps://textieltrade.nl/checkout/cart/add/uenc/%25uenc%25/product/34266/ classitem product product-item group product_addtocart_form rounded-xl h-full bg-white border border-primary-600 relative p-0 flex flex-col w-full transition-all hover:shadow-md > input nameform_key typehidden valueIWPYVTqGHlBMMcc7 /> input typehidden nameproduct value34266/> span classproduct-image-container product-image-container-34266> a hrefhttps://textieltrade.nl/paw-patrol-gymtas-5077472.html classproduct photo product-item-photo aspect-square block w-full p-10 mx-auto tabindex-1> img classobject-contain group-hover:scale-110 transition-all rounded-t-xl product-image-photo x-data @update-gallery-34266.window$root.src $event.detail srchttps://textieltrade.nl/media/catalog/product/cache/59a2a66a1215b78203d82145c020bbc4/5/2/520-3177_blue.jpg loadinglazy width360 height360 altPaw Patrol Gymtas titlePaw Patrol Gymtas/> /a> /span> div classproduct-info flex flex-col flex-auto h-full> div classinline-block px-5 mb-4 flex-auto> a classproduct-item-link font-base font-base block text-primary leading-5 md:text-16px md:leading-6 group-hover:text-accent hover:no-underline focus:text-accent hrefhttps://textieltrade.nl/paw-patrol-gymtas-5077472.html> Paw Patrol Gymtas /a> /div> !-- logic for showing size for a certain attribute --> !-- end --> /div> /form> /div> div classflex-none snap-start snap-always w-full max-w-full xs:max-w-275px sm:w-1/2 md:w-4/12 xl:w-1/5 js-slider-item> form methodpost actionhttps://textieltrade.nl/checkout/cart/add/uenc/%25uenc%25/product/41722/ classitem product product-item group product_addtocart_form rounded-xl h-full bg-white border border-primary-600 relative p-0 flex flex-col w-full transition-all hover:shadow-md > input nameform_key typehidden valueiabsKqLmmYkBPOFH /> input typehidden nameproduct value41722/> span classproduct-image-container product-image-container-41722> a hrefhttps://textieltrade.nl/catalog/product/view/id/41722/ classproduct photo product-item-photo aspect-square block w-full p-10 mx-auto tabindex-1> img classobject-contain group-hover:scale-110 transition-all rounded-t-xl product-image-photo x-data @update-gallery-41722.window$root.src $event.detail srchttps://textieltrade.nl/media/catalog/product/cache/59a2a66a1215b78203d82145c020bbc4/B/l/Bluey_Umbrella_Multicolour_Main_8712645316768_34a4.jpg loadinglazy width360 height360 altBluey Paraplu - Rainy days titleBluey Paraplu - Rainy days/> /a> /span> div classproduct-info flex flex-col flex-auto h-full> div classinline-block px-5 mb-4 flex-auto> a classproduct-item-link font-base font-base block text-primary leading-5 md:text-16px md:leading-6 group-hover:text-accent hover:no-underline focus:text-accent hrefhttps://textieltrade.nl/catalog/product/view/id/41722/> Bluey Paraplu - Rainy days /a> /div> !-- logic for showing size for a certain attribute --> !-- end --> /div> /form> /div> div classflex-none snap-start snap-always w-full max-w-full xs:max-w-275px sm:w-1/2 md:w-4/12 xl:w-1/5 js-slider-item> form methodpost actionhttps://textieltrade.nl/checkout/cart/add/uenc/%25uenc%25/product/41177/ classitem product product-item group product_addtocart_form rounded-xl h-full bg-white border border-primary-600 relative p-0 flex flex-col w-full transition-all hover:shadow-md > input nameform_key typehidden valueIWPYVTqGHlBMMcc7 /> input typehidden nameproduct value41177/> span classproduct-image-container product-image-container-41177> a hrefhttps://textieltrade.nl/avengers-sporttas-6489601.html classproduct photo product-item-photo aspect-square block w-full p-10 mx-auto tabindex-1> img classobject-contain group-hover:scale-110 transition-all rounded-t-xl product-image-photo x-data @update-gallery-41177.window$root.src $event.detail srchttps://textieltrade.nl/media/catalog/product/cache/59a2a66a1215b78203d82145c020bbc4/8/7/8720193931838_Avengers_sportingbag_side_5b3b.png loadinglazy width360 height360 altAvengers Sporttas titleAvengers Sporttas/> /a> /span> div classproduct-info flex flex-col flex-auto h-full> div classinline-block px-5 mb-4 flex-auto> a classproduct-item-link font-base font-base block text-primary leading-5 md:text-16px md:leading-6 group-hover:text-accent hover:no-underline focus:text-accent hrefhttps://textieltrade.nl/avengers-sporttas-6489601.html> Avengers Sporttas /a> /div> !-- logic for showing size for a certain attribute --> !-- end --> /div> /form> /div> div classflex-none snap-start snap-always w-full max-w-full xs:max-w-275px sm:w-1/2 md:w-4/12 xl:w-1/5 js-slider-item> form methodpost actionhttps://textieltrade.nl/checkout/cart/add/uenc/%25uenc%25/product/41004/ classitem product product-item group product_addtocart_form rounded-xl h-full bg-white border border-primary-600 relative p-0 flex flex-col w-full transition-all hover:shadow-md > input nameform_key typehidden valueiabsKqLmmYkBPOFH /> input typehidden nameproduct value41004/> span classproduct-image-container product-image-container-41004> a hrefhttps://textieltrade.nl/catalog/product/view/id/41004/ classproduct photo product-item-photo aspect-square block w-full p-10 mx-auto tabindex-1> img classobject-contain group-hover:scale-110 transition-all rounded-t-xl product-image-photo x-data @update-gallery-41004.window$root.src $event.detail srchttps://textieltrade.nl/media/catalog/product/cache/59a2a66a1215b78203d82145c020bbc4/R/B/RBMV7142_M_94ae.jpg loadinglazy width360 height360 altRed Bull Rugzak - Max Verstappen titleRed Bull Rugzak - Max Verstappen/> /a> /span> div classproduct-info flex flex-col flex-auto h-full> div classinline-block px-5 mb-4 flex-auto> a classproduct-item-link font-base font-base block text-primary leading-5 md:text-16px md:leading-6 group-hover:text-accent hover:no-underline focus:text-accent hrefhttps://textieltrade.nl/catalog/product/view/id/41004/> Red Bull Rugzak - Max Verstappen /a> /div> !-- logic for showing size for a certain attribute --> !-- end --> /div> /form> /div> div classflex-none snap-start snap-always w-full max-w-full xs:max-w-275px sm:w-1/2 md:w-4/12 xl:w-1/5 js-slider-item> form methodpost actionhttps://textieltrade.nl/checkout/cart/add/uenc/%25uenc%25/product/41210/ classitem product product-item group product_addtocart_form rounded-xl h-full bg-white border border-primary-600 relative p-0 flex flex-col w-full transition-all hover:shadow-md > input nameform_key typehidden valueiabsKqLmmYkBPOFH /> input typehidden nameproduct value41210/> span classproduct-image-container product-image-container-41210> a hrefhttps://textieltrade.nl/lilo-stitch-tekenkoffer-51-delig.html classproduct photo product-item-photo aspect-square block w-full p-10 mx-auto tabindex-1> img classobject-contain group-hover:scale-110 transition-all rounded-t-xl product-image-photo x-data @update-gallery-41210.window$root.src $event.detail srchttps://textieltrade.nl/media/catalog/product/cache/59a2a66a1215b78203d82145c020bbc4/L/i/Lilo_Stitch_Tekenkoffer_Blauw_Main_4043946318941_9341.jpg loadinglazy width360 height360 altLilo & Stitch Tekenkoffer - 51-delig titleLilo & Stitch Tekenkoffer - 51-delig/> /a> /span> div classproduct-info flex flex-col flex-auto h-full> div classinline-block px-5 mb-4 flex-auto> a classproduct-item-link font-base font-base block text-primary leading-5 md:text-16px md:leading-6 group-hover:text-accent hover:no-underline focus:text-accent hrefhttps://textieltrade.nl/lilo-stitch-tekenkoffer-51-delig.html> Lilo & Stitch Tekenkoffer - 51-delig /a> /div> !-- logic for showing size for a certain attribute --> !-- end --> /div> /form> /div> /div> template x-ifshowNavigation> div x-cloak> div classabsolute bottom-1/2 left-0 xl:-left-5 bg-transparent rounded w-10 lg:w-12> button aria-labelVorige classw-8 h-8 relative z-40 flex rounded-full items-center justify-center bg-accent text-white inline-block outline-none transition-colors focus:outline-none hover:bg-accent-600 lg:w-10 lg:h-10 :class{ hidden : !active.left } @clickscroll(prev)> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-3.5 rotate-90 fill-white width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /button> /div> div classabsolute bottom-1/2 right-0 xl:-right-6 bg-transparent rounded w-10 lg:w-12> button aria-labelVolgende classw-8 h-8 relative z-40 flex rounded-full items-center justify-center bg-accent text-white inline-block outline-none transition-colors focus:outline-none hover:bg-accent-600 lg:w-10 lg:h-10 :class{ hidden : !active.right } @clickscroll(next)> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-3.5 -rotate-90 fill-white width25 height25>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z/>/svg> /button> /div> /div> /template> /div> /div>/section> /div> script defer> use strict; window.addEventListener(DOMContentLoaded, function() { if (! window.productSliderEventHandlerInitialized) { window.productSliderEventHandlerInitialized true; } }); /script>/section>section classwidget-block relative mt-16 mb-16 > div classcontainer> div classflex flex-col gap-8 justify-center items-center bg-primary-200 py-14 px-12 rounded-xl md:flex-row > div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-12 h-12 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z/>/svg> /div> div classgrow-0 pr-0 text-center md:text-left md:grow md:pr-4> h2 classmb-0 text-3xl xl:text-3xl max-w-full md:max-w-xl xl:max-w-full>Wilt u een bestelling plaatsen boven de 240 stuks van 1 product?/h2> h3 classmb-0 font-light max-w-full md:max-w-xl xl:max-w-full>Neem direct contact op voor een op-maat-opgestelde prijsvorming/h3> /div> div classshrink-0> a classmy-auto mr-auto btn btn-primary text-center href/cdn-cgi/l/email-protection#a0c9cec6cfe0d4c5d8d4c9c5ccd4d2c1c4c58ececc titleVraag een offerte aan>Vraag een offerte aan/a> /div> /div> /div>/section>section classwidget-block relative mb-16 > div classcontainer> div classgrid grid-cols-1 md:grid-cols-2 gap-6 lg:gap-12> div> h2 classmb-0> Over Textiel Trade /h2> h3 classfont-light> Groothandel in kinderartikelen en leverancier van Disney merchandise /h3> div classprose leading-6 font-light> p>Textiel Trade B.V. is een groothandel die gespecialiseerd is in de volgende licenties: Disney, Marvel, Nickelodeon, Pokémon en Nintendo. Wij leveren kleding, bed- en badtextiel van diverse licenties.Wij bieden een groot assortiment aan kinder- en babyproducten. Alle producten op onze website zijn op voorraad. Wij leveren zowel de nieuwste trends als klassieke favorieten./p>p>Textiel Trade B.V. legt de nadruk op kwaliteit en betaalbaarheid, waardoor onze klanten scherpe prijzen kunnen verwachten.Service staat bij ons hoog in het vaandel en mede door onze eigen importmogelijkheden kunnen wij onze producten met een scherpe prijs aan u leveren. /p>p>Met onze snelle levering, uitstekende klantenservice en ons gevarieerde assortiment aan producten, zijn wij uw perfecte partner. /p> /div> a classbtn btn-primary inline-block mt-5 hrefhttps://textieltrade.nl//company-info titleBekijk bedrijfsinformatie > Bekijk bedrijfsinformatie /a> /div> div> div classgroup relative rounded-2xl overflow-hidden w-full h-60 bg-primary-200 lg:h-80> a hrefhttps://textieltrade.nl//company-info> img srchttps://textieltrade.nl/media/wysiwyg/wysiwyg/Kopie_van_Textiel_Trade_DOTW-_720_x_399_--_3_.png alt classobject-cover w-full h-60 lg:h-80 group-hover:scale-110 duration-500 transition-transform loadinglazy width640 height480 /> div classabsolute w-full bottom-10 left-10> div classflex items-center relative z-50> div> h2 classtext-2xl md:text-3xl font-bold text-accent mb-0> Textiel Trade B.V. /h2> div classtext-sm md:text-base text-primary font-bold > Mosquitostraat 10, 4651 ST Steenbergen /div> /div> div classpl-4 h-full flex items-center fill-accent transition-all group-hover:ml-5 > svg xmlnshttp://www.w3.org/2000/svg fillfill-accent viewBox0 0 512 512 classw-8 h-8 md:w-12 md:h-12 width12 height12> path dM502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z>/path> /svg> /div> /div> /div> /a> /div> /div> /div> /div>/section>/p>/div>/div>/main>footer classpage-footer>div classfooter content>p>section classwidget-block shadow relative bg-primary-200> div classcontainer flex justify-center items-center text-primary bg-primary-200 font-light lg:justify-between> !-- USPs for Mobile --> div classusp-swiper block lg:hidden> div classusp-1 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1v9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1h1c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24v4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H379.3c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3h11.3c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16H454c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4H251.4c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3v3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3H248c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z/>/svg> p classp1>strong>span classs1>Gratis/span>/strong> verzending naar strong>span classs1>12 landen in Europa/span>/strong> bij > €500/p> /div> div classusp-2 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 640 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM112 0C85.5 0 64 21.5 64 48V96H16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 272c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 48c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 240c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 208c8.8 0 16 7.2 16 16s-7.2 16-16 16H64V416c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H112zM544 237.3V256H416V160h50.7L544 237.3zM160 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm272 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z/>/svg> p classp1>Verzending binnen strong>span classs1>48 - 96 uur/span>/strong> na betalingen/p> /div> div classusp-3 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z/>/svg> p classp1>Altijd de strong>span classs1>nieuwste/span>/strong> licenties/p> /div> div classusp-4 flex gap-2 justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z/>/svg> p classp1>strong>span classs1>Online/span>/strong> Betalingen/p> /div> /div> !-- USPs for desktop --> div classhidden w-full py-3 justify-center items-center text-primary bg-primary-200 font-light lg:justify-between lg:flex> div classflex gap-2 items-center> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM266.3 48.3L232.5 73.6c-5.4 4-8.5 10.4-8.5 17.1v9.1c0 6.8 5.5 12.3 12.3 12.3c2.4 0 4.8-.7 6.8-2.1l41.8-27.9c2-1.3 4.4-2.1 6.8-2.1h1c6.2 0 11.3 5.1 11.3 11.3c0 3-1.2 5.9-3.3 8l-19.9 19.9c-5.8 5.8-12.9 10.2-20.7 12.8l-26.5 8.8c-5.8 1.9-9.6 7.3-9.6 13.4c0 3.7-1.5 7.3-4.1 10l-17.9 17.9c-6.4 6.4-9.9 15-9.9 24v4.3c0 16.4 13.6 29.7 29.9 29.7c11 0 21.2-6.2 26.1-16l4-8.1c2.4-4.8 7.4-7.9 12.8-7.9c4.5 0 8.7 2.1 11.4 5.7l16.3 21.7c2.1 2.9 5.5 4.5 9.1 4.5c8.4 0 13.9-8.9 10.1-16.4l-1.1-2.3c-3.5-7 0-15.5 7.5-18l21.2-7.1c7.6-2.5 12.7-9.6 12.7-17.6c0-10.3 8.3-18.6 18.6-18.6H400c8.8 0 16 7.2 16 16s-7.2 16-16 16H379.3c-7.2 0-14.2 2.9-19.3 8l-4.7 4.7c-2.1 2.1-3.3 5-3.3 8c0 6.2 5.1 11.3 11.3 11.3h11.3c6 0 11.8 2.4 16 6.6l6.5 6.5c1.8 1.8 2.8 4.3 2.8 6.8s-1 5-2.8 6.8l-7.5 7.5C386 262 384 266.9 384 272s2 10 5.7 13.7L408 304c10.2 10.2 24.1 16 38.6 16H454c6.5-20.2 10-41.7 10-64c0-111.4-87.6-202.4-197.7-207.7zm172 307.9c-3.7-2.6-8.2-4.1-13-4.1c-6 0-11.8-2.4-16-6.6L396 332c-7.7-7.7-18-12-28.9-12c-9.7 0-19.2-3.5-26.6-9.8L314 287.4c-11.6-9.9-26.4-15.4-41.7-15.4H251.4c-12.6 0-25 3.7-35.5 10.7L188.5 301c-17.8 11.9-28.5 31.9-28.5 53.3v3.2c0 17 6.7 33.3 18.7 45.3l16 16c8.5 8.5 20 13.3 32 13.3H248c13.3 0 24 10.7 24 24c0 2.5 .4 5 1.1 7.3c71.3-5.8 132.5-47.6 165.2-107.2zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM187.3 100.7c-6.2-6.2-16.4-6.2-22.6 0l-32 32c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0l32-32c6.2-6.2 6.2-16.4 0-22.6z/>/svg> /div> div> p classp1>strong>span classs1>Gratis/span>/strong> verzending naar strong>span classs1>12 landen in Europa/span>/strong> bij > €500/p> /div> /div> div classflex gap-2 items-center hidden lg:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 640 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM112 0C85.5 0 64 21.5 64 48V96H16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 272c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 48c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 240c8.8 0 16 7.2 16 16s-7.2 16-16 16H64 16c-8.8 0-16 7.2-16 16s7.2 16 16 16H64 208c8.8 0 16 7.2 16 16s-7.2 16-16 16H64V416c0 53 43 96 96 96s96-43 96-96H384c0 53 43 96 96 96s96-43 96-96h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V288 256 237.3c0-17-6.7-33.3-18.7-45.3L512 114.7c-12-12-28.3-18.7-45.3-18.7H416V48c0-26.5-21.5-48-48-48H112zM544 237.3V256H416V160h50.7L544 237.3zM160 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96zm272 48a48 48 0 1 1 96 0 48 48 0 1 1 -96 0z/>/svg> /div> div> p classp1>Verzending binnen strong>span classs1>48 - 96 uur/span>/strong> na betalingen/p> /div> /div> div classflex gap-2 items-center hidden xl:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z/>/svg> /div> div> p classp1>Altijd de strong>span classs1>nieuwste/span>/strong> licenties/p> /div> /div> div classflex gap-2 items-center hidden 2xl:inline-flex> div> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classw-5 h-5 fill-accent width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z/>/svg> /div> div> p classp1>strong>span classs1>Online/span>/strong> Betalingen/p> /div> /div> /div> /div>/section>/p>div classbg-primary-200 py-20> div classcontainer mx-auto> div classw-60 mb-6> ?xml version1.0 encodingUTF-8?>svg xmlnshttp://www.w3.org/2000/svg xmlns:xlinkhttp://www.w3.org/1999/xlink width250 height60 viewBox0 0 243.134742 55.9999418 version1.1 classh-14 w-60 px-2 lg:px-0> title>LOGO Copy/title> g idHomepage strokenone stroke-width1 fillnone fill-ruleevenodd> g idLOGO-Copy transformtranslate(0, 0)> g idLOGO transformtranslate(63.8931, 5.4723) fill-rulenonzero> g idGroothandel transformtranslate(93.8518, 43.4642) rotate(-360) translate(-93.8518, -43.4642)translate(23.0783, 39.2331) fill#0A3A59> path dM4.43017936,8.46205015 C3.78881291,8.46205015 3.19891414,8.35765335 2.66048305,8.14885974 C2.12205196,7.94006614 1.6548838,7.6446035 1.25897859,7.26247181 C0.86307337,6.88034012 0.554267302,6.43320665 0.332560381,5.9210714 C0.11085346,5.40893615 1.77635684e-15,4.84558738 1.77635684e-15,4.23102507 C1.77635684e-15,3.61646277 0.11085346,3.053114 0.332560381,2.54097875 C0.554267302,2.02884349 0.865052896,1.58171003 1.26491716,1.19957834 C1.66478143,0.817446651 2.13392911,0.521984006 2.67236021,0.313190404 C3.2107913,0.104396801 3.80464912,1.70530257e-13 4.45393368,1.70530257e-13 C5.11113633,1.70530257e-13 5.71291226,0.106366552 6.25926146,0.319099656 C6.80561066,0.531832761 7.26881976,0.850932417 7.64888877,1.27639863 L6.91250507,2.00914598 C6.57202658,1.67822782 6.2018552,1.43594845 5.80199094,1.28230788 C5.40212667,1.1286673 4.96861046,1.05184702 4.5014423,1.05184702 C4.02635604,1.05184702 3.58492173,1.13063705 3.17713936,1.28821713 C2.76935698,1.44579721 2.41700134,1.66640932 2.12007243,1.95005346 C1.82314352,2.2336976 1.59351849,2.57052501 1.43119735,2.9605357 C1.26887622,3.35054639 1.18771565,3.77404285 1.18771565,4.23102507 C1.18771565,4.68012829 1.26887622,5.09968525 1.43119735,5.48969594 C1.59351849,5.87970663 1.82314352,6.2185038 2.12007243,6.50608744 C2.41700134,6.79367108 2.76737746,7.01625294 3.17120078,7.17383302 C3.5750241,7.33141309 4.01447889,7.41020313 4.48956515,7.41020313 C4.93297899,7.41020313 5.35857709,7.34126185 5.76635947,7.20337928 C6.17414184,7.06549671 6.55223132,6.83503585 6.90062791,6.51199669 L7.57762583,7.41020313 C7.1658844,7.7568793 6.68485957,8.01885618 6.13455132,8.19613377 C5.58424307,8.37341136 5.01611908,8.46205015 4.43017936,8.46205015 Z M6.43741881,7.25656256 L6.43741881,4.18375105 L7.57762583,4.18375105 L7.57762583,7.41020313 L6.43741881,7.25656256 Z idShape/> path dM14.3281086,8.3675021 L14.3281086,0.0945480464 L17.5705723,0.0945480464 C18.2990379,0.0945480464 18.9206091,0.208793602 19.4352858,0.437284714 C19.9499626,0.665775826 20.3458678,0.996693989 20.6230015,1.4300392 C20.9001351,1.86338441 21.038702,2.37945917 21.038702,2.97826346 C21.038702,3.57706775 20.9001351,4.09117276 20.6230015,4.52057847 C20.3458678,4.94998418 19.9499626,5.27893259 19.4352858,5.5074237 C18.9206091,5.73591481 18.2990379,5.85016037 17.5705723,5.85016037 L14.9813522,5.85016037 L15.5158242,5.3065091 L15.5158242,8.3675021 L14.3281086,8.3675021 Z M19.8866178,8.3675021 L17.7724839,5.36560163 L19.0433397,5.36560163 L21.1812278,8.3675021 L19.8866178,8.3675021 Z M15.5158242,5.42469416 L14.9813522,4.84558738 L17.5349408,4.84558738 C18.2950788,4.84558738 18.8711209,4.68209805 19.2630671,4.35511939 C19.6550132,4.02814072 19.8509863,3.56918875 19.8509863,2.97826346 C19.8509863,2.38733817 19.6550132,1.93035595 19.2630671,1.60731679 C18.8711209,1.28427763 18.2950788,1.12275805 17.5349408,1.12275805 L14.9813522,1.12275805 L15.5158242,0.531832761 L15.5158242,5.42469416 Z idShape/> path dM31.1979286,8.46205015 C30.5644802,8.46205015 29.976561,8.3556836 29.4341709,8.14295049 C28.8917807,7.93021739 28.422633,7.63278499 28.0267278,7.2506533 C27.6308226,6.86852162 27.3220165,6.42138815 27.1003096,5.9092529 C26.8786027,5.39711765 26.7677492,4.83770837 26.7677492,4.23102507 C26.7677492,3.62434178 26.8786027,3.0649325 27.1003096,2.55279725 C27.3220165,2.040662 27.6308226,1.59352853 28.0267278,1.21139684 C28.422633,0.829265157 28.8898012,0.531832761 29.4282323,0.319099656 C29.9666634,0.106366552 30.5565621,5.68434189e-14 31.1979286,5.68434189e-14 C31.8313769,5.68434189e-14 32.4153371,0.104396801 32.9498092,0.313190404 C33.4842812,0.521984006 33.9514494,0.817446651 34.3513136,1.19957834 C34.7511779,1.58171003 35.059984,2.02884349 35.2777318,2.54097875 C35.4954797,3.053114 35.6043536,3.61646277 35.6043536,4.23102507 C35.6043536,4.84558738 35.4954797,5.40893615 35.2777318,5.9210714 C35.059984,6.43320665 34.7511779,6.88034012 34.3513136,7.26247181 C33.9514494,7.6446035 33.4842812,7.94006614 32.9498092,8.14885974 C32.4153371,8.35765335 31.8313769,8.46205015 31.1979286,8.46205015 Z M31.1979286,7.41020313 C31.6571786,7.41020313 32.0827767,7.33141309 32.4747229,7.17383302 C32.8666691,7.01625294 33.2071476,6.79367108 33.4961584,6.50608744 C33.7851692,6.2185038 34.0108351,5.88167638 34.1731563,5.49560519 C34.3354774,5.109534 34.416638,4.6880073 34.416638,4.23102507 C34.416638,3.77404285 34.3354774,3.35251614 34.1731563,2.96644495 C34.0108351,2.58037377 33.7851692,2.24354635 33.4961584,1.95596271 C33.2071476,1.66837907 32.8666691,1.44579721 32.4747229,1.28821713 C32.0827767,1.13063705 31.6571786,1.05184702 31.1979286,1.05184702 C30.7307604,1.05184702 30.3012033,1.13063705 29.9092571,1.28821713 C29.5173109,1.44579721 29.1748529,1.66837907 28.8818831,1.95596271 C28.5889132,2.24354635 28.3612677,2.58037377 28.1989466,2.96644495 C28.0366254,3.35251614 27.9554649,3.77404285 27.9554649,4.23102507 C27.9554649,4.6880073 28.0366254,5.109534 28.1989466,5.49560519 C28.3612677,5.88167638 28.5889132,6.2185038 28.8818831,6.50608744 C29.1748529,6.79367108 29.5173109,7.01625294 29.9092571,7.17383302 C30.3012033,7.33141309 30.7307604,7.41020313 31.1979286,7.41020313 Z idShape/> path dM45.6566859,8.46205015 C45.0232375,8.46205015 44.4353183,8.3556836 43.8929281,8.14295049 C43.350538,7.93021739 42.8813903,7.63278499 42.4854851,7.2506533 C42.0895799,6.86852162 41.7807738,6.42138815 41.5590669,5.9092529 C41.33736,5.39711765 41.2265065,4.83770837 41.2265065,4.23102507 C41.2265065,3.62434178 41.33736,3.0649325 41.5590669,2.55279725 C41.7807738,2.040662 42.0895799,1.59352853 42.4854851,1.21139684 C42.8813903,0.829265157 43.3485585,0.531832761 43.8869895,0.319099656 C44.4254206,0.106366552 45.0153194,0 45.6566859,0 C46.2901342,0 46.8740944,0.104396801 47.4085664,0.313190404 C47.9430385,0.521984006 48.4102066,0.817446651 48.8100709,1.19957834 C49.2099352,1.58171003 49.5187412,2.02884349 49.7364891,2.54097875 C49.954237,3.053114 50.0631109,3.61646277 50.0631109,4.23102507 C50.0631109,4.84558738 49.954237,5.40893615 49.7364891,5.9210714 C49.5187412,6.43320665 49.2099352,6.88034012 48.8100709,7.26247181 C48.4102066,7.6446035 47.9430385,7.94006614 47.4085664,8.14885974 C46.8740944,8.35765335 46.2901342,8.46205015 45.6566859,8.46205015 Z M45.6566859,7.41020313 C46.1159359,7.41020313 46.541534,7.33141309 46.9334802,7.17383302 C47.3254263,7.01625294 47.6659048,6.79367108 47.9549156,6.50608744 C48.2439264,6.2185038 48.4695924,5.88167638 48.6319136,5.49560519 C48.7942347,5.109534 48.8753953,4.6880073 48.8753953,4.23102507 C48.8753953,3.77404285 48.7942347,3.35251614 48.6319136,2.96644495 C48.4695924,2.58037377 48.2439264,2.24354635 47.9549156,1.95596271 C47.6659048,1.66837907 47.3254263,1.44579721 46.9334802,1.28821713 C46.541534,1.13063705 46.1159359,1.05184702 45.6566859,1.05184702 C45.1895177,1.05184702 44.7599605,1.13063705 44.3680144,1.28821713 C43.9760682,1.44579721 43.6336102,1.66837907 43.3406403,1.95596271 C43.0476705,2.24354635 42.820025,2.58037377 42.6577039,2.96644495 C42.4953827,3.35251614 42.4142221,3.77404285 42.4142221,4.23102507 C42.4142221,4.6880073 42.4953827,5.109534 42.6577039,5.49560519 C42.820025,5.88167638 43.0476705,6.2185038 43.3406403,6.50608744 C43.6336102,6.79367108 43.9760682,7.01625294 44.3680144,7.17383302 C44.7599605,7.33141309 45.1895177,7.41020313 45.6566859,7.41020313 Z idShape/> polygon idPath points57.8944149 8.3675021 57.8944149 1.12275805 55.0438973 1.12275805 55.0438973 0.0945480464 61.9207709 0.0945480464 61.9207709 1.12275805 59.0702534 1.12275805 59.0702534 8.3675021/> path dM73.6596594,0.0945480464 L74.847375,0.0945480464 L74.847375,8.3675021 L73.6596594,8.3675021 L73.6596594,0.0945480464 Z M68.8850425,8.3675021 L67.6973268,8.3675021 L67.6973268,0.0945480464 L68.8850425,0.0945480464 L68.8850425,8.3675021 Z M73.7665538,4.68012829 L68.7662709,4.68012829 L68.7662709,3.65191829 L73.7665538,3.65191829 L73.7665538,4.68012829 Z idShape/> path dM80.5645451,8.3675021 L84.3296037,0.0945480464 L85.5054422,0.0945480464 L89.282378,8.3675021 L88.0352765,8.3675021 L84.6740413,0.756384371 L85.1491275,0.756384371 L81.7878922,8.3675021 L80.5645451,8.3675021 Z M82.1679612,6.29926359 L82.4886445,5.35378312 L87.1682441,5.35378312 L87.5126816,6.29926359 L82.1679612,6.29926359 Z idShape/> polygon idPath points94.9995481 8.3675021 94.9995481 0.0945480464 95.9734749 0.0945480464 101.472598 6.89018888 100.961881 6.89018888 100.961881 0.0945480464 102.149596 0.0945480464 102.149596 8.3675021 101.175669 8.3675021 95.676546 1.57186127 96.1872637 1.57186127 96.1872637 8.3675021/> path dM109.125745,8.3675021 L109.125745,0.0945480464 L112.629506,0.0945480464 C113.516334,0.0945480464 114.298247,0.267886131 114.975245,0.614562301 C115.652242,0.961238471 116.178796,1.44579721 116.554906,2.06823851 C116.931016,2.69067982 117.119071,3.41160867 117.119071,4.23102507 C117.119071,5.05044148 116.931016,5.77137033 116.554906,6.39381163 C116.178796,7.01625294 115.652242,7.50081168 114.975245,7.84748785 C114.298247,8.19416402 113.516334,8.3675021 112.629506,8.3675021 L109.125745,8.3675021 Z M110.313461,7.3392921 L112.558243,7.3392921 C113.247118,7.3392921 113.842956,7.20928853 114.345755,6.94928141 C114.848555,6.68927428 115.238521,6.32487035 115.515655,5.85606962 C115.792789,5.38726889 115.931356,4.84558738 115.931356,4.23102507 C115.931356,3.60858377 115.792789,3.0649325 115.515655,2.60007127 C115.238521,2.13521005 114.848555,1.77277587 114.345755,1.51276874 C113.842956,1.25276161 113.247118,1.12275805 112.558243,1.12275805 L110.313461,1.12275805 L110.313461,7.3392921 Z idShape/> path dM124.499043,3.6637368 L128.77482,3.6637368 L128.77482,4.66830979 L124.499043,4.66830979 L124.499043,3.6637368 Z M124.605938,7.3392921 L129.451818,7.3392921 L129.451818,8.3675021 L123.418222,8.3675021 L123.418222,0.0945480464 L129.285537,0.0945480464 L129.285537,1.12275805 L124.605938,1.12275805 L124.605938,7.3392921 Z idShape/> polygon idPath points135.857863 8.3675021 135.857863 0.0945480464 137.045578 0.0945480464 137.045578 7.3392921 141.547021 7.3392921 141.547021 8.3675021/> /g> g idTextiel-Trade transformtranslate(89.6208, 15.7702) rotate(-360) translate(-89.6208, -15.7702)translate(-0, 0) fill#1871A9> path dM18.7071262,6.5147258 C18.517647,6.5147258 18.257113,6.43693207 17.9255244,6.28134462 C17.5939358,6.12575717 17.3215594,6.07189998 17.1083952,6.11977304 L13.4490777,7.12510733 L13.4490777,26.0110301 C13.4490777,26.7051895 13.614872,27.4591902 13.9464606,28.2730323 C14.0412002,28.5123976 14.0175153,28.9671917 13.8754059,29.6374145 C13.7332965,30.379447 13.5082899,30.8462093 13.2003862,31.0377016 C13.1530164,31.0616381 13.0345918,31.0736064 12.8451126,31.0736064 C12.0635108,31.0736064 10.9740052,30.9180189 9.57659595,30.606844 C8.01339232,30.2477961 7.08968109,29.9007164 6.80546225,29.5656049 C6.4738736,29.1347474 6.48571605,28.5602707 6.8409896,27.8421747 C7.14889335,27.2198249 7.30284522,26.7650308 7.30284522,26.4777925 L7.30284522,8.70491836 L4.78040301,9.35120469 C4.66197849,9.37514123 4.46657804,9.47687148 4.19420165,9.65639546 C3.92182526,9.83591944 3.69089745,9.9017449 3.50141822,9.85387184 C2.95666544,9.71025266 2.21059099,8.99814087 1.26319485,7.71753647 C0.315798712,6.43693207 -0.0986870976,5.56923283 0.0197374195,5.11443875 C0.209216647,4.56389854 0.765811877,4.14500925 1.68952311,3.85777088 C1.92637214,3.78596129 2.23427589,3.77399302 2.61323434,3.82186608 C2.9921928,3.86973914 3.28825409,3.86973914 3.50141822,3.82186608 L15.8649378,0.626339222 C15.9833623,0.602402692 16.3267934,0.458783507 16.8952311,0.195481668 C17.2741896,0.0279259526 17.6176207,-0.0319153744 17.9255244,0.0159576872 C18.5887017,0.11170381 19.0387149,0.375005649 19.2755639,0.805863203 C19.4413582,1.09310157 19.618995,1.63167352 19.8084742,2.42157903 C20.0453233,3.35510373 20.1637478,4.16894578 20.1637478,4.86310517 C20.1637478,5.38970885 20.0986143,5.79064574 19.9683473,6.06591584 C19.8380803,6.34118595 19.4176733,6.49078927 18.7071262,6.5147258 Z idPath/> path dM29.6619717,23.8567424 C29.8751359,24.2157903 29.4132802,25.2809659 28.2764049,27.0522692 C27.0447899,28.9432551 25.8368598,30.2238595 24.6526146,30.8940824 C24.5105052,30.965892 24.2973411,31.0017968 24.0131223,31.0017968 C23.089411,31.0017968 21.8814809,30.7145584 20.389332,30.1400817 C18.8024435,29.5656049 17.7603078,28.9432551 17.2629248,28.2730323 C15.8892004,26.4777925 15.2023382,23.9883933 15.2023382,20.8048347 C15.2023382,17.7888318 15.8063032,15.1318769 17.0142333,12.8339699 C18.316903,10.3206342 19.9748462,9.04002979 21.988063,8.99215673 C22.722295,8.9682202 23.6104789,9.15971245 24.6526146,9.56663347 C25.9315994,10.0693006 26.9855776,10.7514917 27.8145493,11.6132069 C28.0277134,11.8286356 28.2290351,12.474922 28.4185143,13.5520658 C28.6553633,14.7010193 28.7737878,15.8260363 28.7737878,16.9271167 C28.7737878,18.5548008 28.5132539,19.6798177 27.992186,20.3021675 C25.552641,21.092073 23.0657261,21.5348989 20.5314415,21.630645 C20.4840716,22.803535 20.6261811,24.0362663 20.9577697,25.328839 C21.2893584,26.6214117 21.6327895,27.2796663 21.988063,27.3036028 C22.4617611,27.3275393 23.0301988,26.9325866 23.6933761,26.1187445 C24.2854986,25.4245851 24.6526146,24.8381401 24.7947241,24.3594095 C24.9605184,23.6413136 25.185525,22.8992811 25.4697438,22.1333121 C25.8487023,22.0854391 26.5947767,22.2769313 27.7079672,22.7077889 C28.8211576,23.1386464 29.4724925,23.5216309 29.6619717,23.8567424 Z M23.3381025,12.8698747 C22.9354592,12.8220017 22.3729427,13.468288 21.6505531,14.8087337 C20.9281636,16.1491794 20.5077566,17.4297838 20.389332,18.6505469 C21.4551527,18.6026738 22.3078092,18.339372 22.9473016,17.8606414 C23.3262601,17.573403 23.5157393,16.3765765 23.5157393,14.2701618 C23.5157393,13.3845101 23.456527,12.9177478 23.3381025,12.8698747 Z idShape/> path dM48.6459995,10.356539 C48.764424,10.9070792 48.5512599,11.4097463 48.0065071,11.8645404 C47.5564939,12.2235884 47.1183232,12.5826364 46.691995,12.9416843 L42.1800209,19.0454997 L47.1538506,26.4059829 C47.4143845,26.6932213 47.6749184,26.9684914 47.9354524,27.2317932 C48.2907259,27.6147777 48.4683627,27.9618574 48.4683627,28.2730323 C48.4683627,28.4645245 48.397308,28.6560168 48.2551986,28.847509 C48.0657194,29.1108109 47.3788572,29.5297001 46.194612,30.1041769 C45.1051064,30.6786536 44.3945593,31.0017968 44.0629707,31.0736064 C43.3761085,31.0736064 42.9497802,30.7624315 42.7839859,30.1400817 C42.4997671,29.0868743 41.2563096,26.8727452 39.0536136,23.4976944 L35.9272064,28.667985 C35.8087818,29.1227791 35.7021998,29.5656049 35.6074602,29.9964625 C35.4179809,30.6906219 35.0982347,31.0736064 34.6482216,31.145416 C34.1982084,31.2172256 33.2981821,31.0137651 31.9481426,30.5350344 C30.5270484,30.0323673 29.6862343,29.5775732 29.4257004,29.1706522 C29.3309608,29.027033 29.2835909,28.8834138 29.2835909,28.7397946 C29.2835909,28.4286197 29.5085975,28.0576035 29.9586107,27.626746 C30.5507333,27.0043962 30.858637,26.6692847 30.8823219,26.6214117 L35.7140422,19.1891188 L31.3441775,12.295398 C31.0125889,12.0799692 30.6691578,11.708953 30.3138842,11.1823493 C30.2901993,10.8951109 30.8823219,10.356539 32.090252,9.56663347 C33.2981821,8.77672796 34.1508386,8.3458704 34.6482216,8.27406081 C35.0982347,8.20225122 35.4002173,8.30996561 35.5541691,8.59720397 C35.708121,8.88444234 35.8443092,9.18364898 35.9627337,9.49482388 L39.0536136,14.8805433 L42.4642397,9.71025266 C42.5826642,9.37514123 42.7010887,9.05199806 42.8195132,8.74082316 C42.9142529,8.52539438 43.3287387,8.3817752 44.0629707,8.30996561 C44.4182442,8.28602907 45.2531371,8.54933091 46.5676492,9.09987112 C47.8821614,9.65041133 48.5749448,10.0693006 48.6459995,10.356539 Z idPath/> path dM62.6917249,12.5467316 C62.66804,12.9775891 62.5259306,13.3605736 62.2653966,13.695685 C62.0048627,14.0307965 61.7206439,14.1983522 61.4127401,14.1983522 C61.3180005,14.1983522 61.2351033,14.1863839 61.1640486,14.1624474 C60.83246,14.0427647 60.0863855,13.9829234 58.9258252,13.9829234 L58.9258252,28.1653179 C58.9258252,28.1413814 59.0028012,28.3328736 59.1567531,28.7397946 C59.3107049,29.1467157 59.3876809,29.5057636 59.3876809,29.8169385 C59.3876809,30.5110979 58.9139828,30.8821141 57.9665867,30.9299872 C57.4692037,30.9539237 56.5573349,30.738495 55.2309803,30.2837009 C53.7862012,29.8049703 53.0164418,29.3621444 52.9217022,28.9552234 C52.8743324,28.7876677 52.9572296,28.4346039 53.1703937,27.8960319 C53.3835578,27.35746 53.4901399,26.9445548 53.4901399,26.6573165 L53.4901399,13.9470186 L52.2822098,13.9470186 C51.8321967,13.9470186 51.2756014,13.5460817 50.6124242,12.7442079 C49.9492469,11.9423342 49.6176582,11.302032 49.6176582,10.8233013 C49.6176582,10.4642534 49.7538464,10.1411102 50.0262228,9.85387184 C50.2985992,9.56663347 50.6005817,9.42301429 50.9321703,9.42301429 L53.4901399,9.42301429 L53.4901399,6.19158263 C53.1348664,5.71285201 52.9572296,5.1982166 52.9572296,4.64767639 C52.9572296,4.14500925 53.1703937,3.83383435 53.596722,3.71415169 C53.8098861,3.66627863 54.1059474,3.6423421 54.4849059,3.6423421 C55.3612473,3.6423421 56.3856194,3.77997715 57.5580221,4.05524726 C58.7304248,4.33051736 59.4942629,4.6117716 59.8495365,4.89900997 C60.0153308,5.04262915 60.098228,5.21018487 60.098228,5.40167711 C60.098228,5.64104242 59.9087487,6.00009038 59.5297903,6.478821 C59.1508318,6.95755162 58.9495102,7.29266305 58.9258252,7.48415529 L58.9258252,9.42301429 L60.0627006,9.42301429 C60.2995496,9.42301429 60.7969326,9.85387184 61.5548495,10.7155869 C62.3127664,11.5773021 62.6917249,12.1876836 62.6917249,12.5467316 Z idPath/> path dM70.5912179,4.6117716 C70.6149028,4.65964466 70.6267452,4.75539078 70.6267452,4.89900997 C70.6267452,5.42561365 70.5201631,6.10780477 70.306999,6.94558335 C70.07015,7.85517152 69.8451434,8.35783867 69.6319793,8.45358479 C69.3951302,8.54933091 68.3766794,8.29201321 66.5766267,7.68163167 C64.7765741,7.07125014 63.8173355,6.63440845 63.698911,6.37110661 C63.6278563,6.25142396 63.5923289,6.07189998 63.5923289,5.83253467 C63.5923289,5.18624834 63.7581232,4.50405721 64.0897119,3.78596129 C64.4686703,2.97211924 64.8949986,2.51732515 65.3686967,2.42157903 C65.9134494,2.32583291 66.8608456,2.53527755 68.2108851,3.04991296 C69.5609246,3.56454838 70.3543688,4.08516792 70.5912179,4.6117716 Z M70.4846358,29.4219858 C70.5793754,30.2837009 70.2833141,30.8222728 69.5964519,31.0377016 C69.4780274,31.0616381 69.3122331,31.0736064 69.0990689,31.0736064 C68.2464124,31.0736064 67.1924342,30.8940824 65.9371343,30.5350344 C64.5870948,30.1520499 63.7936506,29.7451289 63.5568015,29.3142714 C63.438377,29.1227791 63.5449591,28.7517629 63.8765477,28.2012227 C64.0897119,27.8421747 64.1962939,27.1839201 64.1962939,26.2264589 L64.1962939,11.1464445 C63.9120751,10.2368563 63.7699657,9.6264748 63.7699657,9.3152999 C63.7699657,9.004125 64.2081364,8.84853755 65.0844778,8.84853755 C65.7950249,8.84853755 66.7838696,9.06995046 68.051012,9.51277628 C69.3181543,9.9556021 70.0819924,10.3445707 70.3425264,10.6796822 C70.4135811,10.7754283 70.4491084,10.8951109 70.4491084,11.0387301 C70.4491084,11.2302224 70.3129202,11.5892703 70.0405439,12.115874 C69.7681675,12.6424777 69.6319793,13.0374304 69.6319793,13.3007323 L69.6319793,27.7344603 C69.6319793,27.9738256 69.7681675,28.2730323 70.0405439,28.6320802 C70.3129202,28.9911282 70.4609509,29.25443 70.4846358,29.4219858 Z idShape/> path dM85.1698536,23.8567424 C85.3830177,24.2157903 84.9211621,25.2809659 83.7842867,27.0522692 C82.5526718,28.9432551 81.3447417,30.2238595 80.1604965,30.8940824 C80.0183871,30.965892 79.805223,31.0017968 79.5210041,31.0017968 C78.5972929,31.0017968 77.3893628,30.7145584 75.8972139,30.1400817 C74.3103254,29.5656049 73.2681896,28.9432551 72.7708067,28.2730323 C71.3970823,26.4777925 70.7102201,23.9883933 70.7102201,20.8048347 C70.7102201,17.7888318 71.3141851,15.1318769 72.5221152,12.8339699 C73.8247849,10.3206342 75.4827281,9.04002979 77.4959449,8.99215673 C78.2301769,8.9682202 79.1183608,9.15971245 80.1604965,9.56663347 C81.4394813,10.0693006 82.4934595,10.7514917 83.3224311,11.6132069 C83.5355953,11.8286356 83.7369169,12.474922 83.9263962,13.5520658 C84.1632452,14.7010193 84.2816697,15.8260363 84.2816697,16.9271167 C84.2816697,18.5548008 84.0211358,19.6798177 83.5000679,20.3021675 C81.0605228,21.092073 78.573608,21.5348989 76.0393233,21.630645 C75.9919535,22.803535 76.1340629,24.0362663 76.4656516,25.328839 C76.7972402,26.6214117 77.1406713,27.2796663 77.4959449,27.3036028 C77.969643,27.3275393 78.5380806,26.9325866 79.2012579,26.1187445 C79.7933805,25.4245851 80.1604965,24.8381401 80.3026059,24.3594095 C80.4684003,23.6413136 80.6934068,22.8992811 80.9776257,22.1333121 C81.3565841,22.0854391 82.1026586,22.2769313 83.2158491,22.7077889 C84.3290395,23.1386464 84.9803744,23.5216309 85.1698536,23.8567424 Z M78.8459844,12.8698747 C78.443341,12.8220017 77.8808246,13.468288 77.158435,14.8087337 C76.4360455,16.1491794 76.0156384,17.4297838 75.8972139,18.6505469 C76.9630346,18.6026738 77.8156911,18.339372 78.4551835,17.8606414 C78.8341419,17.573403 79.0236212,16.3765765 79.0236212,14.2701618 C79.0236212,13.3845101 78.9644089,12.9177478 78.8459844,12.8698747 Z idShape/> path dM93.1404013,2.20615025 C93.1404013,2.37370597 93.0871102,2.60110301 92.9805282,2.88834138 C92.8739461,3.17557975 92.8088126,3.35510373 92.7851277,3.42691332 C92.6430183,3.90564394 92.5009089,4.64767639 92.3587995,5.65301069 L92.3587995,27.6985555 C92.3587995,27.9857939 92.4298542,28.2431116 92.5719636,28.4705087 C92.714073,28.6979057 92.7851277,28.8834138 92.7851277,29.027033 C92.7851277,30.558971 92.5009089,31.3847813 91.9324712,31.5044639 C91.7193071,31.552337 90.9673114,31.3907654 89.6764841,31.0197492 C88.3856569,30.648733 87.6099763,30.3555105 87.3494424,30.1400817 C86.8283745,29.6852876 86.5678406,29.2663983 86.5678406,28.8834138 C86.5678406,28.7876677 86.6152104,28.6799533 86.70995,28.5602707 C86.8046896,28.440588 86.8520594,28.2371275 86.8520594,27.9498891 L86.8520594,2.63700781 C86.8520594,2.49338862 86.8106108,2.34378531 86.7277137,2.18819786 C86.6448165,2.03261041 86.6033679,1.88300709 86.6033679,1.7393879 C86.6507377,1.16491117 87.0889084,0.781926672 87.9178801,0.590434426 C88.1547291,0.542561365 88.6521121,0.542561365 89.410029,0.590434426 C90.2863704,0.662244018 91.0442873,0.793894938 91.6837797,0.985387184 C92.6548607,1.27262555 93.1404013,1.67954658 93.1404013,2.20615025 Z idPath/> path dM118.531773,6.5147258 C118.342294,6.5147258 118.08176,6.43693207 117.750171,6.28134462 C117.418583,6.12575717 117.146206,6.07189998 116.933042,6.11977304 L113.273725,7.12510733 L113.273725,26.0110301 C113.273725,26.7051895 113.439519,27.4591902 113.771108,28.2730323 C113.865847,28.5123976 113.842162,28.9671917 113.700053,29.6374145 C113.557943,30.379447 113.332937,30.8462093 113.025033,31.0377016 C112.977663,31.0616381 112.859239,31.0736064 112.669759,31.0736064 C111.888158,31.0736064 110.798652,30.9180189 109.401243,30.606844 C107.838039,30.2477961 106.914328,29.9007164 106.630109,29.5656049 C106.29852,29.1347474 106.310363,28.5602707 106.665636,27.8421747 C106.97354,27.2198249 107.127492,26.7650308 107.127492,26.4777925 L107.127492,8.70491836 L104.60505,9.35120469 C104.486625,9.37514123 104.291225,9.47687148 104.018849,9.65639546 C103.746472,9.83591944 103.515544,9.9017449 103.326065,9.85387184 C102.781312,9.71025266 102.035238,8.99814087 101.087842,7.71753647 C100.140446,6.43693207 99.7259598,5.56923283 99.8443843,5.11443875 C100.033864,4.56389854 100.590459,4.14500925 101.51417,3.85777088 C101.751019,3.78596129 102.058923,3.77399302 102.437881,3.82186608 C102.81684,3.86973914 103.112901,3.86973914 103.326065,3.82186608 L115.689585,0.626339222 C115.808009,0.602402692 116.15144,0.458783507 116.719878,0.195481668 C117.098836,0.0279259526 117.442268,-0.0319153744 117.750171,0.0159576872 C118.413349,0.11170381 118.863362,0.375005649 119.100211,0.805863203 C119.266005,1.09310157 119.443642,1.63167352 119.633121,2.42157903 C119.86997,3.35510373 119.988395,4.16894578 119.988395,4.86310517 C119.988395,5.38970885 119.923261,5.79064574 119.792994,6.06591584 C119.662727,6.34118595 119.24232,6.49078927 118.531773,6.5147258 Z idPath/> path dM129.2024,11.1105397 C129.297139,11.4935242 129.166872,11.8046991 128.811599,12.0440644 C128.52738,12.1876836 128.255004,12.343271 127.99447,12.5108268 C126.502321,14.8087337 124.477262,17.9085145 121.919292,21.810169 C121.919292,25.6160774 121.931134,27.5788729 121.954819,27.6985555 C121.978504,27.8182382 122.067323,28.123429 122.221274,28.6141278 C122.375226,29.1048267 122.452202,29.4937954 122.452202,29.7810337 C122.452202,30.2358278 122.250881,30.5470027 121.848237,30.7145584 C121.587703,30.8342411 121.23243,30.8940824 120.782417,30.8940824 C119.88239,30.8940824 118.887624,30.6906219 117.798119,30.2837009 C116.424394,29.8049703 115.737532,29.1945887 115.737532,28.4525563 C115.737532,28.2371275 115.832272,27.8900478 116.021751,27.4113172 C116.21123,26.9325866 116.30597,26.5376338 116.30597,26.2264589 L116.30597,12.0081596 C116.045436,10.6677139 115.915169,9.9735545 115.915169,9.92568143 C115.915169,9.18364898 116.246758,8.71688663 116.909935,8.52539438 C117.194154,8.45358479 117.537585,8.41767999 117.940228,8.41767999 C118.7692,8.41767999 119.63962,8.55531505 120.551489,8.83058515 C121.463358,9.10585525 122.002189,9.39907776 122.167983,9.71025266 C122.215353,9.80599878 122.239038,9.92568143 122.239038,10.0693006 C122.239038,10.1889833 122.073244,10.76346 121.741655,11.7927308 L121.741655,13.5161611 C122.310093,12.4868902 122.866688,11.4576194 123.411441,10.4283486 C124.145673,9.13577592 124.690426,8.45358479 125.045699,8.3817752 C125.566767,8.28602907 126.360211,8.59720397 127.426032,9.3152999 C128.491853,10.0333958 129.083975,10.6318091 129.2024,11.1105397 Z idPath/> path dM146.161368,29.3501762 C146.137683,29.6852876 145.995574,29.972526 145.73504,30.2118913 C145.474506,30.4512566 145.178445,30.5470027 144.846856,30.4991296 C141.909928,30.0922086 140.27567,29.5297001 139.944081,28.8116042 C139.896711,28.7158581 139.873026,28.620112 139.873026,28.5243659 C139.873026,28.4046832 139.926317,28.2730323 140.0329,28.1294131 C140.139482,27.9857939 140.204615,27.8601271 140.2283,27.7524127 C140.251985,27.6446983 140.299355,27.5429681 140.370409,27.447222 C140.417779,27.2557297 140.429622,26.8368404 140.405937,26.1905541 C140.121718,26.4059829 139.69539,26.9804596 139.126952,27.9139843 C138.534829,28.9432551 138.013762,29.6613511 137.563748,30.0682721 C136.805831,30.786368 135.941332,31.145416 134.970251,31.145416 C134.401814,31.145416 133.845219,30.9180189 133.300466,30.4632248 C133.039932,30.2477961 132.578076,29.7810337 131.914899,29.0629378 C130.778024,27.7703651 130.162216,27.0642375 130.067476,26.9445548 C129.570093,26.274332 129.321402,25.6400139 129.321402,25.0416006 C129.321402,24.8501084 129.345087,24.6586161 129.392457,24.4671239 C129.84247,22.3607092 131.239879,20.3620089 133.584685,18.4710229 C135.289998,17.1066407 137.705858,15.6584806 140.832265,14.1265426 C140.832265,13.3605736 140.642786,12.8698747 140.263827,12.6544459 C140.026978,12.5108268 139.198007,12.7801127 137.776912,13.4623039 C136.355818,14.144495 135.361052,14.7249559 134.792615,15.2036865 C134.603135,15.3951787 134.295232,15.6584806 133.868903,15.993592 C133.46626,16.2329573 133.099144,16.3047669 132.767555,16.2090208 C132.507021,16.1372112 131.950426,15.7063536 131.09777,14.9164481 C130.245113,14.1265426 129.783258,13.5999389 129.712203,13.3366371 C129.522724,12.6903507 129.724045,12.1876836 130.316168,11.8286356 C130.339853,11.8046991 130.813551,11.6610799 131.737262,11.3977781 C132.613604,10.9190475 133.489945,10.4403168 134.366286,9.96158623 C136.213709,9.07593459 137.776912,8.59720397 139.055897,8.52539438 C139.60065,8.50145785 140.216458,8.78869622 140.90332,9.38710949 C141.519127,9.9376497 142.140856,10.4822058 142.768506,11.0207777 C143.396156,11.5593497 144.041569,12.0799692 144.704747,12.5826364 C145.462664,13.2528592 145.841622,13.8991455 145.841622,14.5214953 L145.841622,28.0935083 C146.078471,28.7158581 146.185053,29.1347474 146.161368,29.3501762 Z M140.476991,18.8659757 C139.316431,19.3207698 138.321665,20.0149292 137.492694,20.9484539 C136.876886,21.7144228 136.261079,22.4684236 135.645271,23.210456 C135.147888,23.7131232 134.680111,24.3653936 134.241941,25.1672674 C133.80377,25.9691412 133.584685,26.5615703 133.584685,26.9445548 C133.584685,27.1360471 133.655739,27.2317932 133.797849,27.2317932 C134.295232,27.2317932 135.408422,26.1486652 137.13742,23.9824091 C138.866418,21.8161531 139.979608,20.1106753 140.476991,18.8659757 Z idShape/> path dM164.15063,2.52929342 C164.198,2.76865873 164.109182,3.23542108 163.884175,3.92958047 C163.659168,4.62373986 163.546665,5.01869262 163.546665,5.11443875 L163.546665,28.5243659 C163.546665,29.3142714 163.605877,29.8049703 163.724302,29.9964625 C164.079575,30.6188123 164.186157,31.0377016 164.044048,31.2531304 C163.925624,31.4446226 163.61772,31.5403687 163.120337,31.5403687 C162.575584,31.5403687 161.746612,31.4326543 160.633422,31.2172256 C159.378122,30.9539237 158.714945,30.8222728 158.64389,30.8222728 C158.217562,30.7743998 157.909658,30.4871614 157.720179,29.9605577 C157.696494,29.9126846 157.684651,29.7570972 157.684651,29.4937954 C157.684651,28.5123976 157.814918,27.0522692 158.075452,25.1134102 C157.507015,26.2623637 156.950419,27.4113172 156.405667,28.5602707 C155.624065,29.972526 154.92536,30.6188123 154.309553,30.4991296 C149.643627,29.5416684 147.310664,26.6453482 147.310664,21.810169 C147.310664,19.0574679 148.056738,16.2568938 149.548887,13.4084467 C150.993666,10.6557456 152.580555,8.86050581 154.309553,8.02272724 C154.546402,7.90304458 154.771408,7.84320325 154.984572,7.84320325 C155.576695,7.84320325 156.606988,8.58523571 158.075452,10.0693006 L158.075452,3.10377016 C158.051767,2.91227791 157.945185,2.57118235 157.755706,2.08048347 C157.566227,1.58978459 157.471487,1.22475249 157.471487,0.985387184 C157.471487,0.482720038 157.803076,0.231386464 158.466253,0.231386464 C159.058376,0.231386464 159.911032,0.39894218 161.024223,0.734053611 C161.73477,0.973418919 162.433475,1.20081596 163.120337,1.41624474 C163.712459,1.58380045 164.05589,1.95481668 164.15063,2.52929342 Z M157.96887,11.7927308 C156.642516,12.3911441 155.440507,13.7076533 154.362844,15.7422584 C153.285181,17.7768635 152.746349,19.6678495 152.746349,21.4152162 C152.746349,23.4498213 153.527951,24.56287 155.091155,24.7543623 C155.920126,24.8501084 156.879365,20.5295646 157.96887,11.7927308 Z idShape/> path dM179.191121,23.8567424 C179.404286,24.2157903 178.94243,25.2809659 177.805555,27.0522692 C176.57394,28.9432551 175.36601,30.2238595 174.181764,30.8940824 C174.039655,30.965892 173.826491,31.0017968 173.542272,31.0017968 C172.618561,31.0017968 171.410631,30.7145584 169.918482,30.1400817 C168.331593,29.5656049 167.289457,28.9432551 166.792075,28.2730323 C165.41835,26.4777925 164.731488,23.9883933 164.731488,20.8048347 C164.731488,17.7888318 165.335453,15.1318769 166.543383,12.8339699 C167.846053,10.3206342 169.503996,9.04002979 171.517213,8.99215673 C172.251445,8.9682202 173.139629,9.15971245 174.181764,9.56663347 C175.460749,10.0693006 176.514727,10.7514917 177.343699,11.6132069 C177.556863,11.8286356 177.758185,12.474922 177.947664,13.5520658 C178.184513,14.7010193 178.302938,15.8260363 178.302938,16.9271167 C178.302938,18.5548008 178.042404,19.6798177 177.521336,20.3021675 C175.081791,21.092073 172.594876,21.5348989 170.060591,21.630645 C170.013221,22.803535 170.155331,24.0362663 170.486919,25.328839 C170.818508,26.6214117 171.161939,27.2796663 171.517213,27.3036028 C171.990911,27.3275393 172.559348,26.9325866 173.222526,26.1187445 C173.814648,25.4245851 174.181764,24.8381401 174.323874,24.3594095 C174.489668,23.6413136 174.714675,22.8992811 174.998894,22.1333121 C175.377852,22.0854391 176.123926,22.2769313 177.237117,22.7077889 C178.350307,23.1386464 179.001642,23.5216309 179.191121,23.8567424 Z M172.867252,12.8698747 C172.464609,12.8220017 171.902092,13.468288 171.179703,14.8087337 C170.457313,16.1491794 170.036906,17.4297838 169.918482,18.6505469 C170.984302,18.6026738 171.836959,18.339372 172.476451,17.8606414 C172.85541,17.573403 173.044889,16.3765765 173.044889,14.2701618 C173.044889,13.3845101 172.985677,12.9177478 172.867252,12.8698747 Z idShape/> /g> /g> g idICON transformtranslate(-0, 0)> ellipse idShadow fill#D0E1F7 transformtranslate(32.5427, 49.3775) rotate(-1) translate(-32.5427, -49.3775) cx32.5426918 cy49.3774964 rx27.3182749 ry6.14661185/> path dM29.5309955,11.1464059 C32.0765915,11.1464059 34.2051549,9.3723329 34.7326027,7.00067292 C34.8356627,7.01272357 34.9370591,7.02596848 35.0370251,7.04033047 C38.5819569,7.54962617 41.5293264,8.84329693 41.8266667,8.84329693 C42.0670636,8.84329693 44.6163604,10.6013893 48.3005396,14.3478209 C49.3382501,15.4030659 51.0065148,17.3586888 53.3053336,20.2146895 L47.0827367,26.3791328 C45.8773591,25.2884336 44.9437382,24.4152447 44.2818742,23.7595661 C43.6200101,23.1038875 42.6306253,22.0720423 41.3137198,20.6640305 C40.7915979,24.9672977 40.530537,28.2336307 40.530537,30.4630296 C40.530537,32.6924284 40.7915979,37.134979 41.3137198,43.7906813 L16.6704181,43.7906813 C17.19254,37.134979 17.4536009,32.6924284 17.4536009,30.4630296 C17.4536009,28.2336307 17.19254,24.9672977 16.6704181,20.6640305 C15.3535126,22.0720423 14.3641278,23.1038875 13.7022637,23.7595661 C13.0403996,24.4152447 12.1067788,25.2884336 10.9014012,26.3791328 L4.67880429,20.2146895 C6.97762306,17.3586888 8.64588773,15.4030659 9.68359832,14.3478209 C13.3677774,10.6013893 15.9170743,8.84329693 16.1574712,8.84329693 C16.4548115,8.84329693 19.402181,7.54962617 22.9471128,7.04033047 C23.3817394,6.97788822 23.8434063,6.93656184 24.3105437,6.9109958 C24.8041449,9.3280911 26.9538539,11.1464059 29.5309955,11.1464059 Z idCombined-Shape fill#1871A9 transformtranslate(28.9921, 25.3508) rotate(-19) translate(-28.9921, -25.3508)/> /g> /g> /g>/svg> /div> div classw-full grid grid-cols-1 text-primary pb-20 footer-links gap-10 md:grid-cols-2 lg:grid-cols-4> div classfont-light> p>Op werkdagen open van 8.00 - 16.30./p> p>Je kan ons bereiken via:/p> div classflex flex-col mt-6 footer-links> div classflex gap-5 items-center mb-6> div classflex justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-6 h-6 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z/>/svg> /div> a hreftel:+31 167 560 238 titleNeem contact op via telefoon> +31 167 560 238 /a> /div> div classflex gap-5 items-center mb-6> div classflex justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 512 512 classw-6 h-6 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z/>/svg> /div> a href/cdn-cgi/l/email-protection#bbd8cec8cfd4d6dec9c8dec9cdd2d8defbcfdec3cfd2ded7cfc9dadfde95d5d7 titleNeem contact op> span class__cf_email__ data-cfemail05667076716a686077766077736c66604571607d716c606971776461602b6b69>email protected/span> /a> /div> div classflex gap-5 items-center> div classflex justify-center items-center> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 384 512 classw-6 h-6 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z/>/svg> /div> address classnot-italic> Mosquitostraat 10, 4651ST, Steenbergen, NL /address> /div> /div>/div>div> div classfont-light text-base leading-6> p>div x-datainitComponent() x-initcheckIsMobile() @resize.windowcheckIsMobile() classborder-b-2 py-4 border-container md:border-0 md:py-0> div classflex space-x-1.5 items-center cursor-pointer justify-between md:cursor-default @clickif (isMobile) { isOpen !isOpen } > span classtext-lg font-bold> Voorwaarden en condities /span> span classtransition-transform transform duration-300 ease-in-out md:hidden :class{ rotate-180: isOpen } > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-6 h-6 md:hidden width16 height16> path stroke-linecapround stroke-linejoinround stroke-width2 dM19 9l-7 7-7-7/>/svg> /span> /div> div classleading-8 mt-2 x-showisMobile ? isOpen : true > ul>li>a hrefhttps://textieltrade.nl/company-info>Bedrijfsinformatie/a>/li>li>a href/delivery-costs>Bezorgkosten/a>/li>li>a href/delivery-conditions>Leveringsvoorwaarden/a>/li>li>a href/privacy-policy-cookie-restriction-mode-tt>Privacy- en cookiebeleid/a>/li>/ul> /div>/div>script data-cfasyncfalse src/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js>/script>script defer> function initComponent() { return { isOpen: false, isMobile: false, checkIsMobile: function () { this.isMobile window.matchMedia((max-width: 767px)).matches; }, } }/script>/p> /div>/div>div> div> div classfont-light text-base leading-6> p>div x-datainitComponent() x-initcheckIsMobile() @resize.windowcheckIsMobile() classborder-b-2 py-4 border-container md:border-0 md:py-0> div classflex space-x-1.5 items-center cursor-pointer justify-between md:cursor-default @clickif (isMobile) { isOpen !isOpen } > span classtext-lg font-bold> Mijn Account /span> span classtransition-transform transform duration-300 ease-in-out md:hidden :class{ rotate-180: isOpen } > svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-6 h-6 md:hidden width16 height16> path stroke-linecapround stroke-linejoinround stroke-width2 dM19 9l-7 7-7-7/>/svg> /span> /div> div classleading-8 mt-2 x-showisMobile ? isOpen : true > ul>li>a href/customer/account/>Accountgegevens/a>/li>li>a href/sales/order/history/>Mijn bestellingen/a>/li>/ul> /div>/div>script defer> function initComponent() { return { isOpen: false, isMobile: false, checkIsMobile: function () { this.isMobile window.matchMedia((max-width: 767px)).matches; }, } }/script>/p> /div> /div>/div> div classsubscribe-form> form classform subscribe actionhttps://textieltrade.nl/newsletter/subscriber/new/ methodpost x-datainitNewsletterForm() @submit.preventsubmitForm() idnewsletter-validate-detail> div classmb-4 text-primary> h3 classtext-lg>Blijf op de hoogte/h3> p classfont-light>Ontvang de laatste updates, nieuws en aanbiedingen./p> /div> div classflex flex-wrap flex-col md:flex-row md:justify-start> label fornewsletter-subscribe classsr-only> E-mailadres /label> input nameemail typeemail required idnewsletter-subscribe classform-input inline-flex w-full xs:w-64 md:w-full mb-4 bg-transparent text-primary border-primary placeholder:text-primary focus:bg-white placeholderVoer je e-mailadres in> input nameform_key typehidden value2bo8jyl6Pb8bkBLy /> div classcontrol> input typehidden value nameg-recaptcha-response />/div> button classinline md:inline-flex shrink-0 xl:mt-0 btn btn-primary> Inschrijven /button> /div> div> template x-ifdisplayErrorMessage> p classflex items-center text-red> span classinline-block w-8 h-8 mr-3> svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z/>/svg> /span> template x-forerrorMessage in errorMessages> span x-htmlerrorMessage>/span> /template> /p> /template> /div> /form> script defer> function initNewsletterForm() { return { errors: 0, hasCaptchaToken: 0, displayErrorMessage: false, errorMessages: , setErrorMessages(messages) { this.errorMessages messages this.displayErrorMessage this.errorMessages.length }, submitForm() { // Do not rename $form, the variable is expected to be declared in the recaptcha output const $form document.querySelector(#newsletter-validate-detail); if (!this.hasCaptchaToken) { this.errors 1; const executeGreCaptcha () > { grecaptcha.ready(() > { grecaptcha.execute( 6LcsbqUnAAAAAKokvWRCOxKMniUSCUGZNK4yfvtq, {action: submit} ).then((token) > { if (token && token.length > 0) { $formg\u002Drecaptcha\u002Dresponse.value token; this.errors 0; this.hasCaptchaToken 1; (this.submitForm || $form.submit).call(this); } else { this.errors 1; const error ReCaptcha\u0020validation\u0020failed,\u0020please\u0020try\u0020again; if (this.setErrorMessages) { this.setErrorMessages(error) this.displayErrorMessage true; } else { window.dispatchMessages && window.dispatchMessages({type: error, text: error}, 5000); } } }).catch(exception > { console.error(exception || `An unknown error occurred during ReCaptcha validation. Are the tokens and the domain correctly set up in the Google console?`) }); }) } if (window.grecaptcha) { executeGreCaptcha(); } else { const recaptchaUrl https://www.google.com/recaptcha/api.js?render6LcsbqUnAAAAAKokvWRCOxKMniUSCUGZNK4yfvtq; const script document.createElement(script); script.setAttribute(type, text/javascript); script.setAttribute(src, recaptchaUrl); document.head.appendChild(script); script.addEventListener(load, executeGreCaptcha, false); } } if (this.errors 0) { $form.submit(); } } } } /script>/div> /div> div classtext-primary grid grid-cols-1 lg:grid-cols-3> div classfooter-socials flex items-center justify-center gap-2 font-light mb-2 lg:mb-0 lg:justify-start> p>Volg ons op/p> div classsocial flex> div classsocial__list flex items-center gap-3> a classsocial__item social__item--facebook target_blank hrefhttps://www.facebook.com/textieltradebv/ titleFacebook Bekijken > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 320 512 classw-6 h-6 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z/>/svg> /a> a classsocial__item social__item--x target_blank hrefhttps://twitter.com/TextielTrade titleX Bekijken > svg xmlnshttp://www.w3.org/2000/svg xml:spacepreserve styleenable-background:new 0 0 1668.56 1221.19 viewBox0 0 1668.56 1221.19 classw-10 h-10 fill-primary width12 height12> path dm336.33 142.251 386.39 516.64-388.83 420.05h87.51l340.42-367.76 275.05 367.76h297.8l-408.13-545.7 361.92-390.99h-87.51l-313.51 338.7-253.31-338.7h-297.8zm128.69 64.46h136.81l604.13 807.76h-136.81l-604.13-807.76z/>/svg> /a> a classsocial__item social__item--instagram target_blank hrefhttps://www.instagram.com/textieltrade/ titleInstagram Bekijken > svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classw-6 h-6 fill-primary width12 height12>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z/>/svg> /a> /div> /div> /div> div classtext-center> small classtext-base font-light text-primary> © 2024 Disney Groothandel Textiel Trade. All rights reserved. /small> /div> div>!-- keep empty -->/div> /div> /div>/div>/div>/footer>script data-ommittrue defer> document.addEventListener(DOMContentLoaded, () > { let bind () > { Object.entries( { add_to_cart: event > { AEC.add(event.currentTarget, dataLayer); }, remove_from_cart:event > { AEC.remove(event.currentTarget, dataLayer); }, select_item:event > { AEC.click(event.currentTarget, dataLayer); }, add_to_wishlist:event > { AEC.wishlist(event.currentTarget, dataLayer); }, add_to_compare:event > { AEC.compare(event.currentTarget, dataLayer); }, add_to_cart_swatch:event > { AEC.addSwatch(event.currentTarget, dataLayer); } }).forEach((event, callback) > { ...document.querySelectorAll(data-event:not(data-bound)).filter(element > { return element.dataset.event event; }).forEach(element > { element.addEventListener(click, callback); element.dataset.bound true; }); }); }; bind(); if(PerformanceObserver in window) { const observer new PerformanceObserver((items) > { items.getEntries().filter(({ initiatorType }) > initiatorType xmlhttprequest).forEach((entry) > { bind(); }); }); observer.observe( { entryTypes: resource }); } }); /script>script data-ommittrue defer> document.addEventListener(DOMContentLoaded, () > { var PromotionTrack ((dataLayer) > { return { apply: () > { var promotions , position 0; document.querySelectorAll(data-promotion).forEach(promotion > { let entity { promotion_id: promotion.dataset.promotionId, promotion_name: promotion.dataset.promotionName, creative_name: promotion.dataset.promotionCreative, creative_slot: promotion.dataset.promotionPosition }; AEC.EventDispatcher.trigger(ec.cookie.promotion.entity, entity, { element: promotion }); promotions.push(entity); promotion.addEventListener(click, (event) > { var data { event: select_promotion, ecommerce: { items: { promotion_id: event.target.dataset.promotionId, promotion_name: event.target.dataset.promotionName, creative_name: event.target.dataset.promotionCreative, creative_slot: event.target.dataset.promotionPosition } } }; AEC.Cookie.promotionClick(data, promotion).push(dataLayer); /** * Save persistent data */ AEC.Persist.push(AEC.Persist.CONST_KEY_PROMOTION, { promotion: data.ecommerce.items0 }); }); }); if (promotions.length) { AEC.Cookie.promotion( { event:view_promotion, ecommerce: { items: promotions } }).push(dataLayer); } return this; } } })(dataLayer).apply(); });/script>script data-ommittrue defer> document.addEventListener(DOMContentLoaded, () > { (() > { let map {}, trace {}; document.querySelectorAll(data-widget).forEach((element) > { let widget element.dataset.widget; let entity { item_id: element.dataset.id, item_name: element.dataset.name, item_list_name: element.dataset.list, item_list_id: element.dataset.list, item_brand: element.dataset.brand, category: element.dataset.category, price: parseFloat(element.dataset.price), index: parseFloat(element.dataset.position), currency: AEC.GA4.currency, quantity: 1, google_business_vertical: retail }; Object.assign(entity, entity, AEC.GA4.augmentCategories(entity)); let attributes element.dataset.attributes; if (attributes) { Object.entries(JSON.parse(attributes)).forEach((key, value) > { entitykey value; }); } if (!map.hasOwnProperty(widget)) { mapwidget ; mapwidget.trace {}; mapwidget.entry ; mapwidget.item_list_id ; mapwidget.item_list_name ; } if (!mapwidget.trace.hasOwnProperty(element.dataset.id)) { mapwidget.traceelement.dataset.id true; mapwidget.entry.push(entity); mapwidget.item_list_id entity.item_list_id; mapwidget.item_list_name entity.item_list_name; } }); Object.entries(map).forEach((key, value) > { if (value.entry.length) { let data { event: view_item_list, ecommerce: { item_list_id: value.item_list_id, item_list_name: value.item_list_name, items: value.entry } }; if (undefined ! typeof dataLayer) { (function(callback) { if (AEC.Const.COOKIE_DIRECTIVE) { AEC.CookieConsent.queue(callback).process(); } else { callback.apply(window,); } }) ( (function(dataLayer, data) { return function() { AEC.EventDispatcher.trigger(ec.widget.view.data, data); dataLayer.push(data); } })(dataLayer, data) ); } } }); })(); }); /script>script data-ommittrue defer> if (typeof dataLayer ! undefined) { AEC.Request.get(AEC.url(datalayer/index/events), {}, response > { Object.entries(response.events).forEach((key, event) > { dataLayer.push(event); }); }); AEC.EventDispatcher.on(ec.facebook.loaded, () > { }); if (window.google_tag_params) { (function(callback) { if (AEC.Const.COOKIE_DIRECTIVE) { if (!AEC.Const.COOKIE_DIRECTIVE_CONSENT_GRANTED) { AEC.CookieConsent.queue(callback); } else { callback.apply(window,); } } else { callback.apply(window,); } }) ( (function(dataLayer) { return () > { AEC.Cookie.remarketing({ event:fireRemarketingTag, google_tag_params: window.google_tag_params }).push(dataLayer); } })(dataLayer) ); } } else { console.log(dataLayer is not intialized. Check if GTM is installed properly); } /script> !-- Start of Clerk.io E-commerce Personalisation tool - www.clerk.io --> script defer> (function(w,d){ var ed.createElement(script);e.typetext/javascript;e.asynctrue; e.src(d.location.protocolhttps:?https:http)+://custom.clerk.io/nl.js; var sd.getElementsByTagName(script)0;s.parentNode.insertBefore(e,s); w.__clerk_qw.__clerk_q||;w.Clerkw.Clerk||function(){w.__clerk_q.push(arguments)}; })(window,document); Clerk(config, { key: bqkCc9pdei4RNOAJsSKH6uaUxelyGAs1, collect_email: true, globals: { uenc: aHR0cDovL3RleHRpZWx0cmFkZS5ubC8, formkey: 2bo8jyl6Pb8bkBLy, currency_symbol: €, currency_iso: EUR }, formatters: { convert_currency: function(price) { const ex_rate parseFloat(1) ?? null; if(ex_rate){ return price * ex_rate; } else { return price; } }, convert_currency_from_iso: function(price, currency_iso){ const ex_rates JSON.parse({AZN:false,AZM:false,AFN:false,ALL:false,DZD:false,AOA:false,ARS:false,AMD:false,AWG:false,AUD:false,BSD:false,BHD:false,BDT:false,BBD:false,BYN:false,BZD:false,BMD:false,BTN:false,BOB:false,BAM:false,BWP:false,BRL:false,GBP:0.879400000000,BND:false,BGN:false,BUK:false,BIF:false,KHR:false,CAD:false,CVE:false,CZK:false,KYD:false,CLP:false,CNY:false,COP:false,KMF:false,CDF:false,CRC:false,HRK:false,CUP:false,DKK:false,DJF:false,DOP:false,XCD:false,EGP:false,SVC:false,GQE:false,ERN:false,EEK:false,ETB:false,EUR:1,FKP:false,FJD:false,GMD:false,GEK:false,GEL:false,GHS:false,GIP:false,GTQ:false,GNF:false,GYD:false,HTG:false,HNL:false,HKD:false,HUF:false,ISK:false,INR:false,IDR:false,IRR:false,IQD:false,ILS:false,JMD:false,JPY:false,JOD:false,KZT:false,KES:false,KWD:false,KGS:false,LAK:false,LVL:false,LBP:false,LSL:false,LRD:false,LYD:false,LTL:false,MOP:false,MKD:false,MGA:false,MWK:false,MYR:false,MVR:false,LSM:false,MRO:false,MUR:false,MXN:false,MDL:false,MNT:false,MAD:false,MZN:false,MMK:false,NAD:false,NPR:false,ANG:false,TRL:false,TRY:false,NZD:false,NIC:false,NGN:false,KPW:false,NOK:false,OMR:false,PKR:false,PAB:false,PGK:false,PYG:false,PEN:false,PHP:false,PLN:4.855100000000,QAR:false,RHD:false,RON:false,ROL:false,RUB:false,RWF:false,SHP:false,STD:false,SAR:false,RSD:false,SCR:false,SLL:false,SGD:false,SKK:false,SBD:false,SOS:false,ZAR:false,KRW:false,LKR:false,SDG:false,SRD:false,SZL:false,SEK:false,CHF:false,SYP:false,TWD:false,TJS:false,TZS:false,THB:false,TOP:false,TTD:false,TND:false,TMM:false,USD:0.980500000000,UGX:false,UAH:false,AED:false,UYU:false,UZS:false,VUV:false,VEB:false,VEF:false,VND:false,CHE:false,CHW:false,XOF:false,XPF:false,WST:false,YER:false,ZMK:false,ZWD:false}); if(ex_ratescurrency_iso ! undefined){ return price * ex_ratescurrency_iso; } else { return price; } } } }); var collectbaskets true; if(collectbaskets){ let open XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open function() { this.addEventListener(load, function(){ if( this.responseURL.includes(cart)){ if (this.readyState 4 && this.status 200) { var response JSON.parse(this.responseText); var clerk_productids ; if(response && response.hasOwnProperty(cart) && response.cart.hasOwnProperty(items) ){ for (var i 0, len response.cart.items.length; i len; i++) { clerk_productids.push(response.cart.itemsi.item_id); } } clerk_productids clerk_productids.map(Number); var clerk_last_productids ; if( localStorage.getItem(clerk_productids) ! null ){ clerk_last_productids localStorage.getItem(clerk_productids).split(,); clerk_last_productids clerk_last_productids.map(Number); } clerk_productids clerk_productids.sort((a, b) > a - b); clerk_last_productids clerk_last_productids.sort((a, b) > a - b); if(JSON.stringify(clerk_productids) JSON.stringify(clerk_last_productids)){ // if equal - do nothing }else{ if(JSON.stringify(clerk_productids) 0 ){ Clerk(cart, set, ); }else{ Clerk(cart, set, clerk_productids); } } localStorage.setItem(clerk_productids, clerk_productids); } } }, false); open.apply(this, arguments); }; } /script> !-- End of Clerk.io E-commerce Personalisation tool - www.clerk.io --> div x-datainitLivesearch() x-bindeventListeners> div classclerk bg-white rounded-x mt-2 border shadow border-tertiary-700 max-h-75vh overflow-auto max-768px:!left-0 max-768px:!w-full max-768px:rounded-t-none data-apisearch/predictive data-labelsLive Search data-limit6 data-template#autocomplete data-instant-search-suggestions5 data-instant-search-products5 data-instant-search-categories5 data-instant-search-pages0 data-instant-search-positioningleft data-instant-search#search,#mobile_search idautocomplete data-instant-search-pages-typecms page > div classproduct-search-result-list pb-4 relative> div classproduct-search-result-list__overlay hidden bg-white/60 absolute top-0 left-0 w-full h-full>/div> {% if suggestions.length > 0 %} div classfont-bold mt-4 px-4>Suggesties/div> ul> {% for suggestion in suggestions %} li classsuggestion clerk-instant-search-key-selectable> a href/catalogsearch/result?q{{ suggestion }} title{{ suggestion }} classpy-1 px-4 block hover:bg-tertiary-100 > {{ suggestion }} /a> /li> {% endfor %} /ul> {% endif %} {% if categories.length ! 0 %} div classfont-bold mt-4 px-4>Categorieën/div> ul> {% for category in categories %} li classcategory clerk-instant-search-key-selectable> a href{{ category.url }} title{{ category.name }} classpy-1 px-4 block hover:bg-tertiary-100 > {{ category.name }} /a> /li> {% endfor %} /ul> {% endif %} {% if products.length ! 0 %} div classfont-bold mt-4 px-4>Producten/div> ul> {% for product in products %} li classproduct clerk-instant-search-key-selectable> a href{{ product.url }} title{{ product.name }} classgrid grid-cols-5rem_1fr gap-3 py-2 px-4 hover:bg-tertiary-100 > img src{{ product.image }} alt{{ product.name }} classw-20 h-20 rounded-md border border-tertiary-700 width80 height80 /> span classflex flex-col> span classproduct-name block max-w-md text-balance font-bold line-clamp-2 overflow-hidden hover:underline>{{ product.name }}/span> /span> /a> /li> {% endfor %} /ul> {% endif %} {% if pages.length ! 0 %} div classfont-bold mt-4 px-4>Paginas/div> ul> {% for page in pages %} li classpage clerk-instant-search-key-selectable> a href{{ page.url }} title{{ page.title }} classpy-1 px-4 block hover:bg-tertiary-100 > p classpage-title>{{ page.title }}/p> /a> /li> {% endfor %} /ul> {% endif %} /div> /div>/div>script defer> function initLivesearch() { return { autocompleteIsActive: false, loading: false, init() { Clerk(on, live_search_update, (content, data) > { (data.length > 2) ? this.enableOverlay() : this.disableOverlay(); this.setLoading(); }); Clerk(on, response, (content, data) > { this.setLoading(); }); }, setLoading(){ this.loading !this.loading; if(this.loading){ document.querySelector(.product-search-result-list__overlay).classList.add(!block); } else { document.querySelector(.product-search-result-list__overlay).classList.remove(!block); } }, enableOverlay() { this.autocompleteIsActive true this.$dispatch(toggle-overlay, true) window.dispatchEvent(new CustomEvent(toggle-overlay, {detail: {autocompleteIsActive: true}})) document.querySelector(body).classList.add(overflow-y-hidden) }, disableOverlay() { this.autocompleteIsActive false this.$dispatch(toggle-overlay, false) window.dispatchEvent(new CustomEvent(toggle-overlay, {detail: {autocompleteIsActive: false}})) document.querySelector(body).classList.remove(overflow-y-hidden) }, eventListeners: { @disable-overlay.window() { this.disableOverlay() } } } }/script> script defer> use strict; (function(chatWidget) { chatWidget.waitForChatButton (selector) > { return new Promise(resolve > { if (document.querySelector(selector)) { return resolve(document.querySelector(selector)); } const observer new MutationObserver(mutations > { if (document.querySelector(selector)) { resolve(document.querySelector(selector)); observer.disconnect(); } }); observer.observe(document.body, { childList: true, subtree: true }); }); } }( window.chatWidget window.chatWidget || {} )); /script>script defer> document.addEventListener(DOMContentLoaded, () > { const taggingCookieName _taggingmk; if (!hyva.getCookie(taggingCookieName)) { const uniqueId Date.now().toString() + Math.random().toString(36).substring(2), duration 365 * 86400; hyva.setCookie( taggingCookieName, uniqueId, duration, true ) } })/script> script defer> (events > { const loadInstantPage () > { events.forEach(type > window.removeEventListener(type, loadInstantPage)) const script document.createElement(script); script.type text/javascript; script.src https://textieltrade.nl/static/version1729148135/frontend/TextielTrade/default/nl_NL/Cream_InstantPage/js/instant.min.js; script.type module; document.head.appendChild(script); }; events.forEach(type > window.addEventListener(type, loadInstantPage, {once: true, passive: true})) })(touchstart, mouseover, wheel, scroll, keydown) /script>script defer> (() > { function src_default(Alpine) { Alpine.directive(intersect, (el, { value, expression, modifiers }, { evaluateLater, cleanup }) > { let evaluate evaluateLater(expression); let options { rootMargin: getRootMargin(modifiers), threshold: getThreshhold(modifiers) }; let observer new IntersectionObserver((entries) > { entries.forEach((entry) > { if (entry.isIntersecting (value leave)) return; evaluate(); modifiers.includes(once) && observer.disconnect(); }); }, options); observer.observe(el); cleanup(() > { observer.disconnect(); }); }); } function getThreshhold(modifiers) { if (modifiers.includes(full)) return 0.99; if (modifiers.includes(half)) return 0.5; if (!modifiers.includes(threshold)) return 0; let threshold modifiersmodifiers.indexOf(threshold) + 1; if (threshold 100) return 1; if (threshold 0) return 0; return Number(`.${threshold}`); } function getLengthValue(rawValue) { let match rawValue.match(/^(-?0-9+)(px|%)?$/); return match ? match1 + (match2 || px) : void 0; } function getRootMargin(modifiers) { const key margin; const fallback 0px 0px 0px 0px; const index modifiers.indexOf(key); if (index -1) return fallback; let values ; for (let i 1; i 5; i++) { values.push(getLengthValue(modifiersindex + i || )); } values values.filter((v) > v ! void 0); return values.length ? values.join( ).trim() : fallback; } document.addEventListener(alpine:init, () > { window.Alpine.plugin(src_default); }); })();/script>script defer> (()>{function g(n){n.directive(collapse,e),e.inline(t,{modifiers:i})>{i.includes(min)&&(t._x_doShow()>{},t._x_doHide()>{})};function e(t,{modifiers:i}){let rl(i,duration,250)/1e3,ul(i,min,0),h!i.includes(min);t._x_isShown||(t.style.height`${u}px`),!t._x_isShown&&h&&(t.hidden!0),t._x_isShown||(t.style.overflowhidden);let c(d,s)>{let on.setStyles(d,s);return s.height?()>{}:o},f{transitionProperty:height,transitionDuration:`${r}s`,transitionTimingFunction:cubic-bezier(0.4, 0.0, 0.2, 1)};t._x_transition{in(d()>{},s()>{}){h&&(t.hidden!1),h&&(t.style.displaynull);let ot.getBoundingClientRect().height;t.style.heightauto;let at.getBoundingClientRect().height;oa&&(ou),n.transition(t,n.setStyles,{during:f,start:{height:o+px},end:{height:a+px}},()>t._x_isShown!0,()>{t.getBoundingClientRect().heighta&&(t.style.overflownull)})},out(d()>{},s()>{}){let ot.getBoundingClientRect().height;n.transition(t,c,{during:f,start:{height:o+px},end:{height:u+px}},()>t.style.overflowhidden,()>{t._x_isShown!1,t.style.height`${u}px`&&h&&(t.style.displaynone,t.hidden!0)})}}}}function l(n,e,t){if(n.indexOf(e)-1)return t;let inn.indexOf(e)+1;if(!i)return t;if(eduration){let ri.match(/(0-9+)ms/);if(r)return r1}if(emin){let ri.match(/(0-9+)px/);if(r)return r1}return i}document.addEventListener(alpine:init,()>{window.Alpine.plugin(g)});})();/script>script defer> (()>{var Kinput,select,textarea,ahref,button,tabindex:not(slot),audiocontrols,videocontrols,contenteditable:not(contenteditablefalse),details>summary:first-of-type,details,IK.join(,),Vtypeof Element>u,NV?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,G!V&&Element.prototype.getRootNode?function(i){return i.getRootNode()}:function(i){return i.ownerDocument},_function(e,t,a){var nArray.prototype.slice.apply(e.querySelectorAll(I));return t&&N.call(e,I)&&n.unshift(e),nn.filter(a),n},$function i(e,t,a){for(var n,rArray.from(e);r.length;){var sr.shift();if(s.tagNameSLOT){var ls.assignedElements(),ml.length?l:s.children,hi(m,!0,a);a.flatten?n.push.apply(n,h):n.push({scope:s,candidates:h})}else{var vN.call(s,I);v&&a.filter(s)&&(t||!e.includes(s))&&n.push(s);var ps.shadowRoot||typeof a.getShadowRootfunction&&a.getShadowRoot(s),y!a.shadowRootFilter||a.shadowRootFilter(s);if(p&&y){var Ti(p!0?s.children:p.children,!0,a);a.flatten?n.push.apply(n,T):n.push({scope:s,candidates:T})}else r.unshift.apply(r,s.children)}}return n},Yfunction(e,t){return e.tabIndex0&&(t||/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||e.isContentEditable)&&isNaN(parseInt(e.getAttribute(tabindex),10))?0:e.tabIndex},sefunction(e,t){return e.tabIndext.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},Zfunction(e){return e.tagNameINPUT},cefunction(e){return Z(e)&&e.typehidden},lefunction(e){var te.tagNameDETAILS&&Array.prototype.slice.apply(e.children).some(function(a){return a.tagNameSUMMARY});return t},fefunction(e,t){for(var a0;ae.length;a++)if(ea.checked&&ea.formt)return ea},defunction(e){if(!e.name)return!0;var te.form||G(e),afunction(l){return t.querySelectorAll(inputtyperadioname+l+)},n;if(typeof windowu&&typeof window.CSSu&&typeof window.CSS.escapefunction)na(window.CSS.escape(e.name));else try{na(e.name)}catch(s){return console.error(Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s,s.message),!1}var rfe(n,e.form);return!r||re},befunction(e){return Z(e)&&e.typeradio},vefunction(e){return be(e)&&!de(e)},Wfunction(e){var te.getBoundingClientRect(),at.width,nt.height;return a0&&n0},hefunction(e,t){var at.displayCheck,nt.getShadowRoot;if(getComputedStyle(e).visibilityhidden)return!0;var rN.call(e,details>summary:first-of-type),sr?e.parentElement:e;if(N.call(s,details:not(open) *))return!0;var lG(e).host,ml?.ownerDocument.contains(l)||e.ownerDocument.contains(e);if(!a||afull){if(typeof nfunction){for(var he;e;){var ve.parentElement,pG(e);if(v&&!v.shadowRoot&&n(v)!0)return W(e);e.assignedSlot?ee.assignedSlot:!v&&p!e.ownerDocument?ep.host:ev}eh}if(m)return!e.getClientRects().length}else if(anon-zero-area)return W(e);return!1},pefunction(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var te.parentElement;t;){if(t.tagNameFIELDSET&&t.disabled){for(var a0;at.children.length;a++){var nt.children.item(a);if(n.tagNameLEGEND)return N.call(t,fieldsetdisabled *)?!0:!n.contains(e)}return!0}tt.parentElement}return!1},xfunction(e,t){return!(t.disabled||ce(t)||he(t,e)||le(t)||pe(t))},Mfunction(e,t){return!(ve(t)||Y(t)0||!x(e,t))},gefunction(e){var tparseInt(e.getAttribute(tabindex),10);return!!(isNaN(t)||t>0)},mefunction i(e){var t,a;return e.forEach(function(n,r){var s!!n.scope,ls?n.scope:n,mY(l,s),hs?i(n.candidates):l;m0?s?t.push.apply(t,h):t.push(l):a.push({documentOrder:r,tabIndex:m,item:n,isScope:s,content:h})}),a.sort(se).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},).concat(t)},zfunction(e,t){tt||{};var a;return t.getShadowRoot?a$(e,t.includeContainer,{filter:M.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:ge}):a_(e,t.includeContainer,M.bind(null,t)),me(a)},Lfunction(e,t){tt||{};var a;return t.getShadowRoot?a$(e,t.includeContainer,{filter:x.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):a_(e,t.includeContainer,x.bind(null,t)),a},Afunction(e,t){if(tt||{},!e)throw new Error(No node provided);return N.call(e,I)!1?!1:M(t,e)},yeK.concat(iframe).join(,),Dfunction(e,t){if(tt||{},!e)throw new Error(No node provided);return N.call(e,ye)!1?!1:x(t,e)};function Q(i,e){var tObject.keys(i);if(Object.getOwnPropertySymbols){var aObject.getOwnPropertySymbols(i);e&&(aa.filter(function(n){return Object.getOwnPropertyDescriptor(i,n).enumerable})),t.push.apply(t,a)}return t}function X(i){for(var e1;earguments.length;e++){var targumentse!null?argumentse:{};e%2?Q(Object(t),!0).forEach(function(a){we(i,a,ta)}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Q(Object(t)).forEach(function(a){Object.defineProperty(i,a,Object.getOwnPropertyDescriptor(t,a))})}return i}function we(i,e,t){return e in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):iet,i}var Jfunction(){var i;return{activateTrap:function(t){if(i.length>0){var aii.length-1;a!t&&a.pause()}var ni.indexOf(t);n-1||i.splice(n,1),i.push(t)},deactivateTrap:function(t){var ai.indexOf(t);a!-1&&i.splice(a,1),i.length>0&&ii.length-1.unpause()}}}(),Tefunction(e){return e.tagName&&e.tagName.toLowerCase()input&&typeof e.selectfunction},Fefunction(e){return e.keyEscape||e.keyEsc||e.keyCode27},Sefunction(e){return e.keyTab||e.keyCode9},eefunction(e){return setTimeout(e,0)},tefunction(e,t){var a-1;return e.every(function(n,r){return t(n)?(ar,!1):!0}),a},Ofunction(e){for(var targuments.length,anew Array(t>1?t-1:0),n1;nt;n++)an-1argumentsn;return typeof efunction?e.apply(void 0,a):e},Pfunction(e){return e.target.shadowRoot&&typeof e.composedPathfunction?e.composedPath()0:e.target},refunction(e,t){var at?.document||document,nX({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0},t),r{containers:,containerGroups:,tabbableGroups:,nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,delayInitialFocusTimer:void 0},s,lfunction(o,u,c){return o&&ou!void 0?ou:nc||u},mfunction(o){return r.containerGroups.findIndex(function(u){var cu.container,bu.tabbableNodes;return c.contains(o)||b.find(function(f){return fo})})},hfunction(o){var uno;if(typeof ufunction){for(var carguments.length,bnew Array(c>1?c-1:0),f1;fc;f++)bf-1argumentsf;uu.apply(void 0,b)}if(u!0&&(uvoid 0),!u){if(uvoid 0||u!1)return u;throw new Error(`.concat(o,` was specified but was not a node, or did not return a node))}var gu;if(typeof ustring&&(ga.querySelector(u),!g))throw new Error(`.concat(o,` as selector refers to no known node));return g},vfunction(){var oh(initialFocus);if(o!1)return!1;if(ovoid 0)if(m(a.activeElement)>0)oa.activeElement;else{var ur.tabbableGroups0,cu&&u.firstTabbableNode;oc||h(fallbackFocus)}if(!o)throw new Error(Your focus-trap needs to have at least one focusable element);return o},pfunction(){if(r.containerGroupsr.containers.map(function(o){var uz(o,n.tabbableOptions),cL(o,n.tabbableOptions);return{container:o,tabbableNodes:u,focusableNodes:c,firstTabbableNode:u.length>0?u0:null,lastTabbableNode:u.length>0?uu.length-1:null,nextTabbableNode:function(f){var garguments.length>1&&arguments1!void 0?arguments1:!0,wc.findIndex(function(S){return Sf});if(!(w0))return g?c.slice(w+1).find(function(S){return A(S,n.tabbableOptions)}):c.slice(0,w).reverse().find(function(S){return A(S,n.tabbableOptions)})}}}),r.tabbableGroupsr.containerGroups.filter(function(o){return o.tabbableNodes.length>0}),r.tabbableGroups.length0&&!h(fallbackFocus))throw new Error(Your focus-trap must have at least one container with at least one tabbable node in it at all times)},yfunction d(o){if(o!!1&&o!a.activeElement){if(!o||!o.focus){d(v());return}o.focus({preventScroll:!!n.preventScroll}),r.mostRecentlyFocusedNodeo,Te(o)&&o.select()}},Tfunction(o){var uh(setReturnFocus,o);return u||(u!1?!1:o)},Ffunction(o){var uP(o);if(!(m(u)>0)){if(O(n.clickOutsideDeactivates,o)){s.deactivate({returnFocus:n.returnFocusOnDeactivate&&!D(u,n.tabbableOptions)});return}O(n.allowOutsideClick,o)||o.preventDefault()}},Rfunction(o){var uP(o),cm(u)>0;c||u instanceof Document?c&&(r.mostRecentlyFocusedNodeu):(o.stopImmediatePropagation(),y(r.mostRecentlyFocusedNode||v()))},kfunction(o){var uP(o);p();var cnull;if(r.tabbableGroups.length>0){var bm(u),fb>0?r.containerGroupsb:void 0;if(b0)o.shiftKey?cr.tabbableGroupsr.tabbableGroups.length-1.lastTabbableNode:cr.tabbableGroups0.firstTabbableNode;else if(o.shiftKey){var gte(r.tabbableGroups,function(j){var Bj.firstTabbableNode;return uB});if(g0&&(f.containeru||D(u,n.tabbableOptions)&&!A(u,n.tabbableOptions)&&!f.nextTabbableNode(u,!1))&&(gb),g>0){var wg0?r.tabbableGroups.length-1:g-1,Sr.tabbableGroupsw;cS.lastTabbableNode}}else{var Cte(r.tabbableGroups,function(j){var Bj.lastTabbableNode;return uB});if(C0&&(f.containeru||D(u,n.tabbableOptions)&&!A(u,n.tabbableOptions)&&!f.nextTabbableNode(u))&&(Cb),C>0){var oeCr.tabbableGroups.length-1?0:C+1,uer.tabbableGroupsoe;cue.firstTabbableNode}}}else ch(fallbackFocus);c&&(o.preventDefault(),y(c))},Efunction(o){if(Fe(o)&&O(n.escapeDeactivates,o)!!1){o.preventDefault(),s.deactivate();return}if(Se(o)){k(o);return}},qfunction(o){var uP(o);m(u)>0||O(n.clickOutsideDeactivates,o)||O(n.allowOutsideClick,o)||(o.preventDefault(),o.stopImmediatePropagation())},Hfunction(){if(r.active)return J.activateTrap(s),r.delayInitialFocusTimern.delayInitialFocus?ee(function(){y(v())}):y(v()),a.addEventListener(focusin,R,!0),a.addEventListener(mousedown,F,{capture:!0,passive:!1}),a.addEventListener(touchstart,F,{capture:!0,passive:!1}),a.addEventListener(click,q,{capture:!0,passive:!1}),a.addEventListener(keydown,E,{capture:!0,passive:!1}),s},Ufunction(){if(r.active)return a.removeEventListener(focusin,R,!0),a.removeEventListener(mousedown,F,!0),a.removeEventListener(touchstart,F,!0),a.removeEventListener(click,q,!0),a.removeEventListener(keydown,E,!0),s};return s{get active(){return r.active},get paused(){return r.paused},activate:function(o){if(r.active)return this;var ul(o,onActivate),cl(o,onPostActivate),bl(o,checkCanFocusTrap);b||p(),r.active!0,r.paused!1,r.nodeFocusedBeforeActivationa.activeElement,u&&u();var ffunction(){b&&p(),H(),c&&c()};return b?(b(r.containers.concat()).then(f,f),this):(f(),this)},deactivate:function(o){if(!r.active)return this;var uX({onDeactivate:n.onDeactivate,onPostDeactivate:n.onPostDeactivate,checkCanReturnFocus:n.checkCanReturnFocus},o);clearTimeout(r.delayInitialFocusTimer),r.delayInitialFocusTimervoid 0,U(),r.active!1,r.paused!1,J.deactivateTrap(s);var cl(u,onDeactivate),bl(u,onPostDeactivate),fl(u,checkCanReturnFocus),gl(u,returnFocus,returnFocusOnDeactivate);c&&c();var wfunction(){ee(function(){g&&y(T(r.nodeFocusedBeforeActivation)),b&&b()})};return g&&f?(f(T(r.nodeFocusedBeforeActivation)).then(w,w),this):(w(),this)},pause:function(){return r.paused||!r.active?this:(r.paused!0,U(),this)},unpause:function(){return!r.paused||!r.active?this:(r.paused!1,p(),H(),this)},updateContainerElements:function(o){var u.concat(o).filter(Boolean);return r.containersu.map(function(c){return typeof cstring?a.querySelector(c):c}),r.active&&p(),this}},s.updateContainerElements(e),s};function ne(i){let e,t;window.addEventListener(focusin,()>{et,tdocument.activeElement}),i.magic(focus,a>{let na;return{__noscroll:!1,__wrapAround:!1,within(r){return nr,this},withoutScrolling(){return this.__noscroll!0,this},noscroll(){return this.__noscroll!0,this},withWrapAround(){return this.__wrapAround!0,this},wrap(){return this.withWrapAround()},focusable(r){return D(r)},previouslyFocused(){return e},lastFocused(){return e},focused(){return t},focusables(){return Array.isArray(n)?n:L(n,{displayCheck:none})},all(){return this.focusables()},isFirst(r){let sthis.all();return s0&&s0.isSameNode(r)},isLast(r){let sthis.all();return s.length&&s.slice(-1)0.isSameNode(r)},getFirst(){return this.all()0},getLast(){return this.all().slice(-1)0},getNext(){let rthis.all(),sdocument.activeElement;if(r.indexOf(s)!-1)return this.__wrapAround&&r.indexOf(s)r.length-1?r0:rr.indexOf(s)+1},getPrevious(){let rthis.all(),sdocument.activeElement;if(r.indexOf(s)!-1)return this.__wrapAround&&r.indexOf(s)0?r.slice(-1)0:rr.indexOf(s)-1},first(){this.focus(this.getFirst())},last(){this.focus(this.getLast())},next(){this.focus(this.getNext())},previous(){this.focus(this.getPrevious())},prev(){return this.previous()},focus(r){r&&setTimeout(()>{r.hasAttribute(tabindex)||r.setAttribute(tabindex,0),r.focus({preventScroll:this._noscroll})})}}}),i.directive(trap,i.skipDuringClone((a,{expression:n,modifiers:r},{effect:s,evaluateLater:l,cleanup:m})>{let hl(n),v!1,p{escapeDeactivates:!1,allowOutsideClick:!0,fallbackFocus:()>a},ya.querySelector(autofocus);y&&(p.initialFocusy);let Tre(a,p),F()>{},R()>{},k()>{F(),F()>{},R(),R()>{},T.deactivate({returnFocus:!r.includes(noreturn)})};s(()>h(E>{v!E&&(E&&!v&&setTimeout(()>{r.includes(inert)&&(Fae(a)),r.includes(noscroll)&&(REe()),T.activate()}),!E&&v&&k(),v!!E)})),m(k)},(a,{expression:n,modifiers:r},{evaluate:s})>{r.includes(inert)&&s(n)&&ae(a)}))}function ae(i){let e;return ie(i,t>{let at.hasAttribute(aria-hidden);t.setAttribute(aria-hidden,true),e.push(()>a||t.removeAttribute(aria-hidden))}),()>{for(;e.length;)e.pop()()}}function ie(i,e){i.isSameNode(document.body)||!i.parentNode||Array.from(i.parentNode.children).forEach(t>{t.isSameNode(i)?ie(i.parentNode,e):e(t)})}function Ee(){let idocument.documentElement.style.overflow,edocument.documentElement.style.paddingRight,twindow.innerWidth-document.documentElement.clientWidth;return document.documentElement.style.overflowhidden,document.documentElement.style.paddingRight`${t}px`,()>{document.documentElement.style.overflowi,document.documentElement.style.paddingRighte}}document.addEventListener(alpine:init,()>{window.Alpine.plugin(ne)});})(); /*! Bundled license information: tabbable/dist/index.esm.js: (*! * tabbable 5.3.3 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE *) focus-trap/dist/focus-trap.esm.js: (*! * focus-trap 6.9.4 * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE *) *//script>script defer>// x-teleport implementation(_ > { document.addEventListener(DOMContentLoaded, event > { // x-teleport available only for template if (!Alpine.version.startsWith(2)) { return; } const teleportDirective (el, expression) > { let target document.querySelector(expression) let clone el.content.cloneNode(true).firstElementChild; target.appendChild(clone); setTimeout(() > { target.querySelectorAll(x-data) .forEach(el > Alpine.initializeComponent(el)); }, 0) }; document.querySelectorAll(template).forEach(el > { if (!el.hasAttribute(x-teleport)) { return; } teleportDirective(el, el.getAttribute(x-teleport)); }); document.querySelectorAll(x-data).forEach(el > { if (el.hasAttribute(x-init)) { return; } setTimeout(() > { Alpine.initializeComponent(el); }, 0); }); });})()/script>script typemodule srchttps://textieltrade.nl/static/version1729148135/frontend/TextielTrade/default/nl_NL/Hyva_Theme/js/alpine3.min.js defer crossorigin>/script>script defer> use strict; function dispatchMessages(messages, hideAfter) { const messagesEvent new CustomEvent(messages-loaded, { detail: { messages: messages, hideAfter: hideAfter } }); window.dispatchEvent(messagesEvent); } if (typeof hyva undefined || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) { console.warn(Hyvä helpers are not loaded yet. Make sure they are included before this script); } (function( hyva, undefined ) { hyva.initFormKey () > { const inputSelector inputnameform_key, formKey hyva.getFormKey(); Array.from(document.querySelectorAll(inputSelector)).map(function (input) { input.value formKey }); } hyva.initMessages () > { try { const messages hyva.getCookie(mage-messages); window.mageMessages messages ? JSON.parse(decodeURIComponent(messages).replace(/\+/g, )) : ; dispatchMessages(window.mageMessages); // empty `mage-messages` cookie const skipSetDomain true; hyva.setCookie(mage-messages,, -1, skipSetDomain); } catch (error) { console.warn(Error parsing Cookie Messages:, error); } } window.addEventListener(DOMContentLoaded, hyva.initFormKey); window.addEventListener(load, hyva.initMessages); }( window.hyva window.hyva || {} ));/script>script defer> use strict; { const private_content_key mage-cache-storage; const private_content_expire_key mage-cache-timeout; const private_content_version_key private_content_version; const section_data_ids_key section_data_ids; const mage_cache_session_id_key mage-cache-sessid; const last_visited_store_key last_visited_store; const ttl 3600; if (typeof hyva undefined || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) { console.warn(Hyvä helpers are not loaded yet. Make sure they are included before this script); } function loadSectionData () { const browserStorage hyva.getBrowserStorage(); if (!browserStorage) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: warning, text: Please enable LocalStorage in your browser. } ); return; } try { let isInvalid false; if (hyva.getCookie(last_visited_store_key) ! CURRENT_STORE_CODE) { isInvalid true; } hyva.setCookie(last_visited_store_key, CURRENT_STORE_CODE, false, false); if (!hyva.getCookie(mage_cache_session_id_key)) { isInvalid true; const skipSetDomain true; const days false; hyva.setCookie(mage_cache_session_id_key, true, days, skipSetDomain) } const cookieVersion hyva.getCookie(private_content_version_key); const storageVersion browserStorage.getItem(private_content_version_key); if (cookieVersion && !storageVersion || cookieVersion ! storageVersion) { isInvalid true; } const privateContentExpires browserStorage.getItem(private_content_expire_key); if (privateContentExpires && new Date(privateContentExpires) new Date()) { browserStorage.removeItem(private_content_key); } if (isInvalid) { fetchPrivateContent(); } else if (cookieVersion && storageVersion && cookieVersion storageVersion) { const privateContent JSON.parse(browserStorage.getItem(private_content_key)); if ( privateContent && privateContentExpires && privateContent.cart && privateContent.customer ) { dispatchPrivateContent(privateContent); } else { fetchPrivateContent(); } } else { dispatchPrivateContent({}); } } catch (error) { console.warn(Error retrieving Private Content:, error); } } window.addEventListener(load, loadSectionData); window.addEventListener(reload-customer-section-data, loadSectionData); function dispatchPrivateContent(data) { const privateContentEvent new CustomEvent(private-content-loaded, { detail: { data: data } }); window.dispatchEvent(privateContentEvent); } function fetchPrivateContent(sections) { fetch(`${BASE_URL}customer/section/load/?sections${encodeURIComponent(sections.join(,))}`, { method: GET, headers: { Content-Type: application/json, X-Requested-With: XMLHttpRequest } }) .then(response > response.json()) .then( data > { if (data) { try { const browserStorage hyva.getBrowserStorage(); // merge new data preserving non-invalidated sections const oldSectionData JSON.parse(browserStorage.getItem(private_content_key) || {}); if ((! data.cart || ! data.cart.cartId) && oldSectionDatacheckout-data) { delete oldSectionDatacheckout-data; } const newSectionData Object.assign(oldSectionData, data); dispatchPrivateContent(newSectionData); // dont persist messages, theyve been dispatched already if (newSectionData.messages && newSectionData.messages.messages ) { newSectionData.messages.messages ; } browserStorage.setItem(private_content_key, JSON.stringify(newSectionData)); const expiresAt new Date(Date.now() + (ttl * 1000)).toISOString(); browserStorage.setItem(private_content_expire_key, expiresAt); const newCookieVersion hyva.getCookie(private_content_version_key); browserStorage.setItem(private_content_version_key, newCookieVersion); // We dont need the section_data_ids in Hyvä, but we store them for compatibility // with Luma Fallback. Otherwise, not all sections are loaded in Luma Checkout hyva.setCookie( section_data_ids_key, JSON.stringify( Object.keys(data).reduce((sectionDataIds, sectionKey) > { sectionDataIdssectionKey datasectionKeydata_id; return sectionDataIds; }, {}) ), false, true ); } catch (error) { console.warn(Couldnt store privateContent, error); } } } ); } }/script>script defer> (() > { document.addEventListener(submit, event > event.target.action event.target.action.replace(%25uenc%25, hyva.getUenc())); })()/script>script defer> (events > { const dispatchUserInteractionEvent () > { events.forEach(type > window.removeEventListener(type, dispatchUserInteractionEvent)) window.dispatchEvent(new Event(init-external-scripts)) }; events.forEach(type > window.addEventListener(type, dispatchUserInteractionEvent, {once: true, passive: true})) })(touchstart, mouseover, wheel, scroll, keydown)/script>script defer> use strict; const grecaptchaV2LoadCallbacks ; function executeRecaptchaLoadCallbacks () { while (window.grecaptcha && grecaptchaV2LoadCallbacks.length > 0) { const callback grecaptchaV2LoadCallbacks.pop(); typeof callback string ? windowcallback() : callback(); } } (function() { const loadRecaptchaScript (event) > { if (window.grecaptcha || !event.target.form) { return; } const url https://www.google.com/recaptcha/api.js?onloadexecuteRecaptchaLoadCallbacks; const siteKey 6LcsbqUnAAAAAKokvWRCOxKMniUSCUGZNK4yfvtq; const script document.createElement(script); script.type text/javascript; script.src siteKey ? `${url}&render${siteKey}` : `${url}&renderexplicit`; script.async true; document.head.appendChild(script); script.addEventListener(load, () > { Array.from(document.querySelectorAll(buttondata-recaptcha-btn:disabled)).forEach(btn > btn.removeAttribute(disabled)); }); } window.forceLoadRecaptchaScript (form) > { loadRecaptchaScript({target: {form: form || dummy}}); executeRecaptchaLoadCallbacks(); }; document.body.addEventListener(input, loadRecaptchaScript, { once: true }); document.body.addEventListener(focus, loadRecaptchaScript, { once: true }); }());/script>script defer> function initSlider(uniqueId, async false, slider .js-slider, sliderItem .js-slider-item) { return { slider: slider, sliderItem: sliderItem, uniqueId: uniqueId, sliderEl: , sliderItemEl: , itemCount: 0, startX: 0, scrollLeft: 0, isDown: false, showNavigation: false, active: { left: false, right: false }, async: async, init() { const timeout (this.async) ? 100 : 0; setTimeout(() > { this.activateSlider(this.uniqueId); }, timeout) }, activateSlider(uniqueId) { this.sliderEl this.$el.querySelector(`data-uniqueid${uniqueId} ${this.slider}`) this.sliderItemEl this.sliderEl.querySelectorAll(this.sliderItem) this.itemCount this.sliderItemEl.length this.resetScroll() this.detectGesture() this.preventDefaultInteraction() this.setNavigationVisibility() this.toggleNavigationItem() }, scroll(direction) { if (direction prev) { this.sliderEl.scrollLeft this.sliderEl.scrollLeft - (this.sliderEl.scrollWidth / this.itemCount) } else if (direction next) { this.sliderEl.scrollLeft this.sliderEl.scrollLeft + (this.sliderEl.scrollWidth / this.itemCount) } }, resetScroll() { const hasSmoothScroll this.sliderEl.classList.contains(scroll-smooth) if (hasSmoothScroll) { this.sliderEl.classList.remove(scroll-smooth) } this.sliderEl.scrollLeft 0 if (hasSmoothScroll) { this.sliderEl.classList.add(scroll-smooth) } }, detectGesture() { this.sliderEl.addEventListener(mousedown, (e) > this.mouseIsDown(e)) this.sliderEl.addEventListener(mousemove, (e) > this.mouseMove(e)) this.sliderEl.addEventListener(mouseup, () > this.mouseUpOrLeave()) this.sliderEl.addEventListener(mouseleave, () > this.mouseUpOrLeave()) }, mouseIsDown(e) { this.isDown true; this.startX e.pageX - this.sliderEl.offsetLeft; this.scrollLeft this.sliderEl.scrollLeft; this.sliderEl.classList.add(cursor-grabbing) }, mouseMove(e) { if (this.isDown) { e.preventDefault(); const x e.pageX - this.sliderEl.offsetLeft; const walkX (x - this.startX) * 2; this.sliderEl.scrollLeft this.scrollLeft - walkX; } }, mouseUpOrLeave() { this.isDown false; this.sliderEl.classList.remove(cursor-grabbing) }, preventDefaultInteraction() { for (let items of this.sliderEl.querySelectorAll(img, a)) { items.addEventListener(mousedown, (e) > { e.preventDefault() }) } }, setNavigationVisibility() { const sliderWidth this.sliderEl.getBoundingClientRect().width let sliderItemsWidth 0; for (const item of this.sliderItemEl) { sliderItemsWidth + item.getBoundingClientRect().width } this.showNavigation sliderItemsWidth > sliderWidth }, toggleNavigationItem() { let itemIterator 0; let options { root: this.sliderEl, rootMargin: 0px, threshold: 1.0 } for (const item of this.sliderItemEl) { itemIterator++ if (itemIterator 1) { let firstItemObserver new IntersectionObserver((entries) > { entries.forEach(entry > { this.active.left !entry.isIntersecting }) }, options); firstItemObserver.observe(item); } if (itemIterator this.itemCount) { let lastItemObserver new IntersectionObserver((entries) > { entries.forEach(entry > { this.active.right !entry.isIntersecting }) }, options); lastItemObserver.observe(item); } } }, eventListeners: { @update-slider.window(event) { this.activateSlider(event.detail.sliderId); } } } }/script>script defer> window.ajaxAddToCart () > { document.querySelectorAll(.product_addtocart_form, #product_addtocart_form).forEach(form > { form.addEventListener(submit, event > { event.preventDefault(); const data new URLSearchParams(new FormData(form)), button form.querySelector(button) ? form.querySelector(button) : document.getElementById(product-addtocart-button) const loader ` svg classanimate-spin h-5 w-5 text-white xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24> circle classopacity-25 cx12 cy12 r10 strokecurrentColor stroke-width4>/circle> path classopacity-75 fillcurrentColor dM4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z>/path> /svg> `; const checkmark ` svg xmlnshttp://www.w3.org/2000/svg fillnone viewBox0 0 24 24 strokecurrentColor classw-5 h-5 width24 height24> path stroke-linecapround stroke-linejoinround stroke-width2 dM5 13l4 4L19 7/>/svg> `; const cross ` svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 384 512 classw-5 h-5 fill-white width24 height24>!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. -->path dM342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z/>/svg> `; button.classList.add(is-loading); button.disabled true; button.innerHTML `${loader}`; fetch(event.currentTarget.action, { method: POST, body: data, headers: { Content-Type: application/x-www-form-urlencoded;charsetUTF-8, X-Requested-With: XMLHttpRequest } }) .then(res > { if (!res.ok) { return form.submit(); } if (res.redirected) { return ; } return res.json(); }) .then(data > { if (data.backUrl) { // do nothing when quantity is not available and magento wants to redirect to pdp button.innerHTML `${cross}`; button.classList.add(bg-error-900); } else { button.innerHTML `${checkmark}`; button.classList.add(bg-success-900); window.dispatchEvent(new CustomEvent(toggle-cart)); } window.dispatchEvent(new CustomEvent(product-addtocart-success)); window.dispatchEvent(new CustomEvent(reload-customer-section-data)); }) .catch(error > { window.dispatchEvent(new CustomEvent(product-addtocart-error)); console.error(Error adding item to cart, error) dispatchMessages( { type: error, text: There was a problem adding your item to the cart. } , 5000); }) .finally(() > { let messages hyva.getCookie(mage-messages) try { messages messages ? JSON.parse(decodeURIComponent(messages).replace(/\+/g, )) : ; document.cookie mage-messages; Path/; ExpiresThu, 01 Jan 1970 00:00:01 GMT;; } catch (error) { console.error(Error parsing cookie messages:, error); return; } button.classList.remove(is-loading); button.disabled false; }); }); }); } window.ajaxAddToCart();/script>script defer> function initCompareOnProductList() { return { addToCompare(productId) { const formKey hyva.getFormKey(); const postUrl BASE_URL + catalog/product_compare/add/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &product + productId + &uenc + hyva.getUenc(), method: POST, mode: cors, credentials: include }).then(function (response) { if (response.redirected) { window.location.href response.url; } }).catch(function (error) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: error }, 5000 ); }); } }; }/script>script defer> function initWishlist() { return { addToWishlist(productId) { const formKey hyva.getFormKey(); const postUrl BASE_URL + wishlist/index/add/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &product + productId + &uenc + hyva.getUenc(), method: POST, mode: cors, credentials: include }).then(function (response) { if (response.redirected) { window.location.href response.url; } else if (response.ok) { return response.json(); } else { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: warning, text: Could not add item to wishlist. }, 5000 ); } }).then(function (response) { if (!response) { return } typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: (response.success) ? success : error, text: (response.success) ? Product is toegevoegd aan je verlanglijst. : response.error_message }, 5000 ); const reloadCustomerDataEvent new CustomEvent(reload-customer-section-data); window.dispatchEvent(reloadCustomerDataEvent); }).catch(function (error) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: error }, 5000 ); }); } } }/script>script defer> function initConfigurableOptions(productId, optionConfig) { function findPathParam(key) { const baseUrl (BASE_URL.substring(0, 2) // ? http: : ) + BASE_URL; const baseUrlParts (new URL(baseUrl)).pathname.replace(/\/$/, ).split(/); const pathParts window.location.pathname.split(/).slice(baseUrlParts.length + 3); for (let i 0; i pathParts.length; i + 2) { if (pathPartsi key && pathParts.length > i) { return pathPartsi + 1; } } } return { optionConfig, productId, itemId: (new URLSearchParams(window.location.search)).get(id) || findPathParam(id), allowedAttributeOptions: , selectedValues: , init() { this.findAllowedAttributeOptions(); this.$nextTick(() > { if (typeof this.optionConfig.defaultValues object) { for (const optionId, value of Object.entries(this.optionConfig.defaultValues)) { this.changeOption(optionId, value + ); } } }); }, findSimpleIndex() { this.productIndex this.calculateSimpleIndexForPartialSelection(this.selectedValues); }, calculateSimpleIndexForPartialSelection(selectedValues) { if (selectedValues.length 0) return 0; let productIndexIds Object.keys(this.optionConfig.index); Object.keys(this.optionConfig.attributes).forEach((attribute) > { const productsWithAttributeMatch selectedValuesattribute ? productIndexIds.filter((productIndex) > { return this.optionConfig.indexproductIndexattribute this.selectedValuesattribute }) : ; productIndexIds productsWithAttributeMatch.length ? productsWithAttributeMatch : productIndexIds }) return productIndexIds0; }, calculateSimpleIndexForFullSelection(selectedValues) { const productIndexes this.optionConfig.index; return Object.keys(productIndexes).find(productIndex > { const productCandidateOptions productIndexesproductIndex; for (const productOption in productCandidateOptions) { if ( ! selectedValuesproductOption || selectedValuesproductOption ! productCandidateOptionsproductOption ) { return false; } } return productIndex; }); }, productIndex: 0, findAllowedAttributeOptions() { this.allowedAttributeOptions this.calculateAllowedAttributeOptions(this.selectedValues); }, calculateAllowedAttributeOptions(selectedValues) { const allAttributes this.optionConfig.attributes; const allAttributesSorted Object.values(allAttributes).sort((a,b) > { return a.position - b.position }); const selectionWithoutAttr attrId > { return Object.keys(selectedValues).reduce((acc, id) > { if (id ! attrId) accid selectedValuesid; return acc; }, {}) } const newAllowedAttributeOptions ; allAttributesSorted.forEach(attribute > { const availableIndexes this.calculateAvailableProductIndexes(selectionWithoutAttr(attribute.id)); newAllowedAttributeOptionsattribute.id allAttributesattribute.id.options.filter(option > { return !!option.products.find(product > { return availableIndexes.includes(product); }) }); }); return newAllowedAttributeOptions; }, calculateAvailableProductIndexes(selectedOptions) { if (Object.keys(selectedOptions).length 0) { if (Object.values(this.optionConfig.salable || {}).length) { return .concat.apply(, .concat.apply(, Object.values(this.optionConfig.salable).map(Object.values))).filter((x, i, a) > a.indexOf(x) i) } return Object.keys(this.optionConfig.index); } const selectedIds Object.keys(selectedOptions); if (Object.values(this.optionConfig.salable || {}).length) { const selectedOptionIndexes selectedIds.map(attrId > { const optionValue selectedOptionsattrId; return this.optionConfig.salableattrId && this.optionConfig.salableattrIdoptionValue || }) return selectedOptionIndexes.reduce((acc, optionIndexes) > { return acc.filter(index > optionIndexes.includes(index)); }); } else { const productIndexes this.optionConfig.index; return Object.keys(productIndexes).filter(index > { return selectedIds.find(attrId > productIndexesindexattrId `${selectedOptionsattrId}`) }); } }, findAttributeByOptionId(optionId) { for (const attributeId in this.optionConfig.attributes) { const attributeOptions this.optionConfig.attributesattributeId.options || ; if (attributeOptions.find(option > option.id optionId)) { return attributeId; } } }, getAllowedAttributeOptions(attributeId) { return this.allowedAttributeOptionsattributeId || }, getProductIdsForOption(option) { const attributeId this.findAttributeByOptionId(option.id); const allOptions this.optionConfig.attributesattributeId; const opt (allOptions && allOptions.options || ).find(o > o.id option.id); return opt && opt.products ? opt.products : ; }, findProductIdsForPartialSelection(optionSelection) { const candidateProducts Object.values(optionSelection).reduce((candidates, optionId) > { const newCandidates this.getProductIdsForOption({id: optionId}); return candidates null ? newCandidates : candidates.filter(productId > newCandidates.includes(productId)); }, null); return candidateProducts || ; }, findCheapestProductForPartialSelection(optionSelection) { const candidateProducts this.findProductIdsForPartialSelection(optionSelection); return candidateProducts.reduce((cheapest, simpleIdx) > { // in the first iteration we start with simpleIdx as the currently cheapest product if (! this.optionConfig.optionPricescheapest) return simpleIdx; const knownCheapestPrice this.optionConfig.optionPricescheapest.finalPrice.amount; return knownCheapestPrice > this.optionConfig.optionPricessimpleIdx.finalPrice.amount ? simpleIdx : cheapest; }, 0) }, findProductIdToUseForOptionPrice(option) { // try to find a product for a complete selection const attributeId this.findAttributeByOptionId(option.id); const optionSelection Object.assign({}, this.selectedValues, {attributeId: option.id}); const matchingSimpleIndex this.calculateSimpleIndexForFullSelection(optionSelection); // if there is no complete selection, use the cheapest product for the option return matchingSimpleIndex || this.findCheapestProductForPartialSelection(optionSelection); }, getAttributeOptionLabel(option) { const optionProduct this.findProductIdToUseForOptionPrice(option); if ((! optionProduct) || (optionProduct this.productIndex)) { return option.label; } const currentPrice this.getOptionPriceAdjustmentBasePrice(); if (this.optionConfig.optionPricesoptionProduct) { const optionPrice this.optionConfig.optionPricesoptionProduct.finalPrice.amount; if (optionPrice ! currentPrice){ return option.label + + hyva.formatPrice(optionPrice - currentPrice, true); } } return option.label; }, getOptionPriceAdjustmentBasePrice() { if (this.optionConfig.optionPricesthis.productIndex) { return this.optionConfig.optionPricesthis.productIndex.finalPrice.amount } const cheapestForSelection this.findCheapestProductForPartialSelection(this.selectedValues); return this.optionConfig.optionPricescheapestForSelection ? this.optionConfig.optionPricescheapestForSelection.finalPrice.amount : this.optionConfig.prices.finalPrice.amount; // default price if no option selection }, changeOption(optionId, value) { if (value ) { // create new array so the length property is reset if no option is selected (avoiding delete) this.selectedValues this.selectedValues.reduce((newSelection, val, opt) > { if (opt ! optionId) { newSelectionopt val; } return newSelection; }, ); } else { this.selectedValuesoptionId value; } this.findSimpleIndex(); this.findAllowedAttributeOptions(); this.updatePrices(); this.updateGallery(); window.dispatchEvent( new CustomEvent( configurable-selection-changed, { detail: { productId: this.productId, optionId: optionId, value: value, productIndex: this.productIndex, selectedValues: this.selectedValues, candidates: this.findProductIdsForPartialSelection(this.selectedValues), } } ) ); }, calculateIsMinimalPrice() { return ( this.selectedValues.filter(value > !!value).length Object.keys(this.optionConfig.attributes).length ); }, updatePrices() { const value this.productIndex ? this.optionConfig.optionPricesthis.productIndex : this.optionConfig.prices; window.dispatchEvent( new CustomEvent( update-prices- + this.productId, { detail: Object.assign( value, { isMinimalPrice: this.calculateIsMinimalPrice() } ) } ) ); }, updateGallery () { if (this.productIndex) { const images this.optionConfig.imagesthis.productIndex; images && window.dispatchEvent(new CustomEvent( update-gallery, { detail: this.sortImagesByPosition(images) } )); } else { window.dispatchEvent(new Event(reset-gallery)); } }, sortImagesByPosition(images) { return images.sort((x, y) > { return x.position y.position ? 0 : (parseInt(x.position) > parseInt(y.position) ? 1 : -1) }); }, onGetCartData(data) { }, preselectCartItems(data) { // pre-select options based on cart data for current (quote) itemId const cart data && data.cart; if (cart && cart.items) { const cartItem cart.items.find((item) > { return ( item.item_id this.itemId && item.product_id this.productId ) }); if (cartItem && cartItem.options && cartItem.options.length) { cartItem.options.map(option > { this.changeOption(option.option_id, option.option_value); }) } } }, preselectQuerystringItems() { // pre-select option like ?size167 const urlQueryParams new URLSearchParams(window.location.search.replace(?,)); this.preselectItemsBasedOnLocation(attribute > urlQueryParams.get(attribute.code)); }, preselectLocationHashItems() { // pre-select option like #144167 const urlHashParams new URLSearchParams(window.location.hash.replace(#,)); this.preselectItemsBasedOnLocation(attribute > urlHashParams.get(attribute.id)); }, preselectItemsBasedOnLocation(getLocationValue) { Object.values(this.optionConfig.attributes).map(attribute > { const value getLocationValue(attribute) const isAllowedValue value && this.getAllowedAttributeOptions(attribute.id).find(option > option.id value) isAllowedValue && this.changeOption(attribute.id, value) }); } } }/script>script defer> function initSwatchOptions(swatchConfig) { return { swatchConfig, getAttributeSwatchData(attributeId) { const swatchConfig Object.assign({}, this.swatchConfigattributeId); swatchConfigdetails JSON.parse(swatchConfigadditional_data); return swatchConfig; }, getAllAttributeOptions(attributeId) { return ( this.optionConfig.attributesattributeId && this.optionConfig.attributesattributeId.options ) || }, optionIsActive(attributeId, optionId) { // return true if a product with this option is in stock return !!this.getAllowedAttributeOptions(attributeId).find( option > option.id optionId ) }, optionIsEnabled(attributeId, optionId) { // return true if a product with this option is enabled for (const productId in this.optionConfig.index) { if (this.optionConfig.indexproductIdattributeId optionId) { return true; } } return false; }, mapSwatchTypeNumberToTypeCode(typeNumber) { switch ( + typeNumber) { case 1: return color case 2: return image case 3: return empty case 0: default: return text } }, getTypeOfFirstOption(attributeId) { for (const optionId in this.swatchConfigattributeId) { const option this.swatchConfigattributeIdoptionId; if (typeof option.type ! undefined) { return this.mapSwatchTypeNumberToTypeCode(option.type); } } }, getVisualSwatchType(attributeId, targetOptionId) { // If a type configuration is present for the given option id, use it const config this.swatchConfigattributeId; if (configtargetOptionId && typeof configtargetOptionId.type ! undefined) { return this.mapSwatchTypeNumberToTypeCode(configtargetOptionId.type); } // Otherwise - if no config is present for the target option - use the type of the first option // with a type property from the attribute, thus assuming its the same type as the target option. // (This edge case condition can occur on single swatch products if some options are not salable) return this.getTypeOfFirstOption(attributeId); }, getSwatchType(attributeId, optionId) { // Deserialize the attribute details the first time they are used if (this.swatchConfigattributeId && ! this.swatchConfigattributeId.details) { this.swatchConfigattributeId this.getAttributeSwatchData(attributeId); } const type this.swatchConfigattributeId && this.swatchConfigattributeId.details && this.swatchConfigattributeId.details.swatch_input_type || empty; return type visual ? this.getVisualSwatchType(attributeId, optionId) : type; }, isTextSwatch(attributeId, optionId) { return this.getSwatchType(attributeId, optionId) text; }, isVisualSwatch(attributeId, optionId) { const type this.getSwatchType(attributeId, optionId); return image, color.includes(type); }, getSwatchBackgroundStyle(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); const type this.getSwatchType(attributeId, optionId); if (type color) { return background-color: + config.value; } else if (type image) { return background: #ffffff url( + config.value + ) no-repeat center; } else { return ; } }, getSwatchText(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); return config.label || config.value || this.getOptionLabelFromOptionConfig(attributeId, optionId); }, getOptionLabelFromOptionConfig(attributeId, optionId) { // Fallback if no value is present in swatchConfig data // Reference issue https://gitlab.hyva.io/hyva-themes/magento2-default-theme/-/issues/190 const option this.getAllAttributeOptions(attributeId).filter(option > option.id optionId); return option && option0 && option0.label ||; }, getSwatchConfig(attributeId, optionId) { return this.swatchConfigattributeId && this.swatchConfigattributeIdoptionId ? this.swatchConfigattributeIdoptionId : false; }, activeTooltipItem: false, tooltipPositionElement: false, isTooltipVisible() { return this.activeTooltipItem && this.getSwatchConfig( this.activeTooltipItem.attribute, this.activeTooltipItem.item ); }, isFirstItemCol() { return this.activeTooltipItem.index 0; }, getTooltipImageStyle(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); const type this.getSwatchType(attributeId, optionId); if (type color) { return background-color: + config.value + ; width: 110px; height: 90px;; } else if (type image) { return background: #ffffff url( + config.thumb + ) center center no-repeat; width: 110px; height: 90px;; } else { return display:none; } }, getTooltipPosition() { return this.tooltipPositionElement ? `top: ${this.tooltipPositionElement.offsetTop}px;` + `left: ${ this.tooltipPositionElement.offsetLeft - ( this.tooltipPositionElement.closest(.snap) && this.tooltipPositionElement.closest(.snap).scrollLeft || 0 ) }px;` : }, getTooltipLabel() { return this.getSwatchConfig(this.activeTooltipItem.attribute, this.activeTooltipItem.item).label }, focusedLabel: false, focusLabel(optionId) { this.focusedLabel optionId; }, blurLabel() { this.focusedLabel false; }, showSwatches: false, initShowSwatchesIntersect() { if (IntersectionObserver in window && !window.scrollY) { let io new IntersectionObserver( entries > { entries.map(entry > { if (entry.isIntersecting) { this.showSwatches true; io.unobserve(this.$root); } }) } ); io.observe(this.$root); } else { this.showSwatches true } } } }/script>div classblock md:hidden>div x-data{ overlayIsActive: false } @toggle-overlay.windowoverlayIsActive $event.detail.autocompleteIsActive classfixed w-full h-full inset-0 bg-black opacity-20 z-10 x-showoverlayIsActive x-cloak @click$dispatch(disable-overlay)>/div>/div>script typeapplication/ld+json defer>{@context:https:\/\/schema.org,@type:WebSite,url:https:\/\/textieltrade.nl\/,name:Textiel Trade}/script>script defer> (() > { const { fetch: originalFetch } window; window.fetch async (...args) > { let resource, config args; let targetUrl (resource instanceof Request) ? resource.url : resource.toString(); const response await originalFetch(resource, config); const json () > response.clone().json().then((data) > { switch (true) { case -1 ! targetUrl.indexOf(removeItem): if (data.hasOwnProperty(dataLayer) && undefined ! typeof dataLayer) { AEC.Cookie.remove(data.dataLayer).push(dataLayer); } break; case -1 ! targetUrl.indexOf(graphql): if (data.hasOwnProperty(data) && data.data.hasOwnProperty(setPaymentMethodOnCart) && undefined ! typeof dataLayer) { let method data.data.setPaymentMethodOnCart.cart.selected_payment_method.title; ((payload, method) > { payloadpayment_type method; dataLayer.push({ ecommerce: null }); dataLayer.push( { event: add_payment_info, ecommerce: payload }); })(AEC.Checkout.data.payload, method); } if (data.hasOwnProperty(data) && data.data.hasOwnProperty(cart) && undefined ! typeof dataLayer) { let methods ; data.data.cart.shipping_addresses.forEach(address > { methods.push(address.selected_shipping_method); }); if (methods.length) { methods.forEach(method > { ((payload, method) > { payloadshipping_tier method.carrier_code; dataLayer.push({ ecommerce: null }); dataLayer.push( { event: add_shipping_info, ecommerce: payload }); })(AEC.Checkout.data.payload.ecommerce, method); }); } } if (data.hasOwnProperty(data) && data.data.hasOwnProperty(setShippingMethodsOnCart) && undefined ! typeof dataLayer) { let methods ; data.data.setShippingMethodsOnCart.cart.shipping_addresses.forEach(address > { methods.push(address.selected_shipping_method); }); if (methods.length) { methods.forEach(method > { ((payload, method) > { payloadshipping_tier method.carrier_code; dataLayer.push({ ecommerce: null }); dataLayer.push( { event: add_shipping_info, ecommerce: payload }); })(AEC.Checkout.data.payload.ecommerce, method); }); } } break; } return data; }); response.json json; return response; }; /** * Custom variants */ AEC.EventDispatcher.on(ec.variants, variants > { if (!variants.length) { ...document.querySelectorAll(name^super_attribute).forEach(input > { if (input.parentNode.classList.contains(border-primary)) { var name input.getAttribute(name), id name.substring(name.indexOf() + 1, name.lastIndexOf()); Object.entries(AEC.SUPER).forEach((key, attribute) > { if (attribute.id id) { attribute.options.forEach(option > { if (option.value_index input.value) { variants.push( { id: id, option: option.value_index, text: option.label }); } }); } }); } }); } }); window.addEventListener(add-to-cart, event > { let element ...document.querySelectorAll(data-eventadd_to_cart).filter(node > { return node.dataset.id event.detail.product_sku; }); if (element) { AEC.add(element0, dataLayer); } }); window.addEventListener(cart-data-updated, event > { dataLayer.push( { event: update_cart, payload: event.detail.cart }); }); })(); /script>script defer> use strict; function GoogleAnalytics () { let self this; this.config { isCookieRestrictionModeEnabled: 0, currentWebsite: 1, cookieName: user_allowed_save_cookie, ordersTrackingData: , pageTrackingData: {optPageUrl:,isAnonymizedIpActive:false,accountId:UA-174671276-1}, } this.initGoogleAnalytics function () { let allowServices false, allowedCookies, allowedWebsites; if (self.config.isCookieRestrictionModeEnabled) { allowedCookies hyva.getCookie(self.config.cookieName); if (allowedCookies ! null) { allowedWebsites JSON.parse(decodeURIComponent(allowedCookies)); if (allowedWebsitesself.config.currentWebsite 1) { allowServices true; } } } else { allowServices true; } if (allowServices) { (function (i, s, o, g, r, a, m) { i.GoogleAnalyticsObject r; ir ir || function () { (ir.q ir.q || ).push(arguments) }, ir.l 1 * new Date(); a s.createElement(o), m s.getElementsByTagName(o)0; a.defer 1; a.src g; m.parentNode.insertBefore(a, m) })(window, document, script, //www.google-analytics.com/analytics.js, ga); // Process page info ga(create, self.config.pageTrackingData.accountId, auto); if (self.config.pageTrackingData.isAnonymizedIpActive) { ga(set, anonymizeIp, true); } // Process orders data if (self.config.ordersTrackingData.hasOwnProperty(currency)) { ga(require, ec, ec.js); ga(set, currencyCode, self.config.ordersTrackingData.currency); // Collect product data for GA if (self.config.ordersTrackingData.products) { self.config.ordersTrackingData.products.forEach(function (value) { ga(ec:addProduct, value); }); } // Collect orders data for GA if (self.config.ordersTrackingData.orders) { self.config.ordersTrackingData.orders.forEach(function (value) { ga(ec:setAction, purchase, value); }); } ga(send, pageview); } else { // Process Data if not orders ga(send, pageview + self.config.pageTrackingData.optPageUrl); } } }; } window.addEventListener(load, new GoogleAnalytics().initGoogleAnalytics);/script>/div>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]