1<!DOCTYPE html> 2 3<html lang="en"> 4 5<head> 6 7
8<script async type="text/javascript" charset="UTF-8" src="//cdn.cookie-script.com/s/f307ca68e5ff8451f87facfbec032d9a.js"></script>
8 9
10<script> 11 window.dataLayer = window.dataLayer || []; 12 13 function gtag() { 14 dataLayer.push(arguments); 15 } 16 17 gtag("consent", "default", { 18 ad_storage: "denied", 19 analytics_storage: "denied", 20 ad_user_data: "denied", 21 ad_personalization: "denied", 22 wait_for_update: 500 23 }); 24 25 gtag("set", "ads_data_redaction", true); 26 gtag("set", "developer_id.dMmY1Mm", true); 27</script>
27 28 29<!-- Google Tag Manager -->
30<script>
vendor: 331 bytes, lines 30-34
30(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 31new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 32j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 33'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 34})(window,document,'script','dataLayer','
34GTM-T4MRWFG
vendor: 3 bytes, line 34
34');
34</script>
34 35<!-- End Google Tag Manager --> 36
37<script type="text/javascript"> 38 var _gaq = _gaq || []; 39 _gaq.push(['_setAccount', 'UA-39535513-1']); 40 _gaq.push(['_trackPageview']); 41 (function() { 42 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 43 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 44 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 45 })(); 46</script>
46 47 48<!-- Global site tag (gtag.js) - Google Ads: 1071385503 -->
vendor: 65 bytes, lines 48-49
48 49<script async src="https://www.googletagmanager.com/gtag/js?id=
49AW-1071385503
vendor: 13 bytes, line 49
49"></script>
50<script> 51
vendor: 138 bytes, lines 51-55
51window.dataLayer = window.dataLayer || []; 52 function gtag(){dataLayer.push(arguments);} 53 gtag('js', new Date()); 54 55 gtag('config', '
55AW-1071385503
vendor: 5 bytes, line 55
55');
56</script>
56 57 58<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 65 bytes, lines 58-59
58 59<script async src="https://www.googletagmanager.com/gtag/js?id=
59G-0S5EN9VBEP
vendor: 13 bytes, line 59
59"></script>
60<script> 61
vendor: 138 bytes, lines 61-65
61window.dataLayer = window.dataLayer || []; 62 function gtag(){dataLayer.push(arguments);} 63 gtag('js', new Date()); 64 65 gtag('config', '
65G-0S5EN9VBEP
vendor: 5 bytes, line 65
65');
66</script>
66 67 68 69 70<meta charset="utf-8" /> 71 72 73 74<title>Search | Burlington Uniforms</title> 75 76<link rel="preconnect" href="https://fonts.googleapis.com"> 77<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 78<link href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;0,900;1,400;1,700;1,900&display=swap" rel="stylesheet" media="print" onload="this.media='all'"> 79<noscript> 80 <link rel="stylesheet" 81 href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;0,900;1,400;1,700;1,900&display=swap" /> 82</noscript> 83 84 85 86<!-- Meta information--> 87<meta name="keywords" content="" /> 88<meta name="description" content="" /> 89<meta name="author" content="Waters Creative Ltd (www.waters-creative.co.uk)" /> 90<meta name="robots" content="INDEX, FOLLOW" /><meta name="viewport" content="width=device-width, initial-scale=1" /> 91<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 92 93 94 95<!-- Facebook OpenGraph elements --> 96<meta name="twitter:card" content="summary_large_image" /> 97<meta name="twitter:site" content="burlington_uk" /> 98<meta name="twitter:creator" content="burlington_uk" /> 99 100<meta property="og:title" content="Search | Burlington Uniforms" /> 101<meta property="og:description" content="" /> 102<meta property="og:image" content="https://www.burlington-uniforms.co.uk/getfile/design/2022/burlington-share-image.png" /> 103<meta property="og:url" content="https://www.burlington-uniforms.co.uk/search" /> 104<meta property="og:type" content="website" /> 105 106 107 108<!-- stylesheets --> 109 110 111 112<link rel="stylesheet" href="/styles/styles.155009.css" type="text/css" media="all" /><!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/themes/satellite-min.css" integrity="sha256-woeV7a4SRDsjDc395qjBJ4+ZhDdFn8AqswN1rlTO64E=" crossorigin="anonymous"> --> 113 114 115 116 117<!-- other icons --> 118<link rel="icon" type="image/png" href="https://www.burlington-uniforms.co.uk/getfile/design/2022/burlington-favicon.png" /> 119<link rel="image_src" href="https://www.burlington-uniforms.co.uk/getfile/design/2022/burlington-share-image.png" /> 120 121 122 123<!-- URL handling --> 124<link rel="canonical" href="https://www.burlington-uniforms.co.uk/search" /> 125 126 127 128<!-- Include scripting --> 129 130<!-- Bootstrap--> 131<!-- Needs looking into, using CDN as 5.2.x bootstrap.js is throwing an error on dropdown nav menu -->
132<script src="/js/libs/bootstrap/js/bootstrap.min.js" async ></script>
132 133 134<!--
134<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" async 135 integrity="sha384-A3rJD856KowSb7dwlZdYEkO39Gagi7vIsF0jrRAoQmDKKtQBHUuLZ9AsSv4jD4Xa" crossorigin="anonymous"></script>
135 --> 136 137 <!-- Swiper-->
138<script src="/js/libs/swiper/swiper-bundle.min.js" defer></script>
138 139 140<!-- Cookie Management -->
vendor: 1,710 bytes, lines 141-144
141<script> 142 /*! js-cookie v3.0.1 | MIT */ 143 !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self,function(){var n=e.Cookies,o=e.Cookies=t();o.noConflict=function(){return e.Cookies=n,o}}())}(this,(function(){"use strict";function e(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}return function t(n,o){function r(t,r,i){if("undefined"!=typeof document){"number"==typeof(i=e({},o,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var u in i)i[u]&&(c+="; "+u,!0!==i[u]&&(c+="="+i[u].split(";")[0]));return document.cookie=t+"="+n.write(r,t)+c}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],o={},r=0;r<t.length;r++){var i=t[r].split("="),c=i.slice(1).join("=");try{var u=decodeURIComponent(i[0]);if(o[u]=n.read(c,u),e===u)break}catch(e){}}return e?o[e]:o}},remove:function(t,n){r(t,"",e({},n,{expires:-1}))},withAttributes:function(n){return t(this.converter,e({},this.attributes,n))},withConverter:function(n){return t(e({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(o)},converter:{value:Object.freeze(n)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})})); 144</script>
144 145
146<script type="text/javascript"> 147 148// ---------------------------------------------------------------------- 149// Set variables 150// ---------------------------------------------------------------------- 151 152// Test as to whether the DOM ready script has been run yet or not 153var domReadyRun = false; 154 155// ---------------------------------------------------------------------- 156// Worker function definitions 157// ---------------------------------------------------------------------- 158 159// Ensure the console calls do something: 160if(typeof window.console == 'undefined'){ window.console = { log: function (msg) { } }; } 161 162/*! loadJS: load a JS file asynchronously. Originally based on [c]2014 @scottjehl, Filament Group, Inc. (Based on http://goo.gl/REQGQ by Paul Irish). Licensed MIT. */ 163(function( w ){ 164 var loadJS = function( src, cb ){ 165 "use strict"; 166 var ref = w.document.getElementsByTagName( "script" )[ 0 ]; 167 var script = w.document.createElement( "script" ); 168 script.src = src; 169 script.async = true; 170 ref.parentNode.insertBefore( script, ref ); 171 if (cb && typeof(cb) === "function") { 172 script.onload = cb; 173 } 174 return script; 175 }; 176 // commonjs 177 if( typeof module !== "undefined" ){ 178 module.exports = loadJS; 179 } 180 else { 181 w.loadJS = loadJS; 182 } 183}( typeof global !== "undefined" ? global : this )); 184 185// Function for testing if we are using IE, and the version being used: 186function isIE() { var myNav = navigator.userAgent.toLowerCase(); return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : false; } 187 188// Wrapper function for console calls: 189function consoleWrapper(msg){ console.log(msg); } 190 191</script>
191 192
193<script type="text/javascript"> 194 195 196// ---------------------------------------------------------------------- 197// Customisable functions and variables 198// ---------------------------------------------------------------------- 199 200var debug = false; 201var isCycleLoading = false; 202var isDocumentReady = false; 203 204function consoleDebug(message){ 205 if(debug == true){ 206 consoleWrapper(message); 207 } 208} 209 210document.addEventListener("DOMContentLoaded", function(event) { isDocumentReady = true; console.log("DOM has loaded"); }); 211 212window.onload = function(){ console.log("Document has loaded.."); }; 213 214 215// List of files which should always be loaded by this page. 216var jsFiles = [ 217 // "https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js", 218 "/js/libs/jquery3.5.1/jquery.min.js", 219 220 "/js/libs/lazyload/lazyload.js" 221]; 222 223 224 225// Conditional loading of additional scripts, depending on browser 226// version. Typically, load polyfills for pre-IE9 browsers 227if (isIE() && isIE() < 9){ 228 jsFiles.push("/js/libs/html5shiv.min.js"); 229 jsFiles.push("/js/libs/selectivizr-min.js"); 230 jsFiles.push("/js/libs/respond.min.js"); 231 jsFiles.push("/js/libs/picturefill.min.js"); 232} 233 234 235 236// Function used to test if critical scripts have loaded. This is 237// required in the case where one or more scripts depend on each 238// other 239function isReady(){ 240 241 // Check whether critical functions have been loaded and if so, 242 // trigger post-loading scripts. For example, check if jQuery, 243 // or other dependency has loaded yet. 244 if (window.jQuery && !domReadyRun){ 245 246 // Message to console: 247 consoleWrapper("Critical JS functionality has loaded."); 248 249 // Set flag to ensure this proceedure is only run once: 250 domReadyRun = true; 251 252 if (isDocumentReady == false){ 253 document.addEventListener("DOMContentLoaded", function(event) { 254 consoleWrapper("isReadyJS called via document ready"); 255 isReadyJS( jQuery ); 256 }); 257 } else { 258 consoleWrapper("isReadyJS called manually"); 259 isReadyJS( jQuery ); 260 } 261 262 } 263 264} 265 266function manualResize(){ 267 $(window).trigger("resize"); 268} 269 270function isDefined(item){ 271 if(typeof item != "undefined" && item !== false && item !== ""){ 272 return true; 273 } else { 274 return false; 275 } 276} 277 278 279 280let moreItemsChildren = 0; 281 282function showOrHideMoreFilters(){ 283 let moreFilterContainer = document.querySelector('#filter-more'); 284 if (typeof moreFilterContainer == "undefined" || moreFilterContainer == null){ 285 return; 286 } 287 288 let hiddenFilters = moreFilterContainer.children.length; 289 console.info('showOrHideMoreFilters(): Found '+hiddenFilters+' hidden filters', moreFilterContainer.children); 290 291 let btn = document.querySelector('#filter-btn-more'); 292 293 if (hiddenFilters > 0){ 294 btn.parentElement.classList.remove('d-none'); 295 } else { 296 if (btn.parentElement.classList.contains('d-none')){ 297 return; 298 } 299 btn.parentElement.classList.add('d-none'); 300 } 301 302} 303 304function adjustFiltersByScreenSize(){ 305 console.info('adjustFiltersByScreenSize'); 306 307 let toShow = 2; 308 let label = 'More...'; 309 if (window.innerWidth < 700){ 310 toShow = false; 311 label = 'Filters'; 312 } else if (window.innerWidth >= 700 && window.innerWidth < 850){ 313 toShow = false; 314 label = 'Filters'; 315 } else if (window.innerWidth >= 850 && window.innerWidth < 998){ 316 toShow = 2; 317 } else if (window.innerWidth >= 998 && window.innerWidth < 1300){ 318 toShow = 3; 319 } else if (window.innerWidth >= 1300 && window.innerWidth < 1500){ 320 toShow = 4; 321 } else { 322 toShow = 5; 323 } 324 325 326 let filterList = document.querySelector('.filter-list'); 327 let filterMore = document.querySelector('#filter-more'); 328 let filterMoreBtn = document.querySelector('#filter-btn-more span'); 329 330 if (filterList && filterMore){ 331 332 filterList.classList.add('hide'); 333 334 // re-assign items from pool 335 let moreItems = filterMore.querySelectorAll('#filter-more > li'); 336 337 moreItems.forEach( (child, index) => { 338 filterList.appendChild(child); 339 }); 340 moreItemsChildren = 0; 341 342 let childItems = document.querySelectorAll('.filter-list > li:not(.no-hide)');
343 childItems.forEach( (child, index) => { 344 if (index >= toShow){ 345 // move item into pool 346 filterMore.appendChild(child); 347 moreItemsChildren++; 348 } 349 }); 350 351 // Reorder filterMore children so "no-hide" items are at the end 352 let filterListChildren = Array.from(filterList.children); 353 filterListChildren.sort((a, b) => { 354 let aHasNoHide = a.classList.contains('no-hide'); 355 let bHasNoHide = b.classList.contains('no-hide'); 356 if (aHasNoHide && !bHasNoHide) return 1; 357 if (!aHasNoHide && bHasNoHide) return -1; 358 return 0; 359 }); 360 filterList.innerHTML = ""; 361 filterListChildren.forEach(child => filterList.appendChild(child)); 362 363 filterMoreBtn.innerHTML = label; 364 365 showOrHideMoreFilters(); 366 367 filterList.classList.remove('hide'); 368 369 } 370} 371 372 373 374 375 376 377 378var categoriesOpened = false; 379 380function toggleHiddenFilterClass( el ){ 381 if (el) { 382 if (el.classList.contains('filter--hidden')){ 383 el.classList.remove('filter--hidden'); 384 } else { 385 el.classList.add('filter--hidden'); 386 } 387 } 388} 389 390function toggleSelectedClass( el ){ 391 if (el) { 392 if (el.classList.contains('filter--selected')){ 393 el.classList.remove('filter--selected'); 394 } else { 395 el.classList.add('filter--selected'); 396 } 397 } 398} 399 400function closeOtherSearchFilters( excludeSelector ){ 401 402 console.info('closeOtherSearchFilters', excludeSelector); 403 404 let toggles = document.querySelectorAll('.js-filter-toggle:not(#'+excludeSelector+')'); 405 406 toggles.forEach(function(el){ 407 var target = el.getAttribute('data-bs-target'); 408 if (target) { 409 var targetEl = document.querySelector(target); 410 if (!targetEl.classList.contains('filter--hidden')){ 411 targetEl.classList.add('filter--hidden'); 412 } 413 } 414 el.classList.remove('filter--selected'); 415 }) 416} 417 418function toggleCategoryFilter( selector ){ 419 420 console.info('toggleFilter', selector); 421 422 let toggles = document.querySelectorAll( selector ); 423 424 toggles.forEach(function(el){ 425 426 var target = el.getAttribute('data-bs-target'); 427 if (target) { 428 var targetEl = document.querySelector(target); 429 toggleHiddenFilterClass(targetEl); 430 toggleSelectedClass(el); 431 } 432 433 }) 434} 435 436 437 438 439// Function used to perform the custom actions once the page has loaded 440// e.g. trigger actions, slideshows etc etc. 441// We pass in the document manipulation API as "$" for interoperability 442// reasons, for example shoestring has the same core DOM functionality 443// as jQuery and have the same 444function isReadyJS( $ ){ 445 446 // Message to console 447 consoleWrapper("Running custom actions..."); 448 449 450 // Image Lazy Loader 451 if(typeof yall != "undefined"){ 452 yall({ 453 observeChanges: true, 454 events: { 455 load: function (event) { 456 var target = event.target; 457 if (!target.classList.contains("lazy")) { 458 if(target.nodeName == "IMG"){ 459 target.classList.add("lazy-loaded"); 460 if($(target).parent().hasClass("has-lazy")){ 461 $(target).parent().removeClass("has-lazy"); 462 } 463 } 464 /* if(target.classList.contains("bg-zoom")){ 465 $(target).prepend('<div class="e-bg-zoom"></div>'); 466 $(target).find(".e-bg-zoom").css( "background-image", $(target).css("background-image") ); 467 } */ 468 } 469 } 470 } 471 }); 472 } 473 474 // Image Dependant Plugins 475 476 $( window ).on( "load", function() { 477 478 if ($(".banner__info").length > 0){ 479 480 var h = 0; 481 482 $(".banner__info").each(function(){ 483 var tmpH = $(this).outerHeight(); 484 if (tmpH > h){ 485 h = tmpH; 486 } 487 }); 488 489 $(".banner__info").css({ "min-height": h+"px", "overflow": "hidden" }); 490 491 } 492 493 // JS-Slick 494if($(".slick-slider").length > 0){ 495 loadJS( "/js/libs/slick.min.js", function(){ 496 consoleWrapper("Loaded slick.min.js."); 497 $("[data-slick]").slick({ 498 "speed": 1000, 499 "autoplay":false, 500 "arrows":true, 501 "dots":false, 502 "swipeToSlide": true, 503 "nextArrow": '<a class="slider__prev" title="Previous" href="#"><span class="hide-visually">Previous</span></a>', 504 "prevArrow": '<a class="slider__next" title="Next" href="#"><span class="hide-visually">Next</span></a>', 505 customPaging: function(slider, i) { return $('<span class="slider__pager__item"><span class="hide-visually">'+i + 1+'</span></span>'); } 506 }); 507 }); 508}; 509 510// Cycle2 511if ($(".js-cycle-slideshow").length > 0){ 512 513 $(".js-cycle-slideshow").each(function(){ 514 $(this).css("min-height", $(this).height()+"px"); 515 $(this).css("overflow", "hidden"); 516 }); 517 518 loadJS( "/js/libs/jquery.cycle2.js", function(){ 519 520 consoleWrapper("Loaded jquery.cycle2.js."); 521 $(".js-cycle-slideshow").cycle(); 522 523 // loadJS( "js/libs/jquery.cycle2.carousel.js", function(){ 524 // consoleWrapper("Loaded jquery.cycle2.carousel.js."); 525 // $(".js-cycle-slideshow").cycle(); 526 // }) 527 528 setTimeout(function(){ 529 $(".js-cycle-slideshow").each(function(){ 530 $(this).css("min-height", ""); 531 $(this).css("overflow", ""); 532 }); 533 }, 500); 534 535 }); 536} 537 538 539if ($(".js-image").length > 0){ 540 loadJS( "/js/libs/js-image.js", function(){ 541 consoleWrapper("Loaded JS Image"); 542 }); 543} 544 545 546 547 }); 548 549 $(".nav").on("click", ".lvl-0-link[href='#']", function(event){ 550 event.preventDefault(); 551 var target = $(this).next(); 552 if($(target).hasClass("active")){ 553 $(this).next().removeClass("active"); 554 } else { 555 $(".lvl-1").removeClass("active"); 556 $(this).next().toggleClass("active"); 557 } 558 }); 559 560 561 562 563if ($('.js-wishlist').length > 0){ 564 loadJS( "/js/header-scripts/js-wishlist.js", function(){ 565 handleWishlists('.js-wishlist', 'heart__toggle'); 566 }); 567} 568 569if ($('.js-product-wishlist').length > 0){ 570 loadJS( "/js/header-scripts/js-wishlist.js", function(){ 571 handleWishlists('.js-product-wishlist', 'heart__Btn'); 572 }); 573} 574 575// if ($('.js-twitter-feed').length > 0) { 576// $.ajax({
577// url: '/scripts/twitter-code.php', 578// success: function(data) { 579// $('.js-twitter-feed').html(data); 580// }, 581// error: function(xhr, textStatus, errorThrown){ 582// console.log(errorThrown); 583// } 584// }); 585// } 586 587// if ($('.js-facebook-feed').length > 0) { 588// $.ajax({ 589// url: '/scripts/facebook-code.php', 590// success: function(data) { 591// $('.js-facebook-feed').html(data); 592// }, 593// error: function(xhr, textStatus, errorThrown){ 594// console.log(errorThrown); 595// } 596// }); 597// } 598 599// Fancybox 600if ($('.js-fancybox').length > 0){ 601 loadJS( "/js/libs/fancybox3/fancybox.min.js", function(){ 602 $('.js-fancybox').fancybox( 603 { 604 iframe: { 605 preload: false 606 }, 607 video: { 608 preload: false 609 } 610 } 611 ); 612 }); 613} 614 615 616// DoubleTapToGo 617// if ($(".nav").length > 0){ 618// loadJS( "/js/libs/doubletaptogo.js", function(){ 619// consoleWrapper("Loaded js/libs/doubletagtogo.js"); 620// $('.nav li:has(ul)').doubleTapToGo(); 621// }); 622// } 623 624 625if($(".grid").length > 0){ 626 loadJS( "/js/header-scripts/pods.js", function(){ 627 consoleWrapper("Loaded Pods JS"); 628 var podTimer = 0; 629 handlePods(podTimer, ".grid", ".pod"); 630 }); 631} 632 633if($(".concertina").length > 0){ 634 loadJS( "/js/header-scripts/concertina.js?10062021", function(){ 635 handleConcertina('.concertina'); 636 consoleWrapper("Loaded Concertina JS"); 637 }); 638} 639 640 641if($(".js-date").length > 0){ 642 loadJS( "/js/libs/jquery-ui/jquery-ui.min.js", function(){ 643 consoleWrapper("Loaded JQuery UI"); 644 $(".js-date").datepicker({ minDate: 0, dateFormat : "dd/mm/yy" }); 645 }); 646} 647 648if($(".js-checkbox").length > 0){ 649 loadJS( "/js/header-scripts/js-checkbox.js", function(){ 650 consoleWrapper("Loaded JS checkbox"); 651 setupJScheckbox(".js-checkbox"); 652 }); 653} 654 655if($(".js-label").length > 0){ 656 loadJS( "/js/header-scripts/placeholder.js", function(){ 657 consoleWrapper("Loaded JS Placeholder"); 658 HandleInputPlaceholder(".js-label"); 659 }); 660} 661 662if($(".js-fancylabel").length > 0){ 663 loadJS( "/js/header-scripts/fancyLabel.js", function(){ 664 consoleWrapper("Loaded JS Fancy Label"); 665 $(".js-fancylabel").fancyLabel(); 666 }); 667} 668 669if($(".js-select").length > 0){ 670 loadJS( "/js/header-scripts/js-select.js", function(){ 671 consoleWrapper("Loaded JS Select"); 672 }); 673} 674 675if($(".js-tabs").length > 0){ 676 loadJS( "/js/header-scripts/js-tabs.js", function(){ 677 consoleWrapper("Loaded JS Tabs"); 678 setupFieldsetTabs();
679 }); 680} 681 682if($(".js--sticky").length > 0){ 683 loadJS( "/js/header-scripts/js-sticky.js", function(){ 684 consoleWrapper("Loaded Sticky JS"); 685 setupJSSticky(); 686 }); 687} 688 689// Brochure JS 690if ($('#rb-form').length > 0){ 691 loadJS( "/js/header-scripts/brochure.js", function(){ 692 693 }); 694} 695 // Google Recaptcha 696 if ($(".g-recaptcha-response").length > 0){ 697 loadJS( "https://www.google.com/recaptcha/api.js?render=6LdVleQZAAAAAPQScn_AhP8O4J5oG3sUoGqBgBOo&badge=bottomleft", function(){ 698 consoleWrapper("Loaded Google Recapatcha"); 699 }); 700 } 701 702 // Set up event handling 703 setupEvents(); 704 705 706 707 708 709 $('.filter-open').on("click", function(e){ 710 $(".filter-wrap").slideToggle(500, function(){ 711 $(".filter-wrap").toggleClass("show-filter"); 712 }); 713 }); 714 715 $('.filter-panel .js-toggle-viewall').on('click', function(){ 716 var target = $(this).attr('data-id'); 717 var clickedButton = $(this); 718 if (typeof target !== 'undefined' && target != ''){ 719 $('#'+target).slideToggle(500, function(){ 720 if ($('#'+target).is(':visible')){ 721 $(clickedButton).text('View Some'); 722 } else { 723 $(clickedButton).text('View All'); 724 } 725 }); 726 } 727 return false; 728 }); 729 730 $('.js-filter-toggle').on('click', function(){ 731 console.info('Click'); 732 var target = $(this).attr('data-bs-target'); 733 734 if (typeof target !== 'undefined' && target != ''){ 735 736 targetEl = document.querySelector(target); 737 if (typeof targetEl != "undefined" && targetEl != null){ 738 739 if (targetEl.classList.contains('filter--hidden')){ 740 closeOtherSearchFilters( $(this).attr('id') ); 741 toggleCategoryFilter( '#' + $(this).attr('id') ); 742 } else { 743 toggleCategoryFilter( '#' + $(this).attr('id') ); 744 } 745 746 categoriesOpened = true; 747 } 748 749 } 750 return false; 751 }); 752 753 $(window).on('resize', function(){ 754 if ($('.filter-list').length > 0){ 755 adjustFiltersByScreenSize(); 756 } 757 }); 758 adjustFiltersByScreenSize(); 759 760 761 $('#js-products input').on('change', function(e){ 762 e.preventDefault(); 763 refreshProducts(); 764 }); 765 766 $('.filter-apply').on('click', function(e){ 767 e.preventDefault(); 768 refreshProducts(); 769 }); 770 771 $(".js-products-reset").on('click', function(event){ 772 event.preventDefault(); 773 774 let original = false; 775 let originalEl = document.querySelector( "#js-products input[name='original']" ); 776 if (originalEl){ 777 original = parseInt(originalEl.value); 778 } 779 780 if (original){ 781 $(".form-check-input[type='checkbox']:not([id='tag-checkbox-" + original + "'])").prop("checked", false); 782 } else { 783 $(".form-check-input[type='checkbox']").prop("checked", false); 784 } 785 786 refreshProducts(); 787 }); 788 789 // Captcha Forms 790 $(".g-recaptcha-response").each(function(){ 791 if($(this).parents("form").length){ 792 $(this).parents("form").first().on("submit", function(event){ 793 handleCaptcha(event); 794 }); 795 } 796 }); 797 798 $(".pod-tabs__menu__item__link").on("click", function(event){ 799 event.preventDefault(); 800 $(".pod-tabs__menu__item__link").removeClass("selected"); 801 $(".pod-tabs__item.selected").slideUp(); 802 $(".pod-tabs__item.selected").removeClass("selected"); 803 804 $($(this).attr("href")).addClass("selected"); 805 $($(this).attr("href")).slideDown(); 806 $(this).addClass("selected"); 807 }); 808 809 810 desktopSearch = Object.assign({}, searchHandler); 811 desktopSearch.init( ".qs-input", ".qs-results--desktop" ); 812 813 mobileSearch = Object.assign({}, searchHandler); 814 mobileSearch.init( ".qs-input-mob", ".qs-results--mobile" ); 815 816 817 818 819 820 821 // Custom code here 822 consoleWrapper("Finished custom actions..."); 823} 824 825 826 827 828var listTmp = Array(); 829var listTmp2 = Array(); 830var running = false; 831 832 833function adjustListRowSpacing(els, innerels){ 834 835 listTmp = Array(); 836 $(els).each(function(){ 837 838 if(innerels != undefined){ 839 listTmp.push($(this).find(innerels).first()); 840 } else { 841 listTmp.push($(this)); 842 } 843 844 if ($(this).css("margin-right") == "0px"){ 845 // Loop over the objects in listTmp and get tallest height. 846 var tallest = 0; 847 var h = 0; 848 for(var c = 0; c < listTmp.length; c++){
849 /* Need to reset their height each time to their calculated value */ 850 $(listTmp[c]).css("height", ""); 851 h = parseInt($(listTmp[c]).height()) + parseInt($(listTmp[c]).css("padding-top")) + parseInt($(listTmp[c]).css("padding-bottom")); 852 if (parseInt(h) > tallest){ 853 tallest = parseInt(h); 854 } 855 } 856 857 // Apply tallest height to all in listTmp 858 for(var c = 0; c < listTmp.length; c++){ 859 $(listTmp[c]).css("height", tallest + "px"); 860 } 861 862 // reset the array 863 listTmp = Array(); 864 } 865 866 if(listTmp.length > 0){ 867 for(var c = 0; c < listTmp.length; c++){ 868 $(listTmp[c]).css("height", ""); 869 } 870 } 871 }); 872 873 874 // If there are still items in the list, we need to loop over them performing a resize 875 if(listTmp.length > 0){ 876 877 var tallest = 0; 878 var h = 0; 879 for(var c = 0; c < listTmp.length; c++){ 880 /* Need to reset their height each time to their calculated value */ 881 $(listTmp[c]).css("height", ""); 882 h = parseInt($(listTmp[c]).height()) + parseInt($(listTmp[c]).css("padding-top")) + parseInt($(listTmp[c]).css("padding-bottom")); 883 if (parseInt(h) > tallest){ 884 tallest = parseInt(h); 885 } 886 } 887 888 // Apply tallest height to all in listTmp 889 for(var c = 0; c < listTmp.length; c++){ 890 $(listTmp[c]).css("height", tallest + "px"); 891 } 892 893 // reset the array 894 listTmp = Array(); 895 } 896} 897 898 899function handleListRowSpacing(timer, element, delay, innerelement){ 900 if( $(element).length ) { 901 902 adjustListRowSpacing(element, innerelement); 903 904 $(window).resize( function() { 905 clearTimeout( timer ); 906 timer = setTimeout( function() { 907 adjustListRowSpacing(element, innerelement); 908 909 }, delay ); 910 }); 911 } 912} 913 914 915function submitForm(){ 916 success = true; 917 918 var requiredElements = $('input[data-required], textarea[data-required]'); 919 920 var requiredTxtFields = Array(); 921 922 requiredElements.each(function(){ 923 requiredTxtFields.push($(this).attr("id")); 924 }); 925 926 for (f=0;f < requiredTxtFields.length; f++){ 927 928 var requiredField = "#" + requiredTxtFields[f]; 929 930 if($(requiredField).attr('data-required') == ""){ 931 if ($(requiredField).val() == ""){ 932 $(requiredField).addClass("fm-field-error"); 933 success = false; 934 } else { 935 $(requiredField).removeClass("fm-field-error"); 936 } 937 } else { 938 939 var dataValidation = $(requiredField).attr('data-required'); 940 var regex = ""; 941 942 switch(dataValidation){ 943 case "email": 944 regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/; 945 break; 946 947 case "phone": 948 regex = /^[- +()]*[0-9][- +()0-9]*$/; 949 break; 950 951 case "postcode": 952 regex = /^[A-Z]{1,2}[0-9]{1,2} ?[0-9][A-Z]{2}$/i; 953 break; 954 } 955 956 regex = new RegExp(regex); 957 958 if(!regex.test($(requiredField).val()) || $(requiredField).val() == "" ){ 959 $(requiredField).addClass("fm-field-error"); 960 success = false; 961 } else { 962 $(requiredField).removeClass("fm-field-error"); 963 } 964 } 965 966 } 967 968 var response = grecaptcha.getResponse(); 969 970 if(response.length == 0){ 971 if(success == true){ 972 alert("Please ensure the Google Capatcha is complete"); 973 } else { 974 alert("Please ensure the Google Capatcha, and application is complete"); 975 } 976 977 success = false; 978 } 979 980 if (success == false && response.length != 0){ 981 alert('Please ensure all of the required fields are completed. Thank you.'); 982 } 983 984 return success; 985} 986 987var innerLink = { 988 init: function(els){ 989 $(els).each(function(){ 990 991 if($(this).find("a").length > 0){ 992 // Add Event Handler 993 $(this).addClass("cursor-pointer"); 994 995 $(this).find("a").on("click", function(event){ 996 event.stopPropagation(); 997 }); 998 999 $(this).on("click", function(event){ 1000 consoleDebug("Triggering Link Click"); 1001 $(this).find("a")[0].click(); 1002 }); 1003 } 1004 }) 1005 } 1006} 1007 1008 1009 1010function refreshCategoryFilters(validTags){ 1011 1012 let original = false; 1013 let originalEl = document.querySelector( "#js-products input[name='original']" ); 1014 if (originalEl){ 1015 original = parseInt(originalEl.value); 1016 } 1017 1018 if (original){ 1019 $(".form-check:not(.original)").removeClass("disabled"); 1020 $(".form-check-input[type='checkbox']:not([id='tag-checkbox-" + original + "'])").prop("disabled", false); 1021 } else { 1022 $(".form-check").removeClass("disabled"); 1023 $(".form-check-input[type='checkbox']").prop("disabled", false); 1024 } 1025 1026 if(validTags && validTags.length){ 1027 $(".form-check-input[type='checkbox']").each(function(){ 1028 if(validTags.includes(parseInt(this.value))){ 1029 // OK! 1030 } else { 1031 this.disabled = true; 1032 this.parentElement.classList.add("disabled"); 1033 } 1034 }); 1035 } 1036} 1037 1038function refreshProducts(){
1039 var inputData = $('#js-products').serialize(); 1040 $.ajax('/?ajax=productlist&output=json&XDEBUG_TRIGGER=true', { 1041 data: inputData, 1042 method: 'POST', 1043 cache: false 1044 }) 1045 .done(function(data, textStatus, jqXHR){ 1046 if(typeof data == "object"){ 1047 1048 if(data.html){ 1049 $("#product-loadmore").remove(); 1050 $('#js-product-list-wrapper').html(data.html); 1051 } 1052 1053 if(data.total){ 1054 let phrase = `${data.total} product${data.total == 1 ? '' : 's'} found`; 1055 $(".js-result-count").html(phrase); 1056 } 1057 1058 if(data.validTags){ 1059 refreshCategoryFilters(data.validTags); 1060 } 1061 } else { 1062 $("#product-loadmore").remove(); 1063 $('#js-product-list-wrapper').html(data); 1064 } 1065 1066 try { 1067 1068 let filter = document.getElementById("js-products"); 1069 let checkboxes = document.querySelectorAll(".form-check-input[type='checkbox']"); 1070 let activeCheckboxes = document.querySelectorAll(".form-check-input[type='checkbox']:checked"); 1071 let checkedFilterTotals = document.querySelectorAll(".js-products-reset-totals"); 1072 let tags = {}; 1073 let categoryid = 0; 1074 1075 let categoryIdEl = document.getElementById("categoryid"); 1076 if(categoryIdEl){ 1077 categoryid = parseInt(categoryIdEl.value); 1078 } 1079 1080 if(filter){ 1081 1082 if(checkboxes){ 1083 for(let x = 0; x < checkboxes.length; x++){ 1084 let checkbox = checkboxes[x]; 1085 if(checkbox.checked && checkbox.dataset.category){ 1086 let category = checkbox.dataset.category; 1087 if(category){ 1088 if(!tags[category]){ tags[category] = [] } 1089 tags[category].push(checkbox.value); 1090 } 1091 } 1092 } 1093 } 1094 1095 if(typeof Cookies != "undefined"){ 1096 // Cookies.set("product-filters", JSON.stringify(tags), { expires: 1 }); 1097 Cookies.set("product-filters", JSON.stringify({ 1098 "tags": tags, 1099 "categoryid": categoryid 1100 })); 1101 } 1102 1103 if(checkedFilterTotals && activeCheckboxes){ 1104 for(let x = 0; x < checkedFilterTotals.length; x++){ 1105 let checkedFilterTotal = checkedFilterTotals[x]; 1106 checkedFilterTotal.innerHTML = "("+activeCheckboxes.length+")"; 1107 } 1108 } 1109 } 1110 1111 } catch (error) { 1112 console.error(error); 1113 } 1114 }) 1115 .fail(function(jqXHR, textStatus, errorThrown ){ 1116 console.log('Failed to refresh products: ' + textStatus); 1117 }); 1118} 1119 1120function handleSortChange( sortSelectorEl){ 1121 1122 console.info('Change event: sortSelectorEl.onchange()'); 1123 1124 let sortFieldEl = document.querySelectorAll('input#orderby'); 1125 if (sortFieldEl.length > 0){ 1126 1127 sortFieldEl.forEach(function(field){ 1128 field.value = sortSelectorEl.value; 1129 }); 1130 1131 refreshProducts(); 1132 } 1133 1134} 1135 1136 1137function handleCaptcha(event){ 1138 var target = $(event.target).find(".g-recaptcha-response").first(); 1139 var siteKey = $(target).data("sitekey"); 1140 if($(target).val() == ""){ 1141 event.preventDefault(); 1142 grecaptcha.ready(function() { 1143 grecaptcha.execute(siteKey, {action: 'submit'}).then(function(token) { 1144 $(target).val(token); 1145 $(event.target).unbind('submit').submit(); 1146 }); 1147 }); 1148 } else { 1149 return true; 1150 } 1151} 1152 1153var searchHandler = { 1154 searchSelector: ".qs-input", 1155 resultSelector: ".qs-results", 1156 timer: false, 1157 isSearching: false, 1158 1159 init: function( searchSelector, resultSelector ){ 1160 this.searchSelector = searchSelector; 1161 this.resultSelector = resultSelector; 1162 this.bind(); 1163 }, 1164 1165 bind:function(){ 1166 var searchTimer = false; 1167 $(this.searchSelector).on('change keyup', function(event){ 1168 var searchValue = $(event.target).val(); 1169 clearTimeout(searchHandler.timer); 1170 searchHandler.timer = setTimeout(function(){ 1171 searchHandler.search(searchValue.trim()); 1172 }, 500); 1173 }); 1174 }, 1175 1176 search:function(searchValue){ 1177 if(!this.isSearching){ 1178 1179 if(searchValue == ''){ 1180 $(this.resultSelector).html(''); 1181 $(this.resultSelector).addClass("empty"); 1182 } else { 1183 $.ajax('/?ajax=quicksearch', { 1184 data: 'q='+searchValue, 1185 method: 'post', 1186 cache: false, 1187 beforeSend: function(jqXHR){ 1188 searchHandler.isSearching = true; 1189 $(searchHandler.resultSelector).removeClass("empty"); 1190 $(searchHandler.resultSelector).addClass("is-loading"); 1191 } 1192 }) 1193 .done(function(data, textStatus, jqXHR){ 1194 searchHandler.renderSearchResults(data); 1195 }) 1196 .fail(function(jqXHR, textStatus, errorThrown ){ 1197 console.error(textStatus); 1198 }) 1199 .always(function(){ 1200 searchHandler.isSearching = false; 1201 $(searchHandler.resultSelector).removeClass("is-loading"); 1202 }); 1203 1204 // Trigger Virtual Pageview 1205 if (typeof gtag != "undefined"){ 1206 try { 1207 // TODO: Reinstate before going live 1208 // gtag('event', 'page_view', { 1209 // page_title: 'Search | Burlington Uniforms', 1210 // page_location: 'https://www.burlington-uniforms.co.uk/search', 1211 // page_path: '/search?q='+searchValue, 1212 // send_to: 'UA-39535513-1' 1213 // }); 1214 } catch (error) { 1215 console.error(error); 1216 } 1217 } 1218 1219 } 1220 } 1221 }, 1222 1223 renderSearchResults: function(data){ 1224 var searchResultsStr = '<p class="qs-noresults">Sorry, no results could be found.</p>'; 1225 var lastResultType = false; 1226 try { 1227 if(typeof data == "object" && Object.keys(data).length > 0){ 1228 searchResultsStr = '';
1229 Object.keys(data).forEach(function (key) { 1230 1231 var object = data[key]; 1232 1233 if (lastResultType == false || object.searchType != lastResultType){ 1234 if(lastResultType != false){ searchResultsStr +='</ul>'; } 1235 // searchResultsStr +='<ul class="qs-results__list"><h2 class="qs-results__list__title">'+object.searchType+' Results</h2>'; 1236 lastResultType = object.searchType; 1237 } 1238 1239 switch(object.searchType){ 1240 case "product": 1241 searchResultsStr += searchHandler.renderSearchResultsProduct(object); 1242 break; 1243 1244 case "category": 1245 searchResultsStr += searchHandler.renderSearchResultsCategory(object); 1246 break; 1247 1248 case "page": 1249 searchResultsStr += searchHandler.renderSearchResultsPage(object); 1250 break; 1251 } 1252 }); 1253 searchResultsStr += '</ul>'; 1254 } 1255 } catch (error) { 1256 console.error(error); 1257 } 1258 $(this.resultSelector).html(searchResultsStr); 1259 }, 1260 1261 renderSearchResultsProduct: function(object){ 1262 return '<li class="qs-results__item qs-results__item--product">'+ 1263 '<a class="qs-results__item__link" href="/product/'+object.urlslug+'">' + 1264 '<span class="qs-results__item__left">'+ 1265 '<img class="qs-results__item__image" src="/getfile/tn/0/crop/1/'+object.image+'" alt="" width="80" height="80" />'+ 1266 '</span>'+ 1267 '<span class="qs-results__item__right">'+ 1268 '<h3 class="qs-results__item__title">'+object.title+'</h3>'+ 1269 '<p class="qs-results__item__price">'+ 1270 '£'+object.price+ 1271 '</p>'+ 1272 '</span>'+ 1273 '</a>' + 1274 '</li>'; 1275 1276 1277 }, 1278 renderSearchResultsCategory: function(object){ 1279 return '<li class="qs-results__item qs-results__item--category">'+ 1280 '<a class="qs-results__item__link" href="/category/'+object.urlslug+'">' + 1281 '<span class="qs-results__item__left">'+ 1282 '<img class="qs-results__item__image" src="/getfile/tn/0/crop/1/'+object.image+'" alt="" width="80" height="80" />'+ 1283 '</span>'+ 1284 '<span class="qs-results__item__right">'+ 1285 '<h3 class="qs-results__item__title">'+object.title+'</h3>'+ 1286 (object.children > 0 ? 1287 '<p class="qs-results__item__price">'+ 1288 object.children + ' product' + (object.price == 1 ? '' : 's') + 1289 '</p>' : '' ) + 1290 '</span>'+ 1291 '</a>' + 1292 '</li>'; 1293 }, 1294 renderSearchResultsPage: function(object){ 1295 return '<li class="qs-results__item qs-results__item--page">'+ 1296 '<a class="qs-results__item__link" href="/'+object.urlslug+'">' + 1297 '<span class="qs-results__item__title">'+object.title+'</span>'+ 1298 '</a>' + 1299 '</li>'; 1300 }, 1301} 1302 1303function toggleClickInput(id){ 1304 var el = document.getElementById(id); 1305 if (el != null && typeof el != "undefined"){ 1306 el.onfocus = function(e) { 1307 if (e.target.value == e.target.defaultValue) e.target.value = ''; 1308 }; 1309 el.onblur = function(e) { 1310 if (e.target.value == '') e.target.value = e.target.defaultValue; 1311 }; 1312 } 1313} 1314 1315function changepricecost(price){ 1316 var plus = 0; 1317 $('#productform').find('.optioninput').each(function(n,element) { 1318 if ($(element).hasClass('optioninput')){ 1319 optionid2 = $(element).val(); 1320 if (optionid2 != "" && parseInt(optionid2) != 0){ 1321 // debugger; 1322 if(objoptions[optionid2]){ 1323 modifier_type = objoptions[optionid2]['modifier_type']; 1324 price_modifier = objoptions[optionid2]['price_modifier']; 1325 switch (modifier_type) { 1326 case '$': 1327 plus = plus + parseFloat(price_modifier); 1328 break; 1329 case '%': 1330 plus = plus + ((price + plus)/100)*parseFloat(price_modifier); 1331 break; 1332 } 1333 } 1334 } 1335 } 1336 }); 1337 1338 return price+plus; 1339} 1340 1341function changeprice(){ 1342 price = changepricecost(price); 1343 newprice = (price); 1344 newprice = '£' + newprice.toFixed(2); 1345 $("#prod-view-amount").html(newprice); 1346} 1347 1348function checkexceptions(){ 1349 1350 if (objexc){ 1351 1352 $(".product-chooser").show(); 1353 1354 let selectedOptions = []; 1355 let productForm = document.getElementById("productform"); 1356 let sizeWrapper = document.getElementById("variation-suboptions"); 1357 1358 if(sizeWrapper && productForm){ 1359 let optionInputs = productForm.querySelectorAll(".optioninput"); 1360 let sizeElements = sizeWrapper.querySelectorAll(".size--product-view"); 1361 let totalOptions = optionInputs.length; 1362 1363 if(totalOptions > 1 && sizeElements.length > 0){ 1364 for(let input of optionInputs){ 1365 if(input.dataset.layout != "suboptions"){ 1366 if(parseInt(input.value) > 0){ 1367 selectedOptions.push(parseInt(input.value)); 1368 } 1369 } 1370 } 1371 1372 if(selectedOptions.length == (totalOptions - 1)){
1373 // All Options are selected (minus suboptions which we don't care about) 1374 for(let sizeElement of sizeElements){ 1375 let input = sizeElement.querySelector(".js-product-input-number__input"); 1376 let optionid = parseInt(input.dataset.optionid); 1377 let allSelectedOptions = selectedOptions.concat([optionid]); 1378 let totalOptions = allSelectedOptions.length; 1379 let foundOptions = false; 1380 1381 for(const [key, exceptions] of Object.entries(objexc)){ 1382 let totalOptionsFound = 0; 1383 for(let option of allSelectedOptions){ 1384 for(let exception of exceptions){ 1385 if(exception == option){ 1386 totalOptionsFound += 1; 1387 break; 1388 } 1389 } 1390 } 1391 1392 if(totalOptionsFound === totalOptions){ 1393 foundOptions = true; 1394 break; 1395 } 1396 } 1397 1398 if(foundOptions){ 1399 sizeElement.classList.add("option-disabled"); 1400 input.disabled = true; 1401 } else { 1402 sizeElement.classList.remove("option-disabled"); 1403 input.disabled = false; 1404 } 1405 } 1406 } 1407 } 1408 } 1409 1410 } 1411} 1412 1413function numberWithCommas(x) { 1414 var regex = /\B(?=(\d{3})+(?!\d))/g; 1415 return x.toString().replace(regex, ","); 1416} 1417 1418function updateSummaryList(key, productObject, quantity){ 1419 1420 1421 console.info('updateSummaryList(): productObject', productObject) 1422 1423 quantity = parseInt(quantity); 1424 1425 if (isKeyInSummaryList(key)){ 1426 if (quantity == 0){ 1427 removeFromSummaryList(key); 1428 } else { 1429 $(".selection-list .selection").each(function(){ 1430 if ($(this).attr("data-key") == key){ 1431 $(this).find(".selection__quantity").html(quantity); 1432 1433 var qty = $(this).find(".selection__quantity"); 1434 1435 var newcost = parseFloat(quantity * productObject.cost); 1436 1437 $(this).find(".selection__cost").html( "£" + numberWithCommas(newcost.toFixed(2)) ); 1438 } 1439 }); 1440 } 1441 } else { 1442 // Add 1443 if (quantity > 0){ 1444 1445 var newcost = parseFloat(quantity * productObject.cost); 1446 1447 var colourSwatch = ''; 1448 if (productObject.swatch){ 1449 colourSwatch = '<span title="Selected colour" class="">' + productObject.swatch + '</span>'; 1450 } 1451 1452 var html = '<li data-key="' + key + '" class="selection">' + 1453 colourSwatch + 1454 '<span class="selection__name">' + productObject.summary + '</span>' + 1455 '<a href="#" class="selection__remove" onclick="removeFromSummaryList(\''+key+'\');refreshQuantityOptions();return false">remove</a>' + 1456 '<span class="selection__quantity">' + quantity + '</span>' + 1457 '<span class="selection__cost">£' + numberWithCommas(newcost.toFixed(2)) + '</span>' + 1458 '</li>'; 1459 1460 $(".selection-list").append(html); 1461 } 1462 } 1463 refreshTotals(); 1464} 1465 1466function isKeyInSummaryList(key){ 1467 var exists = false; 1468 $(".selection-list .selection").each(function(){ 1469 if ($(this).attr("data-key") == key){ 1470 exists = true; 1471 } 1472 }); 1473 return exists; 1474} 1475 1476 1477function removeFromSelectionArray(key){ 1478 if (selectionArray.length > 0){ 1479 // remove item 1480 for(var s = 0; s < selectionArray.length;s++){ 1481 if (selectionArray[s].key == key){ 1482 selectionArray.splice(s, 1); 1483 break; 1484 } 1485 } 1486 } 1487} 1488 1489function removeFromSummaryList(key){ 1490 $(".selection-list .selection").each(function(){ 1491 if ($(this).attr("data-key") == key){ 1492 $(this).remove(); 1493 } 1494 }); 1495 1496 // Also remove from underlying array 1497 removeFromSelectionArray(key); 1498 1499 refreshQuantityOptions(); 1500} 1501 1502function refreshQuantityOptions(){ 1503 1504 checkexceptions(false); 1505 1506 // Clear Ticks on sizes 1507 clearSelection(); 1508 1509 // Reset Quantity Values 1510 if($(".variation__quantity").length > 1){ 1511 $(".variation__quantity").each(function(){ 1512 $(this).val('0'); 1513 }); 1514 } 1515 1516 // Double-Check if already have sizes selected based on these options 1517 if($(".size--product-view").length > 0 && selectionArray.length > 0){ 1518 // Generate the keys excluding size. 1519 var optKey = []; 1520 var subOptionKey = $(".optioninput[data-layout='suboptions']").first().attr("name"); 1521 1522 if(typeof subOptionKey == "string"){ 1523 1524 $(".optioninput").each(function(){ 1525 if($(this).data("layout") != "suboptions"){ 1526 optKey.push($(this).val()); 1527 } 1528 }); 1529 var optKeyString = optKey.join("-"); 1530 1531 // Loop over the selected options 1532 selectionArray.forEach(function(selectedObject){ 1533 var selectedOption = true; 1534 1535 // Break up the key 1536 var keyParts = selectedObject.key.split("-"); 1537 1538 // Copy array 1539 var tKeyParts = selectedObject.key.split("-"); 1540 1541 // Check that we've got the same options selected.
1542 keyParts.forEach(function(key){ 1543 if(!optKey.includes(key)){ 1544 // Check that it's not a size. 1545 var isSubOption = false; 1546 1547 if(options[key]){ 1548 if(options[key].type == subOptionKey){ 1549 isSubOption = true; 1550 } 1551 } 1552 1553 if(!isSubOption){ 1554 selectedOption = false; 1555 return false; 1556 } 1557 } else { 1558 tKeyParts.splice(tKeyParts.indexOf(key), 1); 1559 } 1560 }); 1561 1562 // Options are selected correctly. 1563 if(selectedOption){ 1564 // We should be left with 1 key which is the sizsub-option. 1565 if(tKeyParts.length == 1){ 1566 if(options[tKeyParts[0]]){ 1567 if(options[tKeyParts[0]].type === subOptionKey){ 1568 $("#"+tKeyParts[0]).addClass("selected"); 1569 $("#qty" + tKeyParts[0]).val(selectedObject.qty); 1570 } 1571 } 1572 1573 } 1574 } 1575 }); 1576 } 1577 } 1578 1579 refreshTotals(); 1580} 1581 1582function doesKeyExistInSelectionArray(key){ 1583 if (selectionArray.length > 0){ 1584 for(var s = 0; s < selectionArray.length;s++){ 1585 if (key == selectionArray[s].key){ 1586 return s; 1587 } 1588 } 1589 } 1590 return false; 1591} 1592 1593function clearSelection(){ 1594 $('.variation--suboptions .selected').removeClass('selected'); 1595} 1596 1597function refreshTotals(){ 1598 var total = 0; 1599 var items = 0; 1600 1601 if (selectionArray.length > 0){ 1602 for(var s = 0; s < selectionArray.length;s++){ 1603 // console.table(selectionArray[s]); 1604 items = items + parseInt(selectionArray[s].qty); 1605 total = total + ( parseFloat(selectionArray[s].cost) * parseInt(selectionArray[s].qty) ); 1606 } 1607 1608 } 1609 1610 if (items > 0){ 1611 1612 $(".basket__subtotal button").prop('disabled', false); 1613 1614 } else { 1615 1616 $(".basket__subtotal button").prop('disabled', true); 1617 1618 } 1619 1620 $(".product-view__subtotal").html('£' + numberWithCommas(total.toFixed(2)) ); 1621 1622 $(".product-view__items").html( items + " items" ); 1623 1624 updateBasketSummaryState(); 1625} 1626 1627// Toggle a class on .basket__summary based on whether the 1628// selection list has any items in it. Used by CSS to hide 1629// the order summary block until the user has chosen something. 1630function updateBasketSummaryState(){ 1631 $(".basket__summary").each(function(){ 1632 var hasItems = $(this).find(".selection-list .selection").length > 0; 1633 $(this).toggleClass("basket__summary--has-items", hasItems); 1634 $(this).toggleClass("basket__summary--empty", !hasItems); 1635 }); 1636} 1637 1638 1639function isSizeDisabled(el){ 1640 if ($(el).parents(".size").hasClass("option-disabled")){ 1641 return true; 1642 } else { 1643 return false; 1644 } 1645} 1646 1647function updateColourName(selector, colourName){ 1648 $(selector).html(colourName); 1649 document.getElementById("active-colour-title").innerHTML = colourName.replace(/\([^)]*\)/g, ''); 1650} 1651 1652function updateColourPreview(selector, el, colourrel){ 1653 $(selector + " span").remove(); 1654 if( $(el).hasClass('jp') ) { 1655 $(selector).css("background-image", 'url("/getfile/' + colourrel + '")'); 1656 } 1657 if( $(el).hasClass('cc') ) { 1658 $(selector).css("background", colourrel); 1659 } 1660 if( $(el).hasClass('c2') ) { 1661 var pieces = colourrel.split('/'); 1662 let boxes = []; 1663 pieces.forEach((piece) => { 1664 boxes.push( '<span style="background:' + piece + ';"></span>' ); 1665 }) 1666 $(selector).html( boxes.join('') ); 1667 } 1668} 1669 1670function getSelectedOrFirstHash(){ 1671 let hash = ""; 1672 1673 let inputs = document.querySelectorAll(".optioninput:not(.excl-from-hash)"); 1674 if(inputs){ 1675 for(let x = 0; x < inputs.length; x++){ 1676 let input = inputs[x]; 1677 let value = false; 1678 1679 if(parseInt(input.value) > 0){ 1680 value = parseInt(input.value); 1681 } else { 1682 let parent = input.parentElement; 1683 if(parent){ 1684 let inputs = parent.querySelectorAll("input"); 1685 if(inputs){ 1686 for(let x = 0; x < inputs.length; x++){ 1687 let input = inputs[x]; 1688 if(input.classList.contains("optioninput")){ 1689 // Skip 1690 } else if(parseInt(input.value) > 0) { 1691 value = parseInt(input.value); 1692 break; 1693 } else if(input.dataset.optionid && parseInt(input.dataset.optionid) > 0){ 1694 value = parseInt(input.dataset.optionid); 1695 break; 1696 } 1697 } 1698 } 1699 } 1700 } 1701 1702 if(value){ 1703 if(hash != ""){ hash +="-" } 1704 hash += value; 1705 } 1706 1707 } 1708 } 1709 1710 return hash; 1711} 1712 1713function updateProductImage(){ 1714 try { 1715 let swiperElement = document.getElementById("product-main-images"); 1716 1717 if(swiperElement){ 1718 if(swiperElement.classList.contains("swiper-initialized") && swiperElement.swiper){ 1719 let hash = getSelectedOrFirstHash(); 1720 if(hash){ 1721 let selector = ".variant-image-"+hash; 1722 let element = swiperElement.querySelector(selector); 1723 1724 if(element && element.getAttribute("data-sli
1724de-index")){ 1725 let index = parseInt(element.getAttribute("data-slide-index")); 1726 swiperElement.swiper.slideTo(index); 1727 } 1728 } 1729 } 1730 } 1731 } catch (error) { 1732 console.error(error); 1733 } 1734} 1735 1736var selectionArray = []; 1737var updateFailed = false;(function(){ 1738 let concertinaCount = 0; 1739 1740 class Concertina extends HTMLElement { 1741 1742 static observedAttributes = ["active", "label", "icon", "id"]; 1743 wrapperClass = "native-concertina__content"; 1744 1745 constructor(){ 1746 super(); 1747 this.getConcertinaActive = this.getConcertinaActive.bind(this); 1748 this.setConcertinaActive = this.setConcertinaActive.bind(this); 1749 this.getChildren = this.getChildren.bind(this); 1750 this.handleHashChange = this.handleHashChange.bind(this); 1751 this.handleConcertinaActiveChange = this.handleConcertinaActiveChange.bind(this); 1752 } 1753 1754 getChildren(){ 1755 return this.children; 1756 } 1757 1758 getConcertinaActive(){ 1759 if(this.getAttribute("active") == "true"){ 1760 return true; 1761 } else { 1762 return false; 1763 } 1764 } 1765 1766 setConcertinaActive(value){ 1767 this.setAttribute("active", value); 1768 } 1769 1770 switchConcertinaActive(){ 1771 let value = this.getConcertinaActive(); 1772 this.setAttribute("active", !value); 1773 } 1774 1775 handleConcertinaActiveChange(){ 1776 let wrapper = this.querySelector("."+this.wrapperClass); 1777 1778 if (wrapper){ 1779 let active = this.getConcertinaActive(); 1780 let link = this.querySelector(".native-concertina__link"); 1781 if(active){ 1782 wrapper.style.height = wrapper.scrollHeight+"px"; 1783 link.classList.add("active"); 1784 } else { 1785 wrapper.style.height = "0px"; 1786 link.classList.remove("active"); 1787 } 1788 } 1789 } 1790 1791 setup(){ 1792 this.classList.add("native-concertina"); 1793 let id = this.getAttribute("id"); 1794 let label = this.getAttribute("label"); 1795 let icon = this.getAttribute("icon"); 1796 let toggleIcon = this.getAttribute("toggle-icon"); 1797 1798 if(!id){ 1799 id = "concertina-"+concertinaCount; 1800 concertinaCount++; 1801 this.setAttribute("id", id); 1802 } 1803 1804 let children = this.getChildren(); 1805 1806 if (children.length > 0) { 1807 // Generate additional HTML 1808 let wrapper = document.createElement("div"); 1809 wrapper.className = this.wrapperClass; 1810 for(let child of children){ 1811 wrapper.appendChild(child); 1812 } 1813 wrapper.style.height = "0px"; 1814 this.append(wrapper); 1815 } 1816 1817 let link = false; 1818 1819 if (children.length > 0) { 1820 1821 link = document.createElement("a"); 1822 link.className = "native-concertina__link"; 1823 link.innerHTML = label; 1824 link.setAttribute( "href", "#"+id); 1825 link.setAttribute( "data-toggle-icon", '/getfile/' + toggleIcon ); 1826 link.onclick = (event) => { 1827 event.preventDefault(); 1828 this.switchConcertinaActive(); 1829 } 1830 1831 } else { 1832 1833 link = document.createElement("a"); 1834 link.className = "native-concertina__link"; 1835 link.innerHTML = label; 1836 1837 } 1838 1839 1840 if(icon){ 1841 this.classList.add("has-icon"); 1842 let image = document.createElement("img"); 1843 image.src = icon; 1844 image.alt = ""; 1845 image.width = 50; 1846 image.height = 50; 1847 image.loading = "lazy"; 1848 link.prepend(image); 1849 } 1850 this.prepend(link); 1851 } 1852 1853 handleHashChange(){ 1854 let hash = window.location.hash.replace("#", ""); 1855 if(hash == this.getAttribute("id")){ 1856 this.setConcertinaActive(true); 1857 } 1858 } 1859 1860 connectedCallback() { 1861 setTimeout(() => { 1862 this.setup(); 1863 window.addEventListener("hashchange", this.handleHashChange); 1864 this.handleHashChange(); 1865 }); 1866 } 1867 1868 disconnectedCallback() { 1869 window.removeEventListener("hashchange", this.handleHashChange); 1870 } 1871 1872 adoptedCallback() { 1873 1874 } 1875 1876 attributeChangedCallback(name, oldValue, newValue) { 1877 if(name == "active"){ 1878 this.handleConcertinaActiveChange(); 1879 } 1880 } 1881 } 1882
1883 customElements.define("native-concertina", Concertina); 1884 console.log("Custom Element Defined: native-concertina"); 1885})(); 1886 1887 1888if (!Array.isArray) { 1889 Array.isArray = function(arg) { 1890 return Object.prototype.toString.call(arg) === '[object Array]'; 1891 }; 1892} 1893 1894function bookmark(){ 1895 if ((navigator.appName == 'Microsoft Internet Explorer') && (parseInt(navigator.appVersion) >= 4)){ 1896 window.external.AddFavorite(window.location,document.title); 1897 } else { 1898 alert('Press the CTRL + D keys to bookmark this page.'); 1899 } 1900} 1901 1902 1903 1904function setupSwiperInstance(selector, options, returnFirst = false){ 1905 let elements = document.querySelectorAll(selector); 1906 if(elements.length){ 1907 for(let x = 0; x < elements.length; x++){ 1908 let element = elements[x]; 1909 if(options.navigation){ 1910 if(options.navigation.nextEl){ 1911 if(typeof element.dataset.next != "undefined"){ 1912 options.navigation.nextEl = element.dataset.next; 1913 } 1914 } 1915 1916 if(options.navigation.prevEl){ 1917 if(typeof element.dataset.prev != "undefined"){ 1918 options.navigation.prevEl = element.dataset.prev; 1919 } 1920 } 1921 } 1922 1923 if(typeof element.dataset.space != "undefined"){ 1924 options.spaceBetween = parseInt(element.dataset.space); 1925 } 1926 1927 if(options.pagination){ 1928 if(options.pagination.el){ 1929 if(typeof element.dataset.pag != "undefined"){ 1930 options.pagination.el = element.dataset.pag; 1931 } 1932 } 1933 } 1934 1935 let swiperInstance = new Swiper(element, options); 1936 1937 if (returnFirst){ 1938 return swiperInstance; 1939 } 1940 } 1941 } 1942} 1943 1944function setupSwiper(){ 1945 1946 var swiperOptions = { 1947 loop: true, 1948 autoHeight: true, 1949 speed: 500, 1950 autoplay: { 1951 delay: 4500, 1952 disableOnInteraction: true 1953 }, 1954 1955 pagination: { 1956 el: ".swiper-pagination", 1957 dynamicBullets: false, 1958 type: 'bullets', 1959 clickable: true 1960 }, 1961 navigation: { 1962 nextEl: ".swiper-button-next", 1963 prevEl: ".swiper-button-prev", 1964 } 1965 }; 1966 1967 setupSwiperInstance('.slider__featured__collection', swiperOptions); 1968 1969 1970 var swiperOptions = { 1971 navigation: { 1972 nextEl: ".swiper-button-next", 1973 prevEl: ".swiper-button-prev", 1974 }, 1975 slidesPerView: 1, 1976 spaceBetween: 10, 1977 breakpoints: { 1978 992: { 1979 slidesPerView: 3, 1980 spaceBetween: 60 1981 } 1982 } 1983 }; 1984 setupSwiperInstance('.slider__pc', swiperOptions); 1985 1986 1987 var swiperOptions = { 1988 navigation: false, 1989 slidesPerView: 3, 1990 spaceBetween: 10, 1991 breakpoints: { 1992 992: { 1993 slidesPerView: 6 1994 1995 } 1996 } 1997 }; 1998 setupSwiperInstance('.partners__swiper', swiperOptions); 1999 2000 2001 //footer swiper options 2002 var swiperOptions = { 2003 autoplay: { 2004 delay: 2000, 2005 disableOnInteraction: true 2006 }, 2007 navigation: false, 2008 slidesPerView: 3, 2009 spaceBetween: 30, 2010 breakpoints: { 2011 992: { 2012 slidesPerView: 7, 2013 spaceBetween: 10, 2014 } 2015 } 2016 }; 2017 setupSwiperInstance('.footer__swiper', swiperOptions); 2018 2019 2020 var swiperOptions = { 2021 navigation: { 2022 nextEl: ".swiper-button-next", 2023 prevEl: ".swiper-button-prev", 2024 }, 2025 slidesPerView: 2, 2026 breakpoints: { 2027 1210: { 2028 slidesPerView: 3, 2029 spaceBetween: 10 2030 }, 2031 1850: { 2032 slidesPerView: 6, 2033 spaceBetween: 20 2034 } 2035 } 2036 }; 2037 setupSwiperInstance('.features__swiper', swiperOptions); 2038 2039 2040 var swiperOptions = { 2041 navigation: false, 2042 slidesPerView: 2, 2043 breakpoints: { 2044 1210: { 2045 slidesPerView: 3, 2046 spaceBetween: 10 2047 }, 2048 1850: { 2049 slidesPerView: 6, 2050 spaceBetween: 20 2051 } 2052 } 2053 }; 2054 setupSwiperInstance('.slider__pod-slider', swiperOptions); 2055 2056 2057 2058 2059 2060 2061 let thumbnailSliderEl = document.querySelector('.product-thumbnail-swiper'); 2062 let mainSliderEl = document.querySelector('.product-main-swiper'); 2063 2064 if (typeof thumbnailSliderEl != 'undefined' && typeof mainSliderEl != 'undefined'){ 2065 2066 var swiperThumbOptions = { 2067 loop: false, 2068 spaceBetween: 10, 2069 slidesPerView: 4, 2070 // freeMode: true, 2071 watchSlidesProgress: true, 2072 2073 direction: 'vertical' 2074 }; 2075 let thumbnailSlider = new Swiper( thumbnailSliderEl, swiperThumbOptions ); 2076 2077 2078 var swiperMainOptions = { 2079 loop: false, 2080 navigation: { 2081 nextEl: '.swiper-product-main-next', 2082 prevEl: '.swiper-product-main-prev' 2083 }, 2084 thumbs: { 2085 swiper: thumbnailSlider 2086 } 2087 }; 2088 let mainImageSlider = new Swiper( mainSliderEl, swiperMainOptions ); 2089 2090 2091 // mainImageSlider.on('slideChangeTransitionStart', function() { 2092 // thumbnailSlider.slideTo(mainImageSlider.activeIndex); 2093 // }); 2094 2095 // thumbnailSlider.on('transitionStart', function(){
2096 // mainImageSlider.slideTo(thumbnailSlider.activeIndex); 2097 // }); 2098 2099 } 2100 2101 2102 var swiperOptions = { 2103 slidesPerView: "auto", 2104 slidesPerGroupAuto: true, 2105 pagination: { 2106 el: ".swiper-pagination", 2107 dynamicBullets: false, 2108 type: 'bullets', 2109 clickable: true 2110 }, 2111 navigation: { 2112 nextEl: ".swiper-auto-button-next", 2113 prevEl: ".swiper-auto-button-prev", 2114 }, 2115 slideClass: "swiper-slide-auto" 2116 }; 2117 2118 setupSwiperInstance('.swiper-auto', swiperOptions); 2119 2120 2121} 2122 2123function hasSwiperLoaded(){ 2124 if (typeof setupSwiper != "undefined"){ 2125 setupSwiper(); 2126 } else { 2127 setTimeout(function(){ 2128 hasSwiperLoaded(); 2129 }, 250); 2130 } 2131} 2132 2133 2134 2135 2136 2137var widgetClickEventFired = false; 2138var AjaxTimer1Loading = 0; 2139 2140function setupEvents(){ 2141 consoleWrapper("Attaching events..."); 2142 2143 2144 hasSwiperLoaded(); 2145 2146 2147 // Toggle the navigation class 2148 $("#js-nav__toggle").on("click", function(){ 2149 $('.nav').toggleClass("menu__show"); 2150 $('#js-nav__toggle .bars').toggleClass("bars--open"); 2151 }); 2152 2153 $(".js-input-number__minus").on("click", function(e){ 2154 e.preventDefault(); 2155 2156 var el = $("#" + $(this).attr("data-target") ); 2157 // console.log(el); 2158 var newval = parseInt($(el).val()) - 1; 2159 if (newval < 1){ 2160 $(el).val(1); 2161 } else { 2162 $(el).val(newval); 2163 } 2164 // console.log("New value: " + $(el).val()); 2165 $(el).trigger("change"); 2166 }); 2167 2168 $(".js-input-number__plus").on("click", function(e){ 2169 e.preventDefault(); 2170 2171 var el = $("#" + $(this).attr("data-target") ); 2172 var newval = parseInt($(el).val()) + 1 2173 if (newval > 99){ 2174 $(el).val(99); 2175 } else { 2176 $(el).val(newval); 2177 } 2178 2179 $(el).trigger("change"); 2180 }); 2181 2182 $(".js-cart-qty").on("keyup change", function(e){ 2183 if ($(this).val() == ""){ 2184 $(this).val('1'); 2185 } 2186 var newval = parseInt($(this).val()); 2187 if (newval > 99){ 2188 $(this).val(99); 2189 } else { 2190 $(this).val(newval); 2191 } 2192 2193 $( $(this).attr("data-updatetarget") ).show(); 2194 2195 }); 2196 2197 2198 2199if (typeof exceptions != 'undefined'){ 2200 if (Array.isArray( exceptions )){ 2201 2202 console.log("Exceptions is an array, not a string:"); 2203 objexc = Array(); 2204 for (var prop in exceptions) { 2205 objexc[ prop ] = jQuery.parseJSON( exceptions[ prop ] ); 2206 checkexceptions(); 2207 } 2208 console.dir( objexc ); 2209 2210 } else { 2211 objexc = jQuery.parseJSON(exceptions); 2212 checkexceptions(); 2213 } 2214} 2215 2216 2217 2218if (typeof options != 'undefined'){ 2219 if (Array.isArray( options )){ 2220 2221 console.log("Options is an array, not a string:"); 2222 objoptions = Array(); 2223 for (var prop in options) { 2224 objoptions[ prop ] = jQuery.parseJSON( options[ prop ] ); 2225 val = $("input[name='basicprice']").val(); 2226 price = parseFloat(val); 2227 plus = 0; 2228 // changeprice($("#product-price")); 2229 } 2230 console.dir( objoptions ); 2231 2232 } else { 2233 objoptions = jQuery.parseJSON(options); 2234 val = $("input[name='basicprice']").val(); 2235 price = parseFloat(val); 2236 plus = 0; 2237 changeprice($("#product-price")); 2238 } 2239} 2240 2241 2242let objvars = {}; 2243 2244// Expand the variations array 2245if (typeof variations != 'undefined'){ 2246 objvars = jQuery.parseJSON(variations); 2247 console.info( 'Variation obj: ', objvars ); 2248} 2249 2250// Per product, assign a level to eacf class option, 2251// e.g. colour = 0, size = 1, length = 2 etc 2252$(".optioninput").each(function(index, item){ 2253 $(this).attr('data-level', index); 2254}); 2255 2256 2257 2258 2259function getPriceFromVariationArray( hash ){ 2260 if (objvars[hash]){ 2261 return objvars[hash].price; 2262 } else { 2263 return false; 2264 } 2265} 2266 2267function formatPriceDiff( newPrice, originalPrice ){ 2268 2269 if (newPrice == originalPrice){ 2270 return ''; 2271 } 2272 2273 // console.info('formatPriceDiff (new, original): ', newPrice, originalPrice); 2274 2275 let diff = parseFloat(newPrice) - parseFloat(originalPrice); 2276 if (diff > 0){ 2277 2278 let diffPC = (diff / originalPrice) * 100; 2279 decimalLow = diffPC - Math.floor(diffPC); 2280 decimalHigh = diffPC - Math.ceil(diffPC); 2281 if (decimalLow < 0.1){ 2282 2283 // console.info('(diff / originalPrice) * 100 decimal = ', decimalLow, decimalHigh, diffPC); 2284 return '(' + Math.floor(diffPC) + '%)'; 2285 2286 } else if (decimalHigh < 0.1){ 2287 2288 // console.info('(diff / originalPrice) * 100 decimal = ', decimalLow, decimalHigh, diffPC); 2289 return '(' + Math.ceil(diffPC) + '%)'; 2290 2291 } else { 2292 2293 // console.info('(diff / originalPrice) * 100 decimal = ', decimalLow, decimalHigh, diffPC); 2294 return '(+£' + diff.toFixed(2) + ')'; 2295 2296 } 2297 } else { 2298 return '(-£' + diff.toFixed(2) + ')'; 2299 } 2300} 2301 2302 2303 2304 2305let alreadySelected = []; 2306 2307 2308$(".product-colour-chooser").click(function(event) { 2309 event.preventDefault(); 2310 2311 colourclass = $(this).attr('data-class'); 2312 colourrel = $(this).attr('rel'); 2313 preview = $(".product-colour-preview"); 2314 chosenColour = $(this).attr("title"); 2315 2316 chosenCost = $(this).attr("data-cost"); 2317 2318 if(typeof $(this).data("modifier") != "undefined"){ 2319 chosenColour += ' ' + $(this).data("modifier"); 2320 } 2321 2322 if ($(this).hasClass('option-disabled')){ 2323 return false; 2324 } 2325 2326 document.getElementById('js-productcost').innerHTML = parseFloat(chosenCost).toFixed(2) 2327 2328 if (Array.isArray( options )){ 2329 productid = $(this).attr('data-productid'); 2330 $("input[name='"+colourclass+"[" + productid + "]']").val($(this).attr('id')); 2331 } else { 2332 $("input[name='"+colourclass+"']").val($(this).attr('id')); 2333 } 2334 2335 updateColourName('.current-colour-selection', chosenColour); 2336 2337 updateColourPreview('#js-colour-preview', $(this), colourrel); 2338 2339 refreshQuantityOptions(); 2340 2341 updateProductImage(); 2342}); 2343 2344$(".product-chooser").click(function(event) { 2345 2346 event.preventDefault(); 2347 2348 if ($(this).hasClass('option-disabled')){ 2349 return false; 2350 } else { 2351 2352 let optionid = event.target.getAttribute('id'); 2353 let productid = event.target.getAttribute('data-productid'); 2354 let level = $(this).siblings(".optioninput").first().attr("data-level"); 2355 2356 2357 $(this).parent().children('a').removeClass('selected'); 2358 $(this).addClass('selected'); 2359 2360 if(optionid){ 2361 $("input[name='" + objoptions[optionid]['type'] + "']").val(optionid); 2362 } 2363 2364 alreadySelected = []; 2365 2366 let variantionBlocks = $(".variation"); 2367 $(variantionBlocks).each(function(index, variantionBlock ){ 2368 let added = false; 2369 let blockOptions = $(variantionBlock).find(".product-chooser"); 2370 $(blockOptions).each(function( index, blockOption ){
2371 2372 if ($(blockOption).hasClass("selected")){ 2373 alreadySelected.push( $(blockOption).attr("id") ); 2374 added = true; 2375 } 2376 2377 }); 2378 2379 if (!added){ 2380 return false; 2381 } 2382 2383 }); 2384 2385 // console.info('Already selected: ', alreadySelected, alreadySelected.join('-')); 2386 2387 if (alreadySelected.length == variantionBlocks.length - 1){ 2388 2389 // console.info('Updating pricing on the last item', $(variantionBlocks).last()); 2390 2391 let variantionBlock = $(variantionBlocks).last(); 2392 let blockOptions = $(variantionBlock).find(".size"); 2393 $(blockOptions).each(function( index, blockOption ){ 2394 2395 let tmpHash = alreadySelected.join('-') + '-' + $(blockOption).attr("id"); 2396 if (newPrice = getPriceFromVariationArray(tmpHash)){ 2397 2398 console.info('blockOption: ' + tmpHash + ' new price: ', newPrice, $(blockOption)); 2399 2400 $(blockOption).attr('data-cost', newPrice); 2401 $(blockOption).find(".product__price-modifier").text( formatPriceDiff( newPrice, $("#js-productcost").text() ) ); 2402 } 2403 2404 }); 2405 } 2406 2407 checkexceptions($(this).attr('id')); 2408 2409 refreshQuantityOptions(); 2410 2411 } 2412}); 2413 2414 2415 2416 2417 2418$(".js-product-input-number__minus").on("click", function(e){ 2419 e.preventDefault(); 2420 2421 if ($(this).parents(".size").hasClass("option-disabled")){ 2422 return false; 2423 } 2424 2425 if ($(this).parents(".size-list")){ 2426 $(this).parents(".size-list").find(".optioninput").val( $(this).attr("data-optionid") ); 2427 } 2428 2429 var el = $("#" + $(this).attr("data-target") ); 2430 // console.log(el); 2431 var newval = parseInt($(el).val()) - 1; 2432 if (newval < 0){ 2433 $(el).val(0); 2434 $(this).parents(".size").removeClass("selected"); 2435 } else { 2436 $(this).parents(".size").addClass("selected"); 2437 $(el).val(newval); 2438 } 2439 // console.log("New value: " + $(el).val()); 2440 $(el).trigger("change"); 2441}); 2442 2443$(".js-product-input-number__plus").on("click", function(e){ 2444 e.preventDefault(); 2445 2446 if ($(this).parents(".size").hasClass("option-disabled")){ 2447 return false; 2448 } 2449 2450 $(this).parents(".size-list").find(".optioninput").val( $(this).attr("data-optionid") ); 2451 2452 var el = $("#" + $(this).attr("data-target") ); 2453 // console.log(el); 2454 var newval = parseInt($(el).val()) + 1 2455 if (newval > 99){ 2456 $(el).val(99); 2457 } else { 2458 $(el).val(newval); 2459 } 2460 if (newval > 0){ 2461 $(this).parents(".size").addClass("selected"); 2462 } else { 2463 $(this).parents(".size").removeClass("selected"); 2464 } 2465 // $(this).parents(".size").addClass("selected"); 2466 // console.log("New value: " + $(el).val()); 2467 $(el).trigger("change"); 2468}); 2469 2470$(".js-product-input-number__input").on("keyup change", function(e){ 2471 e.preventDefault(); 2472 2473 if ($(this).parents(".size").hasClass("option-disabled")){ 2474 return false; 2475 } 2476 2477 if ($(this).val() == ""){ 2478 $(this).val('0'); 2479 } 2480 2481 updateFailed = false; 2482 2483 // get the current combination of selected options 2484 2485 $(this).parents(".size-list").find(".optioninput").val( $(this).attr("data-optionid") ); 2486 2487 var newval = parseInt($(this).val()); 2488 if (newval > 99){ 2489 $(this).val(99); 2490 newval = 99; 2491 } else { 2492 $(this).val(newval); 2493 } 2494 2495 if (newval > 0){ 2496 2497 // Flag as selected 2498 $(this).parents(".size").addClass("selected"); 2499 2500 // Look up the selected parents objects to see if 2501 // any of them have modifiers. 2502 $(".optioninput").each(function(){ 2503 if ($(this).val() == 0){ 2504 updateFailed = true; 2505 } else { 2506 var o = $('#'+ $(this).val()); 2507 if (o == "undefined" || o == null || o == false || o == {}){ 2508 updateFailed = true; 2509 } else { 2510 // Re-factored Product Cost Calculation 2511 } 2512 } 2513 }); 2514 2515 if(updateFailed){ 2516 alert('Please ensure you have selected an option for each available.'); 2517 } 2518 2519 } 2520 2521 if (updateFailed){ 2522 $(this).val(0); 2523 $(this).parents(".size").removeClass("selected"); 2524 return false; 2525 } else { 2526 2527 price = parseFloat($("input[name='basicprice']").val()); 2528 2529 changeprice(); 2530 2531 var cost = price; 2532 2533 var els = e.target.closest('#productform').getElementsByClassName("optioninput"); 2534 if (els.length > 0){ 2535 2536 var key = ''; 2537 var prev = false; 2538 var summary = ""; 2539 var target = false; 2540 var qty = $(this).val(); 2541 2542 if (els.length > 0){ 2543 for(var eIndex = 0; eIndex < els.length; eIndex++){ 2544 target = $("#"+els[eIndex].value).first(); 2545 if($(target).attr("data-summary")){ 2546 if (prev){ 2547 key = key + "-"; 2548 summary = summary + ", "; 2549 } 2550 key = key + els[eIndex].value; 2551 summary = summary + $(target).attr("data-summary"); 2552 prev = true; 2553 } 2554 } 2555 } 2556 2557 if (summary == ''){ 2558 summary = document.getElementById('product-name').textContent; 2559 } 2560 2561 productObject = {}; 2562 productObject.productid = parseInt(document.getElementById('productid').value); 2563 productObject.key = key; 2564 productObject.qty = qty; 2565 2566 if (indexPrice = getPriceFromVariationArray(productObject.key)){ 2567 productObject.cost = parseFloat( indexPrice ).toFixed(2); 2568 } else { 2569 // fallback 2570 console.error('!!! Error : using fallback cost mechanism. No key found: ', productObject.key); 2571 productObject.cost = parseFloat( cost ).toFixed(2); 2572 } 2573 2574 productObject.summary = summary; 2575 2576 2577 productObject.swatch = false; 2578 if ($(".colour__link.selected").length > 0){ 2579 productObject.swatch = $(".colour__link.selected").html().replace('colour--product-view', 'colour--summary-view'); 2580 } 2581 2582 2583 var index = doesKeyExistInSelectionArray(key); 2584 if (index === false){ 2585 selectionArray.push(productObject); 2586 } else { 2587 selectionArray[index] = productObject; 2588 } 2589 2590 // console.log(selectionArray);
2591 2592 updateSummaryList( key, productObject, qty ); 2593 2594 refreshQuantityOptions(); 2595 2596 } 2597 } 2598 2599}); 2600 2601 2602 2603 2604 2605 2606 2607$('#productform').on('submit', function(e){ 2608 e.preventDefault(); 2609 2610 sizeOptions = document.getElementsByClassName("variation__quantity"); 2611 2612 if (selectionArray.length == 0 && sizeOptions.length == 0){ 2613 if (Object.keys(options).length > 0){ 2614 // options should be available, 2615 // but none have been selected. 2616 // debugger; 2617 var els = e.target.closest('#productform').getElementsByClassName("optioninput"); 2618 if (els.length > 0){ 2619 2620 var key = ''; 2621 var prev = false; 2622 var summary = ""; 2623 var target = false; 2624 var qty = 1; 2625 var cost = document.getElementById('js-productcost').innerHTML; 2626 2627 for(var eIndex = 0; eIndex < els.length; eIndex++){ 2628 if (prev){ 2629 key = key + "-"; 2630 summary = summary + ", "; 2631 } 2632 key = key + els[eIndex].value; 2633 target = $("#"+els[eIndex].value).first(); 2634 summary = summary + $(target).attr("data-summary"); 2635 prev = true; 2636 } 2637 2638 productObject = {}; 2639 productObject.productid = parseInt(document.getElementById('productid').value); 2640 productObject.key = key; 2641 productObject.qty = qty; 2642 productObject.cost = parseFloat( cost ).toFixed(2); 2643 productObject.summary = summary; 2644 2645 // debugger; 2646 2647 selectionArray.push(productObject); 2648 2649 // console.log(selectionArray); 2650 2651 // updateSummaryList( key, productObject, qty ); 2652 2653 // refreshQuantityOptions(); 2654 2655 } 2656 2657 } else { 2658 cost = document.getElementById('js-productcost').innerHTML; 2659 productObject = {}; 2660 productObject.productid = parseInt(document.getElementById('productid').value); 2661 productObject.key = ''; 2662 productObject.qty = 1; 2663 productObject.cost = parseFloat( cost ).toFixed(2); 2664 productObject.summary = 'No variations'; 2665 selectionArray.push(productObject); 2666 } 2667 } 2668 2669 if (selectionArray.length > 0){ 2670 $.ajax('/?ajax=cart&cartaction=add', { 2671 data: { 'products': selectionArray }, 2672 method: 'post', 2673 cache: false 2674 }) 2675 .done(function(data, textStatus, jqXHR){ 2676 $('.basket__summary').html(data); 2677 2678 if ($(".js-newcount").length > 0){ 2679 var itemsInBasket = parseInt($(".js-newcount").html()); 2680 $(".js-basketcount").html(itemsInBasket); 2681 } 2682 2683 selectionArray = []; 2684 2685 refreshQuantityOptions(); 2686 clearSelection(); 2687 refreshTotals(); 2688 }) 2689 .fail(function(jqXHR, textStatus, errorThrown ){ 2690 $('.basket__summary').prepend(textStatus); 2691 }); 2692 } else { 2693 alert('Please ensure you have selected a set of purchase options.'); 2694 } 2695 return false; 2696}); 2697 2698if (typeof options != "undefined" && !Array.isArray(options)){ 2699 options = JSON.parse(options); 2700 if (options.length == 0){ 2701 $('.basket__subtotal .variation__name__prefix, .basket__subtotal .product-view__subtotal, .basket__subtotal .product-view__items').hide(); 2702 } 2703} 2704 2705 2706$(".product-colour-chooser").first().trigger("click"); 2707 2708 2709 2710 2711 2712 2713 2714 2715$(".js-quickadd-input-number__minus").on("click", function(e){ 2716 e.preventDefault(); 2717 var el = $(this).parents('.pod--add-product').find("#" + $(this).attr("data-target") ); 2718 var newval = parseInt($(el).val()) - 1; 2719 if (newval < 0){ 2720 $(el).val(0); 2721 } else { 2722 $(el).val(newval); 2723 } 2724 $(el).trigger("change"); 2725}); 2726 2727$(".js-quickadd-input-number__plus").on("click", function(e){ 2728 e.preventDefault(); 2729 var el = $(this).parents('.pod--add-product').find("#" + $(this).attr("data-target") ); 2730 var newval = parseInt($(el).val()) + 1 2731 if (newval > 99){ 2732 $(el).val(99); 2733 } else { 2734 $(el).val(newval); 2735 } 2736 $(el).trigger("change"); 2737}); 2738 2739$(".js-quickadd-input-number__input").on("keyup change", function(e){ 2740 e.preventDefault(); 2741 if ($(this).val() == ""){ 2742 $(this).val('0'); 2743 } 2744 updateFailed = false; 2745 2746 var quickQty = parseInt($(this).val()); 2747 if (quickQty > 99){ 2748 $(this).val(99); 2749 quickQty = 99; 2750 } else { 2751 $(this).val(quickQty); 2752 } 2753 2754 let quickPrice = parseFloat($(this).attr("data-basicprice")); 2755 2756 quickadd_changeprice( $(this).parents('.pod--add-product'), quickPrice, quickQty ); 2757 2758}); 2759 2760function quickadd_changeprice( el, price, qty){ 2761 // price = changepricecost(price); 2762 price = (price * qty); 2763 newprice = '£' + price.toFixed(2); 2764 $(el).find(".js-quickcart-amount").html(newprice); 2765} 2766 2767 2768 2769 2770 2771 function loadMore(loadMoreLink, loadMoreTarget, loadMoreButtonID, loadM
2771oreParams, loadMoreCount){ 2772 2773 //var postData = $( ".form--filter" ).serialize(); 2774 // var postData = []; 2775 var AjaxTimer1 = 0; 2776 loadMoreParams = loadMoreParams 2777 //var currentHTML = ""; 2778 2779 if(AjaxTimer1Loading == 0){ 2780 2781 $.ajax({ 2782 url: loadMoreLink, 2783 data: loadMoreParams, 2784 type: "POST", 2785 cache: false, 2786 beforeSend: function(){ 2787 AjaxTimer1Loading = 1; 2788 $("#"+loadMoreButtonID).text('Loading...'); 2789 }, 2790 success: function(data) { 2791 AjaxTimer1Loading = 0; 2792 // debugger; 2793 if ($(data).filter('.product__wrapper').length >= loadMoreCount){ 2794 var currentPage = parseInt($("#"+loadMoreButtonID).attr("data-page")); 2795 var newPage = currentPage + 1; 2796 var currentLink = $("#"+loadMoreButtonID).attr("href"); 2797 2798 $("#"+loadMoreButtonID).attr("data-page", newPage); 2799 $("#"+loadMoreButtonID).attr("href", currentLink.replace('page='+parseInt(currentPage+1), 'page='+parseInt(newPage+1) ) ); 2800 $("#"+loadMoreButtonID).text('View more'); 2801 } else { 2802 $("#"+loadMoreButtonID).remove(); 2803 } 2804 $(loadMoreTarget).append(data); 2805 }, 2806 error: function(xhr, textStatus, errorThrown){ 2807 alert('Sorry, the products could not be retrieved, please refresh your page and try again or contact us.'); 2808 } 2809 }); 2810 } 2811 } 2812 2813 2814 $("body").on("click", ".js-load-more", function(event){ 2815 2816 event.preventDefault(); 2817 2818 var loadMoreLink = $(this).attr("data-link"); 2819 2820 var loadMoreButtonID = $(this).attr("id"); 2821 2822 var loadMoreTarget = $(this).attr("data-target"); 2823 2824 var loadMoreParams = $(this).attr("data-query"); 2825 2826 var loadMorePage = parseInt($(this).attr("data-page")); 2827 loadMoreParams = loadMoreParams + "&page=" + parseInt(loadMorePage + 1); 2828 2829 var loadMoreCount = parseInt($(this).attr("data-count")); 2830 2831 loadMore(loadMoreLink, loadMoreTarget, loadMoreButtonID, loadMoreParams, loadMoreCount); 2832 }); 2833 2834 2835 2836 toggleClickInput('q--branding'); 2837 2838 toggleClickInput('q--mob-branding'); 2839 2840 2841 toggleClickInput('q'); 2842 2843 2844 2845 function zoomImage(e){ 2846 var zoomer = e.currentTarget; 2847 e.offsetX ? offsetX = e.offsetX : offsetX = e.touches[0].pageX 2848 e.offsetY ? offsetY = e.offsetY : offsetX = e.touches[0].pageX 2849 x = offsetX/zoomer.offsetWidth*100 2850 y = offsetY/zoomer.offsetHeight*100 2851 zoomer.style.backgroundPosition = x + '% ' + y + '%'; 2852 } 2853 2854 if ($(".bg-zoom").length > 0){ 2855 $(".bg-zoom").each(function(){ 2856 $(this).prepend('<div class="e-bg-zoom"></div>'); 2857 $(this).find(".e-bg-zoom").css( "background-image", $(this).css("background-image") ); 2858 }) 2859 } 2860 2861 2862 $('#s_country, #b_country').on('change', function(e){ 2863 let selector = $(this).attr('data-target'); 2864 if ($(this).val() == ''){ 2865 $(selector).show(); 2866 } else { 2867 $(selector).hide(); 2868 } 2869 }); 2870 2871 2872 // $(".btn-zoom").on("click", function(event){ 2873 // event.preventDefault(); 2874 // $(this).text("Loading..."); 2875 // var wrap = '<a href="' + $(this).attr("href") + '" class="cloud-zoom" id="zoom1" rel="adjustX: 0, adjustY:0, position:\'inside\'"></a>'; 2876 // $(this).siblings("img").wrap(wrap); 2877 // if ($(".cloud-zoom").length > 0){ 2878 // $(".cloud-zoom").CloudZoom(); 2879 // $(this).hide(); 2880 // } else { 2881 // $(this).text("+ Zoom In"); 2882 // } 2883 // return false; 2884 // }); 2885 2886 2887 2888 2889 2890 2891 /* $(".widget:not(.widget--brochure)").on("click", function(e){ 2892 var el = $(this).find(".widget__link"); 2893 if (el.length > 0){ 2894 $(this).find(".widget__link").trigger("click"); 2895 } else { 2896 var el = $(this).find(".widget__titlelink"); 2897 if (el.length > 0){ 2898 if(typeof $(el).attr("href") != "undefined"){ 2899 window.location = $(this).find(".widget__titlelink").attr("href"); 2900 } 2901 } 2902 } 2903 }); */ 2904 2905 // Handle the resizing of the object 2906 // var widget_timer = 0; 2907 // handleListRowSpacing(widget_timer, ".widget", 20); 2908 2909 // Make links interact on parent click 2910 innerLink.init(".widget:not(.widget--brochure):not(.region)"); 2911 2912 document.addEventListener('scroll', (e) => { 2913 2914 lastKnownScrollPosition = window.scrollY; 2915 if (window.scrollY > 0){ 2916 document.body.classList.add("bu-scrolling"); 2917 } else { 2918 document.body.classList.remove("bu-scrolling"); 2919 } 2920 2921 }); 2922 2923 if (window.scrollY > 0 && !document.body.classList.contains("bu-scrolling")){ 2924 document.body.classList.add("bu-scrolling"); 2925 } 2926 2927 $("body").on("click", ".js--load--lo-news", function(event){ 2928 event.preventDefault(); 2929 let start = parseInt($(this).data("page")) + 1; 2930 let link = $(this).data("link"); 2931 let query = $(this).data("query"); 2932 $.ajax({
2933 url: "/news?ajax=ajax.stories"+(query ? "&"+query : ""), 2934 data: {start: start, link: link}, 2935 type: "POST", 2936 beforeSend: function(){ 2937 2938 }, 2939 success: function(data) { 2940 $(".js--load--lo-news").remove(); 2941 $("#lo-news-list").append(data); 2942 }, 2943 error: function(xhr, textStatus, errorThrown){ 2944 alert('Sorry, the news could not be retrieved, please try again later or contact us.'); 2945 } 2946 }); 2947 }); 2948 2949 consoleWrapper("Finished attaching events..."); 2950} 2951 2952 2953function toggleMobileFilters(selector){ 2954 if (selector !== ''){ 2955 let el = document.querySelector(selector); 2956 if (el.classList.contains('d-none')){ 2957 el.classList.remove('d-none'); 2958 } else { 2959 el.classList.add('d-none'); 2960 } 2961 } 2962 return false; 2963} 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974</script>
2974 2975 2976 2977
2978<script type="text/javascript"> 2979 2980// ---------------------------------------------------------------------- 2981// Loop over files, calling the loadJS function. Specify callback function so 2982// that we can test for critical path JavaScript and trigger post-load scripting 2983// ---------------------------------------------------------------------- 2984 2985for(c = 0; c < jsFiles.length; c++){ 2986 consoleWrapper("Loaded file..." + jsFiles[c]); 2987 loadJS( jsFiles[c], function(){ 2988 consoleWrapper("Loaded file."); isReady(); 2989 }); 2990} 2991 2992// ---------------------------------------------------------------------- 2993 2994</script>
2994 2995 2996 2997 2998 2999 3000<!-- Include Analytics Scripting --> 3001 3002 3003<!-- Include header-specific material --> 3004 3005 3006 3007<!-- Include banner header styling (if specified) --> 3008<style type="text/css">@media screen and (max-width:519px){ 3009 }@media screen and (min-width:520px) and (max-width:719px) { 3010 }@media screen and (min-width:720px) and (max-width:959px) { 3011 }@media screen and (min-width:960px) and (max-width:1279px){ 3012 }@media screen and (min-width:1280px), print { 3013 }</style> 3014 3015 3016 3017 3018
3019<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/lite/builds/browser.umd.js" integrity="sha256-E51D42vaVsANBKXRHBR5HCxzvJAzpC5XnvIEjny7Dh0=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 3019
3019
3020<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/instantsearch.production.min.js" integrity="sha256-ev+/eO2lcqeanteOezwkK4FfnLtzCtiM8QhExgHoxeM=" crossorigin="anonymous"></script>
3020 3021 3022 3023 3024 3025 3026<!-- Event snippet for Check Out Button conversion page 3027In your html page, add the snippet and call gtag_report_conversion when someone clicks on the chosen link or button. -->
3028<script> 3029function gtag_report_conversion( url, conversionType = 'conversion', sendto = 'AW-1071385503/L9DsCPL4wGsQn5fw_gM', conversionValue = 1.0, orderid = '', orderItems = false ) { 3030 gtag('event', conversionType, { 3031 'send_to': sendto, 3032 'value': conversionValue, 3033 'currency': 'GBP', 3034 'transaction_id': orderid 3035 }); 3036 return false; 3037} 3038</script>
3038 3039 3040<!-- Event snippet for Brochure Request CW conversion page 3041In your html page, add the snippet and call gtag_report_conversion when someone clicks on the chosen link or button. -->
3042<script> 3043function gtag_report_conversion_brochure(url) { 3044var callback = function () { if (typeof(url) != 'undefined') { window.location = url; } }; gtag('event', 'conversion', { 'send_to': 'AW-1071385503/p4xUCK-UxAQQn5fw_gM', 'value': 1.0, 'currency': 'GBP', 'event_callback': callback }); return false; } 3045</script>
3045 3046</head> 3047 3048<body class="lo-default lo-search" itemscope itemtype="http://schema.org/WebPage"> 3049 3050 3051 <!-- showFullUI = true --> 3052 3053 3054 <!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 3054-3055
3054 3055<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
3055GTM-T4MRWFG
vendor: 85 bytes, lines 3055-3056
3055" 3056height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
3057<!-- End Google Tag Manager (noscript) --> 3058
3059<script type="text/javascript" src="https://secure.leadforensics.com/js/4010.js" ></script>
3059 3060<noscript><img src="https://secure.leadforensics.com/4010.png" style="display:none;" /></noscript> 3061 3062 3063 3064 3065 <div class="page"> 3066 3067 3068 <a href="#main-content" class="hide-visually">jump to content</a> 3069 3070 3071 3072 3073 3074 3075 3076 <div class="sticky-top"> 3077 3078 <header class="region region--header "> 3079 <noscript> 3080 <div class="region region--noscript alert error br-none"> 3081 <div class="container container--noscript"> 3082 <p class="h4"><strong>JavaScript</strong></p> 3083 <p class="m-0">This site requires JavaScript to be enabled to operate correctly. Please enable it in your 3084 browser and reload the page.</p> 3085 </div> 3086 </div> 3087</noscript> 3088 3089 3090<div class="t-offwhite pt-1 pb-2 d-none d-lg-block"> 3091 <div class="container-xxxl "> 3092 3093 <div class="row justify-content-between align-items-center branding__nav t-default--fg "> 3094 3095 <div class="col"> 3096 3097 <ul class="p-0 m-0 ps-2"> 3098 3099 <li class="Header__contact__link "> 3100 3101 <a href="https://www.instagram.com/burlingtonuniforms/" class="p-1" target="_blank"> 3102 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-instagram" viewBox="0 0 16 16"> 3103 <path d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z" /> 3104 </svg> 3105 </a> 3106 3107 <a href="https://www.linkedin.com/company/burlington-uniforms-ltd/" class="p-1" target="_blank"> 3108 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-linkedin" viewBox="0 0 16 16"> 3109 <path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z" /> 3110 </svg> 3111 </a> 3112 3113 <a href="https://www.facebook.com/Burlington.Uniforms/" class="p-1" target="_blank"> 3114 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-facebook" viewBox="0 0 16 16"> 3115 <path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" /> 3116 </svg></a> 3117 3118 <a href="https://www.youtube.com/c/BurlingtonUniformsEnfield" class="p-1" target="_blank"> 3119 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-youtube" viewBox="0 0 16 16"> 3120 <path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z" /> 3121 </svg> 3122 </a> 3123 3124 3125 3126 </li> 3127 <li class="Header__contact__link "> 3128 <a href="tel:0208-443-6920">SALES: <b>0208 443 6920</b></a> 3129 </li> 3130 3131 </ul> 3132 3133 </div> 3134 <div class="col-6"> 3135 3136 <div class=" branding__nav__account pe-2"> 3137 3138 <ul class="topnav-list"> 3139 <li class="topnav"> 3140 <a href="/register" class="topnav__link">
3140Register</a> 3141 </li> 3142 <li class="topnav"> 3143 <a href="/logon" class="topnav__link">Login</a> 3144 </li> 3145 3146 <li class="topnav"> 3147 <a href="/wish-list" class="topnav__link"> 3148 Wishlist 3149 <svg width="15" height="15" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> 3150 <path d="M17.3666 3.84172C16.941 3.41589 16.4356 3.0781 15.8794 2.84763C15.3232 2.61716 14.727 2.49854 14.1249 2.49854C13.5229 2.49854 12.9267 2.61716 12.3705 2.84763C11.8143 3.0781 11.3089 3.41589 10.8833 3.84172L9.99994 4.72506L9.1166 3.84172C8.25686 2.98198 7.0908 2.49898 5.87494 2.49898C4.65908 2.49898 3.49301 2.98198 2.63327 3.84172C1.77353 4.70147 1.29053 5.86753 1.29053 7.08339C1.29053 8.29925 1.77353 9.46531 2.63327 10.3251L3.5166 11.2084L9.99994 17.6917L16.4833 11.2084L17.3666 10.3251C17.7924 9.89943 18.1302 9.39407 18.3607 8.83785C18.5912 8.28164 18.7098 7.68546 18.7098 7.08339C18.7098 6.48132 18.5912 5.88514 18.3607 5.32893C18.1302 4.77271 17.7924 4.26735 17.3666 3.84172V3.84172Z" stroke="#121659" stroke-linecap="round" stroke-linejoin="round"/> 3151 </svg> 3152 </a> 3153 </li> 3154 <li class="topnav"> 3155 <a href="/help-centre" class="topnav__link">Help</a> 3156 </li> 3157 <li class="topnav"> 3158 <a href="/faqs" class="topnav__link">FAQs</a> 3159 </li> 3160 3161 <li class="topnav"> 3162 3163 <a class="topnav__link" href="/cart"> Shopping Cart 3164 <span class="basket__icon"> 3165 <svg width="20" height="20" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"> 3166 <path d="M7.5 4.5L3.75 9.5V27C3.75 27.663 4.01339 28.2989 4.48223 28.7678C4.95107 29.2366 5.58696 29.5 6.25 29.5H23.75C24.413 29.5 25.0489 29.2366 25.5178 28.7678C25.9866 28.2989 26.25 27.663 26.25 27V9.5L22.5 4.5H7.5Z" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3167 <path d="M3.75 9.5H26.25" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3168 <path d="M20 14.5C20 15.8261 19.4732 17.0979 18.5355 18.0355C17.5979 18.9732 16.3261 19.5 15 19.5C13.6739 19.5 12.4021 18.9732 11.4645 18.0355C10.5268 17.0979 10 15.8261 10 14.5" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3169 </svg> 3170 3171 </span> 3172 </a> 3173 </li> 3174 3175 </ul> 3176 3177 </div> 3178 </div> 3179 </div> 3180 </div> 3181</div> 3182 3183 3184<div class="pt-2"> 3185 <div class="container-xxxl container--header"> 3186 3187 <div class="row align-items-center px-4 px-lg-0"> 3188 3189 <div class="col col-auto d-block d-lg-none text-start d-block d-lg-none p-0"> 3190 3191 <a data-bs-toggle="offcanvas" href="#mmenu" role="button" aria-controls="offcanvasMenu"> 3192 <svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"> 3193 <path d="M3.75 15H26.25" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3194 <path d="M3.75 7.5H26.25" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3195 <path d="M3.75 22.5H26.25" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3196 </svg> </a> 3197 3198 </div> 3199 3200 3201 <div class="col-8 col-lg-3 header__logo"> 3202 3203 <a class="header__logo-link" href="/"> 3204 <img class="logo__img" width="468" height="101" src="/getfile/design/2026/bu-50-years-logo.svg" 3205 alt="Burlington Uniforms" 3206 title="Burlington Uniforms (Home)" 3207 /> </a> 3208 3209 </div> 3210 3211 3212 <div class="col-2 col-lg col__searchbox d-none d-lg-block"> 3213 <div class="form form--branding algolia-quicksearch"> 3214 <div id="searchbox"></div> 3215 3216 </div> 3217 </div> 3218 3219 3220 <div class="col-2 col-lg-3 col__branding__content__Hook "> 3221 3222 <div class="branding__content__Hook d-none d-lg-block"> 3223 <img src="/getfile/design/burlington-strapline.svg" class="burlington-strapline" alt="When style and safety matter" /> 3224 </div> 3225 3226 <div class="d-block d-lg-none text-end p-0"> 3227 <a href="/cart"> 3228 <svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"> 3229 <path d="M7.5 4.5L3.75 9.5V27C3.75 27.663 4.01339 28.2989 4.48223 28.7678C4.95107 29.2366 5.58696 29.5 6.25 29.5H23.75C24.413 29.5 25.0489 29.2366 25.5178 28.7678C25.9866 28.2989 26.25 27.663 26.25 27V9.5L22.5 4.5H7.5Z" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3230 <path d="M3.75 9.5H26.25" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3231 <path d="M20 14.5C20 15.8261 19.4732 17.0979 18.5355 18.0355C17.5979 18.9732 16.3261 19.5 15 19.5C13.6739 19.5 12.4021 18.9732 11.4645 18.0355C10.5268 17.0979 10 15.8261 10 14.5" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3232 3233 3234 </svg> 3235 </a> 3236 </div> 3237 3238 </div> 3239 3240 </div> 3241 3242 </div> 3243</div> 3244 3245 3246<div class="row js-quicksearch-results t-vlgrey position-absolute w-100 d-none " style="z-index: 10;min-height:465px"> 3247 <div class="container-xxxl container--header pv-4"> 3248 3249 <div class="row gx-5 align-items-start qs-results qs-results--desktop"> 3250 3251 <div class="col-lg-6"> 3252 <p class="h4 mb-4">Suggested products</p> 3253 <div class="qs-results--products mb-3" id="hits"> 3254 </div> 3255 <div> 3256 <a href="/search?q=" class="btn btn--slim t-primary" id="hits-view-all"> 3257 View all results... 3258 </a> 3259 </div> 3260 </div> 3261 3262 <div class="col-lg-6"> 3263 <div class="row"> 3264 <div class="col" id="hits-categories-container"> 3265 <p class="h4 mb-4">Categories</p> 3266 <div class="qs-results--brands" id="hits-categories"> 3267 </div> 3268 </div> 3269 3270 <div class="col" id="hits-brands-container"> 3271 <p class="h4 mb-4">Brands</p> 3272 <div class="qs-results--pages" id="hits-brands"> 3273 </div> 3274 </div> 3275 3276 <div class="col" id="hits-pages-container"> 3277 <p class="h4 mb-4">Pages</p> 3278 <div class="qs-results--other" id="hits-pages"> 3279 </div> 3280 </div> 3281 </div> 3282 </div> 3283 3284 </div> 3285 3286 </div> 3287</div> 3288 3289 3290<div class="mobile__search__form d-block d-lg-none"> 3291 <form class="d-flex" role="search" action="/search" method="get" autocomplete="off"> 3292 <button class="mobile__search__form__btn mb-1 me-0 pe-0" type="submit"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3293 <path d="M11 19C15.4183 19 19 15.4183 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11C3 15.4183 6.58172 19 11 19Z" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3294 <path d="M21 21L16.65 16.65" stroke="#121659" stroke-linecap="round" stroke-linejoin="round" /> 3295 </svg> 3296 </button> 3297 <input class="form-control me-2 mobile__search__form__input " id="searchbox-mob" name="q" type="search" placeholder="Search products" aria-label="Search"> 3298 </form> 3299</div> 3300 3301 3302<div class="offcanvas offcanvas-start mobile__menu overflow-hidden p-0" tabindex="-1" id="mmenu"> 3303 <div class="offcanvas-header"> 3304 <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button> 3305 </div> 3306 <div class="offcanvas-body p-0 "> 3307 3308 <nav class="navbar mb-5 pt-0"> 3309 <div class="nav__list nav__list__mobile col-12"> 3310 3311 <ul id="nav-0" class="nav-0 uppercase"> 3312 <li class="nav-0__item d-flex justify-content-between"> 3313 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3314 href="/ "> 3315 Home 3316 3317 </a> 3318 3319 3320 </li><li class="nav-0__item d-flex justify-content-between"> 3321 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3322 href="/category/all "> 3323 Shop by Product 3324 3325 </a> 3326 3327 3328 </li><li class="nav-0__item has-children d-flex justify-content-between"> 3329 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3330 href="#nav-15" data-bs-toggle="collapse" role="button"> 3331 Shop by Category 3332 <a data-bs-toggle="collapse" role="button" 3333 href="#nav-15" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3334 <svg viewBox="0 0 24 24" fill="none" 3335 xmlns="http://www.w3.org/2000/svg"> 3336 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3337 </svg> 3338 </span></a> 3339 </a>
3340 <div id="nav-15" class="nav-1 nav--offcanvas collapse"> 3341 <div class="offcanvas-header"> 3342 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-15" href="#nav-15" role="button" aria-label="Close"> 3343 <svg viewBox="0 0 24 24" fill="none" 3344 xmlns="http://www.w3.org/2000/svg"> 3345 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3346 </svg> 3347 Back 3348 </a> 3349 </div> 3350 <div class="offcanvas-body p-0"> 3351 <ul class="m-0 p-0"> 3352 <li class="nav-1__item has-children d-flex justify-content-between"> 3353 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3354 href="/category/businesswear "> 3355 Businesswear 3356 <a data-bs-toggle="collapse" role="button" 3357 href="#nav-37" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3358 <svg viewBox="0 0 24 24" fill="none" 3359 xmlns="http://www.w3.org/2000/svg"> 3360 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3361 </svg> 3362 </span></a> 3363 </a> 3364 <div id="nav-37" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3365 <div class="offcanvas-header"> 3366 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-37" href="#nav-37" role="button" aria-label="Close"> 3367 <svg viewBox="0 0 24 24" fill="none" 3368 xmlns="http://www.w3.org/2000/svg"> 3369 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3370 </svg> 3371 Back 3372 </a> 3373 <!-- 3374 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-37" role="button" aria-label="Close"> 3375 <span class="hide-visually">Close</span> 3376 </a> 3377 --> 3378 </div> 3379 <div class="offcanvas-body p-0"> 3380 <ul class="m-0 p-0"> 3381 <li class="nav-2__item d-flex justify-content-between"> 3382 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3383 href="/category/suiting-collections "> 3384 Suiting Collections 3385 3386 </a> 3387 3388 3389 </li><li class="nav-2__item d-flex justify-content-between"> 3390 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3391 href="/category/made-in-britain "> 3392 Suiting and Blouses - Made in Britain 3393 3394 </a> 3395 3396 3397 </li><li class="nav-2__item d-flex justify-content-between"> 3398 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3399 href="/category/shirts-and-blouses "> 3400 Shirts and Blouses 3401 3402 </a> 3403 3404 3405 </li><li class="nav-2__item d-flex justify-content-between"> 3406 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3407 href="/category/casual-wear "> 3408 Casual Wear 3409 3410 </a> 3411 3412 3413 </li><li class="nav-2__item d-flex justify-content-between"> 3414 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3415 href="/category/knitwear "> 3416 Knitwear 3417 3418 </a> 3419 3420 3421 </li><li class="nav-2__item d-flex justify-content-between"> 3422 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3423 href="/category/outerwear "> 3424 Jackets and Outerwear 3425 3426 </a> 3427 3428 3429 </li><li class="nav-2__item d-flex justify-content-between"> 3430 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3431 href="/category/accessories-businesswear "> 3432 Accessories 3433 3434 </a> 3435 3436 3437 </li> 3438 </ul> 3439 </div> 3440 </div> 3441 3442 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3443 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3444 href="/category/workwear-and-ppe "> 3445 Workwear and PPE 3446 <a data-bs-toggle="collapse" role="button" 3447 href="#nav-38" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3448 <svg viewBox="0 0 24 24" fill="none" 3449 xmlns="http://www.w3.org/2000/svg"> 3450 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3451 </svg> 3452 </span></a> 3453 </a>
3454 <div id="nav-38" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3455 <div class="offcanvas-header"> 3456 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-38" href="#nav-38" role="button" aria-label="Close"> 3457 <svg viewBox="0 0 24 24" fill="none" 3458 xmlns="http://www.w3.org/2000/svg"> 3459 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3460 </svg> 3461 Back 3462 </a> 3463 <!-- 3464 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-38" role="button" aria-label="Close"> 3465 <span class="hide-visually">Close</span> 3466 </a> 3467 --> 3468 </div> 3469 <div class="offcanvas-body p-0"> 3470 <ul class="m-0 p-0"> 3471 <li class="nav-2__item d-flex justify-content-between"> 3472 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3473 href="/category/high-visibility "> 3474 High Visibility 3475 3476 </a> 3477 3478 3479 </li><li class="nav-2__item d-flex justify-content-between"> 3480 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3481 href="/category/high-visibility-ladies "> 3482 High Visibility Ladies 3483 3484 </a> 3485 3486 3487 </li><li class="nav-2__item d-flex justify-content-between"> 3488 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3489 href="/category/specialist "> 3490 Specialist 3491 3492 </a> 3493 3494 3495 </li><li class="nav-2__item d-flex justify-content-between"> 3496 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3497 href="/category/outerwear-workwear-thermals "> 3498 Outerwear, Workwear and Thermals 3499 3500 </a> 3501 3502 3503 </li><li class="nav-2__item d-flex justify-content-between"> 3504 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3505 href="/category/head-and-face-protection "> 3506 Head and Face Protection 3507 3508 </a> 3509 3510 3511 </li><li class="nav-2__item d-flex justify-content-between"> 3512 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3513 href="/category/hand-protection "> 3514 Hand Protection 3515 3516 </a> 3517 3518 3519 </li><li class="nav-2__item d-flex justify-content-between"> 3520 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3521 href="/category/fall-protection "> 3522 Fall Protection 3523 3524 </a> 3525 3526 3527 </li><li class="nav-2__item d-flex justify-content-between"> 3528 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3529 href="/category/body-protection "> 3530 Body Protection - Disposables 3531 3532 </a> 3533 3534 3535 </li><li class="nav-2__item d-flex justify-content-between"> 3536 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3537 href="/category/misc-accessories "> 3538 Accessories 3539 3540 </a> 3541 3542 3543 </li><li class="nav-2__item d-flex justify-content-between"> 3544 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3545 href="/category/medical-emergency "> 3546 Medical/Emergency 3547 3548 </a> 3549 3550 3551 </li> 3552 </ul> 3553 </div> 3554 </div> 3555 3556 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3557 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3558 href="/category/occupational-wear "> 3559 Professional Wear 3560 <a data-bs-toggle="collapse" role="button" 3561 href="#nav-43" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3562 <svg viewBox="0 0 24 24" fill="none" 3563 xmlns="http://www.w3.org/2000/svg"> 3564 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3565 </svg> 3566 </span></a> 3567 </a> 3568 <div id="nav-43" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3569 <div class="offcanvas-header"> 3570 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-43" href="#nav-43" role="button" aria-label="Close"> 3571 <svg viewBox="0 0 24 24" fill="none" 3572 xmlns="http://www.w3.org/2000/svg"> 3573 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3574 </svg> 3575 Back 3576 </a> 3577 <!-- 3578 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-43" role="button" aria-label="Close">
3579 <span class="hide-visually">Close</span> 3580 </a> 3581 --> 3582 </div> 3583 <div class="offcanvas-body p-0"> 3584 <ul class="m-0 p-0"> 3585 <li class="nav-2__item d-flex justify-content-between"> 3586 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3587 href="/category/security "> 3588 Security 3589 3590 </a> 3591 3592 3593 </li><li class="nav-2__item d-flex justify-content-between"> 3594 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3595 href="/category/healthcare "> 3596 Healthcare 3597 3598 </a> 3599 3600 3601 </li><li class="nav-2__item d-flex justify-content-between"> 3602 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3603 href="/category/catering "> 3604 Catering and Hospitality 3605 3606 </a> 3607 3608 3609 </li><li class="nav-2__item d-flex justify-content-between"> 3610 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3611 href="/category/beauty "> 3612 Beauty 3613 3614 </a> 3615 3616 3617 </li> 3618 </ul> 3619 </div> 3620 </div> 3621 3622 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3623 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3624 href="/category/footwear "> 3625 Footwear 3626 <a data-bs-toggle="collapse" role="button" 3627 href="#nav-45" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3628 <svg viewBox="0 0 24 24" fill="none" 3629 xmlns="http://www.w3.org/2000/svg"> 3630 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3631 </svg> 3632 </span></a> 3633 </a> 3634 <div id="nav-45" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3635 <div class="offcanvas-header"> 3636 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-45" href="#nav-45" role="button" aria-label="Close"> 3637 <svg viewBox="0 0 24 24" fill="none" 3638 xmlns="http://www.w3.org/2000/svg"> 3639 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3640 </svg> 3641 Back 3642 </a> 3643 <!-- 3644 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-45" role="button" aria-label="Close"> 3645 <span class="hide-visually">Close</span> 3646 </a> 3647 --> 3648 </div> 3649 <div class="offcanvas-body p-0"> 3650 <ul class="m-0 p-0"> 3651 <li class="nav-2__item d-flex justify-content-between"> 3652 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3653 href="/category/safety-boots "> 3654 Safety 3655 3656 </a> 3657 3658 3659 </li><li class="nav-2__item d-flex justify-content-between"> 3660 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3661 href="/category/tactical "> 3662 Tactical 3663 3664 </a> 3665 3666 3667 </li><li class="nav-2__item d-flex justify-content-between"> 3668 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3669 href="/category/occupational "> 3670 Occupational 3671 3672 </a> 3673 3674 3675 </li><li class="nav-2__item d-flex justify-content-between"> 3676 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3677 href="/category/non-safety "> 3678 Non-Safety 3679 3680 </a> 3681 3682 3683 </li><li class="nav-2__item d-flex justify-content-between"> 3684 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3685 href="/category/footwear-accessories "> 3686 Accessories 3687 3688 </a> 3689 3690 3691 </li> 3692 </ul> 3693 </div> 3694 </div> 3695 3696 </li> 3697 </ul> 3698 </div> 3699 </div> 3700 3701 </li><li class="nav-0__item d-flex justify-content-between"> 3702 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3703 href="/online-brochure "> 3704 Brochures 3705 3706 </a> 3707 3708 3709 </li><li class="nav-0__item has-children d-flex justify-content-between"> 3710 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3711 href="#nav-69" data-bs-toggle="collapse" role="button"> 3712 Services 3713 <a data-bs-toggle="collapse" role="button" 3714 href="#nav-69" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3715 <svg viewBox="0 0 24 24" fill="none" 3716 xmlns="http://www.w3.org/2000/svg"> 3717 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3718 </svg> 3719 </span></a> 3720 </a>
3721 <div id="nav-69" class="nav-1 nav--offcanvas collapse"> 3722 <div class="offcanvas-header"> 3723 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-69" href="#nav-69" role="button" aria-label="Close"> 3724 <svg viewBox="0 0 24 24" fill="none" 3725 xmlns="http://www.w3.org/2000/svg"> 3726 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3727 </svg> 3728 Back 3729 </a> 3730 </div> 3731 <div class="offcanvas-body p-0"> 3732 <ul class="m-0 p-0"> 3733 <li class="nav-1__item has-children d-flex justify-content-between"> 3734 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3735 href="#nav-199" data-bs-toggle="collapse" role="button"> 3736 Customer Experience 3737 <a data-bs-toggle="collapse" role="button" 3738 href="#nav-199" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3739 <svg viewBox="0 0 24 24" fill="none" 3740 xmlns="http://www.w3.org/2000/svg"> 3741 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3742 </svg> 3743 </span></a> 3744 </a> 3745 <div id="nav-199" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3746 <div class="offcanvas-header"> 3747 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-199" href="#nav-199" role="button" aria-label="Close"> 3748 <svg viewBox="0 0 24 24" fill="none" 3749 xmlns="http://www.w3.org/2000/svg"> 3750 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3751 </svg> 3752 Back 3753 </a> 3754 <!-- 3755 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-199" role="button" aria-label="Close"> 3756 <span class="hide-visually">Close</span> 3757 </a> 3758 --> 3759 </div> 3760 <div class="offcanvas-body p-0"> 3761 <ul class="m-0 p-0"> 3762 <li class="nav-2__item d-flex justify-content-between"> 3763 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3764 href="/customer-service "> 3765 Customer service 3766 3767 </a> 3768 3769 3770 </li><li class="nav-2__item d-flex justify-content-between"> 3771 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3772 href="/account-management "> 3773 Account management 3774 3775 </a> 3776 3777 3778 </li><li class="nav-2__item d-flex justify-content-between"> 3779 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3780 href="/ecommerce "> 3781 E-commerce 3782 3783 </a> 3784 3785 3786 </li><li class="nav-2__item d-flex justify-content-between"> 3787 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3788 href="/a-fully-managed-service "> 3789 Fully managed service 3790 3791 </a> 3792 3793 3794 </li><li class="nav-2__item d-flex justify-content-between"> 3795 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3796 href="/wardrobe-management "> 3797 Wardrobe Management 3798 3799 </a> 3800 3801 3802 </li><li class="nav-2__item d-flex justify-content-between"> 3803 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3804 href="/online-acount-management "> 3805 Customer Portal 3806 3807 </a> 3808 3809 3810 </li> 3811 </ul> 3812 </div> 3813 </div> 3814 3815 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3816 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3817 href="#nav-200" data-bs-toggle="collapse" role="button"> 3818 Personalisation 3819 <a data-bs-toggle="collapse" role="button" 3820 href="#nav-200" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3821 <svg viewBox="0 0 24 24" fill="none" 3822 xmlns="http://www.w3.org/2000/svg"> 3823 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3824 </svg> 3825 </span></a> 3826 </a> 3827 <div id="nav-200" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3828 <div class="offcanvas-header"> 3829 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-200" href="#nav-200" role="button" aria-label="Close"> 3830 <svg viewBox="0 0 24 24" fill="none" 3831 xmlns="http://www.w3.org/2000/svg"> 3832 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3833 </svg> 3834 Back 3835 </a> 3836 <!-- 3837 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-200" role="button" aria-label="Close">
3838 <span class="hide-visually">Close</span> 3839 </a> 3840 --> 3841 </div> 3842 <div class="offcanvas-body p-0"> 3843 <ul class="m-0 p-0"> 3844 <li class="nav-2__item has-children d-flex justify-content-between"> 3845 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3846 href="/branding "> 3847 Branding 3848 <a data-bs-toggle="collapse" role="button" 3849 href="#nav-72" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3850 <svg viewBox="0 0 24 24" fill="none" 3851 xmlns="http://www.w3.org/2000/svg"> 3852 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3853 </svg> 3854 </span></a> 3855 </a> 3856 <div id="nav-72" class="nav-3 nav--offcanvas collapse" data-mobilenavul=""> 3857 <div class="offcanvas-header"> 3858 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-72" href="#nav-72" role="button" aria-label="Close"> 3859 <svg viewBox="0 0 24 24" fill="none" 3860 xmlns="http://www.w3.org/2000/svg"> 3861 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3862 </svg> 3863 Back 3864 </a> 3865 <!-- 3866 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-72" role="button" aria-label="Close"> 3867 <span class="hide-visually">Close</span> 3868 </a> 3869 --> 3870 </div> 3871 <div class="offcanvas-body p-0"> 3872 <ul class="m-0 p-0"> 3873 <li class="nav-3__item d-flex justify-content-between"> 3874 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3875 href="/branding-corporate-ties-scarves "> 3876 Corporate Ties & Scarves 3877 3878 </a> 3879 3880 3881 </li><li class="nav-3__item d-flex justify-content-between"> 3882 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3883 href="/branding-embroidery "> 3884 Embroidery 3885 3886 </a> 3887 3888 3889 </li><li class="nav-3__item d-flex justify-content-between"> 3890 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3891 href="/branding-screen-printing "> 3892 Screen Printing 3893 3894 </a> 3895 3896 3897 </li><li class="nav-3__item d-flex justify-content-between"> 3898 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3899 href="/branding-heat-seal "> 3900 Heat Seal 3901 3902 </a> 3903 3904 3905 </li><li class="nav-3__item d-flex justify-content-between"> 3906 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3907 href="/branding-tabbing "> 3908 Tabbing 3909 3910 </a> 3911 3912 3913 </li> 3914 </ul> 3915 </div> 3916 </div> 3917 3918 </li><li class="nav-2__item d-flex justify-content-between"> 3919 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3920 href="/customisation "> 3921 Customisation 3922 3923 </a> 3924 3925 3926 </li> 3927 </ul> 3928 </div> 3929 </div> 3930 3931 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3932 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3933 href="#nav-71" data-bs-toggle="collapse" role="button"> 3934 Bespoke clothing 3935 <a data-bs-toggle="collapse" role="button" 3936 href="#nav-71" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3937 <svg viewBox="0 0 24 24" fill="none" 3938 xmlns="http://www.w3.org/2000/svg"> 3939 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3940 </svg> 3941 </span></a> 3942 </a> 3943 <div id="nav-71" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 3944 <div class="offcanvas-header"> 3945 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-71" href="#nav-71" role="button" aria-label="Close"> 3946 <svg viewBox="0 0 24 24" fill="none" 3947 xmlns="http://www.w3.org/2000/svg"> 3948 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3949 </svg> 3950 Back 3951 </a> 3952 <!-- 3953 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-71" role="button" aria-label="Close">
3954 <span class="hide-visually">Close</span> 3955 </a> 3956 --> 3957 </div> 3958 <div class="offcanvas-body p-0"> 3959 <ul class="m-0 p-0"> 3960 <li class="nav-2__item d-flex justify-content-between"> 3961 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3962 href="/uk-manufacturing "> 3963 UK Manufacturing 3964 3965 </a> 3966 3967 3968 </li><li class="nav-2__item d-flex justify-content-between"> 3969 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3970 href="/businesswear-and-hospitality "> 3971 Businesswear and Hospitality 3972 3973 </a> 3974 3975 3976 </li><li class="nav-2__item d-flex justify-content-between"> 3977 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3978 href="/workwear-and-ppe "> 3979 Workwear and PPE 3980 3981 </a> 3982 3983 3984 </li> 3985 </ul> 3986 </div> 3987 </div> 3988 3989 </li><li class="nav-1__item has-children d-flex justify-content-between"> 3990 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 3991 href="#nav-236" data-bs-toggle="collapse" role="button"> 3992 Recycling 3993 <a data-bs-toggle="collapse" role="button" 3994 href="#nav-236" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 3995 <svg viewBox="0 0 24 24" fill="none" 3996 xmlns="http://www.w3.org/2000/svg"> 3997 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 3998 </svg> 3999 </span></a> 4000 </a> 4001 <div id="nav-236" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 4002 <div class="offcanvas-header"> 4003 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-236" href="#nav-236" role="button" aria-label="Close"> 4004 <svg viewBox="0 0 24 24" fill="none" 4005 xmlns="http://www.w3.org/2000/svg"> 4006 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4007 </svg> 4008 Back 4009 </a> 4010 <!-- 4011 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-236" role="button" aria-label="Close"> 4012 <span class="hide-visually">Close</span> 4013 </a> 4014 --> 4015 </div> 4016 <div class="offcanvas-body p-0"> 4017 <ul class="m-0 p-0"> 4018 <li class="nav-2__item d-flex justify-content-between"> 4019 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4020 href="/burlingtons-recycling-service "> 4021 Recycling Service 4022 4023 </a> 4024 4025 4026 </li> 4027 </ul> 4028 </div> 4029 </div> 4030 4031 </li> 4032 </ul> 4033 </div> 4034 </div> 4035 4036 </li><li class="nav-0__item has-children d-flex justify-content-between"> 4037 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4038 href="#nav-48" data-bs-toggle="collapse" role="button"> 4039 About Us 4040 <a data-bs-toggle="collapse" role="button" 4041 href="#nav-48" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 4042 <svg viewBox="0 0 24 24" fill="none" 4043 xmlns="http://www.w3.org/2000/svg"> 4044 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4045 </svg> 4046 </span></a> 4047 </a>
4048 <div id="nav-48" class="nav-1 nav--offcanvas collapse"> 4049 <div class="offcanvas-header"> 4050 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-48" href="#nav-48" role="button" aria-label="Close"> 4051 <svg viewBox="0 0 24 24" fill="none" 4052 xmlns="http://www.w3.org/2000/svg"> 4053 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4054 </svg> 4055 Back 4056 </a> 4057 </div> 4058 <div class="offcanvas-body p-0"> 4059 <ul class="m-0 p-0"> 4060 <li class="nav-1__item has-children d-flex justify-content-between"> 4061 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4062 href="#nav-210" data-bs-toggle="collapse" role="button"> 4063 Company Information 4064 <a data-bs-toggle="collapse" role="button" 4065 href="#nav-210" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 4066 <svg viewBox="0 0 24 24" fill="none" 4067 xmlns="http://www.w3.org/2000/svg"> 4068 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4069 </svg> 4070 </span></a> 4071 </a> 4072 <div id="nav-210" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 4073 <div class="offcanvas-header"> 4074 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-210" href="#nav-210" role="button" aria-label="Close"> 4075 <svg viewBox="0 0 24 24" fill="none" 4076 xmlns="http://www.w3.org/2000/svg"> 4077 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4078 </svg> 4079 Back 4080 </a> 4081 <!-- 4082 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-210" role="button" aria-label="Close"> 4083 <span class="hide-visually">Close</span> 4084 </a> 4085 --> 4086 </div> 4087 <div class="offcanvas-body p-0"> 4088 <ul class="m-0 p-0"> 4089 <li class="nav-2__item d-flex justify-content-between"> 4090 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4091 href="/about-us "> 4092 About Us 4093 4094 </a> 4095 4096 4097 </li><li class="nav-2__item d-flex justify-content-between"> 4098 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4099 href="/message-from-the-md "> 4100 Message from the MD 4101 4102 </a> 4103 4104 4105 </li><li class="nav-2__item d-flex justify-content-between"> 4106 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4107 href="/why-choose-burlington-uniforms "> 4108 Why choose Burlington Uniforms 4109 4110 </a> 4111 4112 4113 </li><li class="nav-2__item d-flex justify-content-between"> 4114 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4115 href="/clientoverview "> 4116 Who we work with 4117 4118 </a> 4119 4120 4121 </li><li class="nav-2__item d-flex justify-content-between"> 4122 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4123 href="/case-studies "> 4124 Case Studies 4125 4126 </a> 4127 4128 4129 </li> 4130 </ul> 4131 </div> 4132 </div> 4133 4134 </li><li class="nav-1__item has-children d-flex justify-content-between"> 4135 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4136 href="#nav-211" data-bs-toggle="collapse" role="button"> 4137 Associations 4138 <a data-bs-toggle="collapse" role="button" 4139 href="#nav-211" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 4140 <svg viewBox="0 0 24 24" fill="none" 4141 xmlns="http://www.w3.org/2000/svg"> 4142 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4143 </svg> 4144 </span></a> 4145 </a> 4146 <div id="nav-211" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 4147 <div class="offcanvas-header"> 4148 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-211" href="#nav-211" role="button" aria-label="Close"> 4149 <svg viewBox="0 0 24 24" fill="none" 4150 xmlns="http://www.w3.org/2000/svg"> 4151 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4152 </svg> 4153 Back 4154 </a> 4155 <!-- 4156 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-211" role="button" aria-label="Close">
4157 <span class="hide-visually">Close</span> 4158 </a> 4159 --> 4160 </div> 4161 <div class="offcanvas-body p-0"> 4162 <ul class="m-0 p-0"> 4163 <li class="nav-2__item d-flex justify-content-between"> 4164 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4165 href="/memberships "> 4166 Memberships 4167 4168 </a> 4169 4170 4171 </li><li class="nav-2__item d-flex justify-content-between"> 4172 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4173 href="/frameworks "> 4174 Frameworks 4175 4176 </a> 4177 4178 4179 </li><li class="nav-2__item d-flex justify-content-between"> 4180 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4181 href="/certifications "> 4182 Certifications 4183 4184 </a> 4185 4186 4187 </li> 4188 </ul> 4189 </div> 4190 </div> 4191 4192 </li><li class="nav-1__item has-children d-flex justify-content-between"> 4193 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4194 href="#nav-212" data-bs-toggle="collapse" role="button"> 4195 Company Policies 4196 <a data-bs-toggle="collapse" role="button" 4197 href="#nav-212" class="sub__menu__btn"><span class="nav__item__mobile__last__btn "> 4198 <svg viewBox="0 0 24 24" fill="none" 4199 xmlns="http://www.w3.org/2000/svg"> 4200 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4201 </svg> 4202 </span></a> 4203 </a> 4204 <div id="nav-212" class="nav-2 nav--offcanvas collapse" data-mobilenavul=""> 4205 <div class="offcanvas-header"> 4206 <a class="btn-back" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-212" href="#nav-212" role="button" aria-label="Close"> 4207 <svg viewBox="0 0 24 24" fill="none" 4208 xmlns="http://www.w3.org/2000/svg"> 4209 <path d="M9 18L15 12L9 6" stroke="#9E1981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 4210 </svg> 4211 Back 4212 </a> 4213 <!-- 4214 <a class="btn-close" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nav-0" href="#nav-212" role="button" aria-label="Close"> 4215 <span class="hide-visually">Close</span> 4216 </a> 4217 --> 4218 </div> 4219 <div class="offcanvas-body p-0"> 4220 <ul class="m-0 p-0"> 4221 <li class="nav-2__item d-flex justify-content-between"> 4222 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4223 href="/company-policies "> 4224 Policies 4225 4226 </a> 4227 4228 4229 </li><li class="nav-2__item d-flex justify-content-between"> 4230 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4231 href="/ethical-commitments "> 4232 Ethical Commitments 4233 4234 </a> 4235 4236 4237 </li> 4238 </ul> 4239 </div> 4240 </div> 4241 4242 </li> 4243 </ul> 4244 </div> 4245 </div> 4246 4247 </li><li class="nav-0__item d-flex justify-content-between"> 4248 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4249 href="/news "> 4250 News 4251 4252 </a> 4253 4254 4255 </li><li class="nav-0__item d-flex justify-content-between"> 4256 <a class="nav__link__mobile sub__menu__container text-uppercase d-flex align-items-center" 4257 href="/contact-us "> 4258 Contact Us 4259 4260 </a> 4261 4262 4263 </li> 4264 </ul> 4265 <div class="d-block d-lg-none mobile-contact-info"> 4266 <ul class="m-0 p-0"> 4267 <li class="Header__contact__link px-0 mx-0"> 4268 <a href="tel:0208-443-6920">SALES: <b>0208 443 6920</b></a> 4269 </li> 4270 <br> 4271 <li class="Header__contact__link px-0 mx-0"> 4272 <a href="mailto:[email protected]">EMAIL: 4273 <b>[email protected]</b></a> 4274 </li> 4275 4276 </ul> 4277 4278 </div> 4279 4280 <ul class="mobile__sub__links pt-2"> 4281 <li> 4282 <a href="/register" class="mobile__sub__links">Register</a> 4283 </li> 4284 <li> 4285 <a href="/logon" class="mobile__sub__links">Login</a> 4286 </li> 4287 <li> 4288 <a href="/wish-list" class="mobile__sub__links">Wishlist</a> 4289 </li> 4290 <li> 4291 <a href="/help-centre" class="mobile__sub__links">Help</a> 4292 </li> 4293 <li> 4294 <a href="/faqs" class="mobile__sub__links">FAQs</a> 4295 </li> 4296 </ul> 4297 4298 </div> 4299 4300 <div class="d-block d-lg-none px-4"> 4301 <img class="d-inline-block mb-3" src="/getfile/design/2026/bu-50-years-logomark.svg" style="width:75px;height:auto" alt="" title="" /> 4302 </div> 4303 4304 4305 </nav> 4306 4307 4308 </div> 4309</div> </header> 4310 4311 <nav class="nav region region--nav nav__region"> 4312 4313<div class="container-xxxl d-none d-lg-block"> 4314 4315 <nav class="navbar navbar-expand-lg" > 4316 <button class="navbar-toggler" data-toggle="collapse" data-target="#navbarcollapse">
4317 <span class="navbar-toggler-icon"></span> 4318 </button> 4319 <div class="collapse navbar-collapse nav__list" id="navbarcollapse"> 4320 4321 <ul class="navbar-nav justify-content-between w-100"><li class="nav-item " > 4322 <a href="/" class="nav__link " > 4323 Home 4324 </a> 4325 4326 </li><li class="nav-item nav__dropdown" > 4327 <a href="/category/all" class="nav__link dropdown-toggle" aria-haspopup="true" role="button" data-bs-toggle="dropdown" aria-expanded="false" > 4328 Shop by Product 4329 </a> 4330 <ul class="dropdown-menu mega_menu m-0 animate slideIn"> 4331 <div class="container-xxxl"> 4332 <div class="row mb-5 ps-0"> 4333 <div class="col col--mega-item"> 4334 <ul> 4335 <li class="dropdown__heading mb-1"><span><span>Products</span></span></li> 4336 <li class="dropdown__link"><a href="/category/all?tags[product][]=2054">AED</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3866">Anoraks</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1668">Aprons</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2713">Bags</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1878">Bib and Brace</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1521">Blazers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1455">Blouses</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1858">Bodywarmers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2848">Boots</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1609">Cardigans</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3147">Chef Jackets</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2637">Chef's Hats</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1660">Chef's Trousers</a></li> 4337 </ul> 4338 </div> 4339<div class="col col--mega-item"> 4340 <ul> 4341 <li class="dropdown__heading mb-1"><span><span> </span></span></li> 4342 <li class="dropdown__link"><a href="/category/all?tags[product][]=3559">Chinos</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3622">Cleaning products</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1852">Coats</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1875">Coveralls</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1430">Dresses</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1911">Ear Defenders</a></li><li class="dropdown__link"><a href="/category/all?tags[feature][]=3882">Eco-Friendly</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1992">Fall Arrest Set</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1856">Fleeces</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3257">Gilet</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2032">Gloves</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2804">Goggles</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3880">Gore-Tex</a></li> 4343 </ul> 4344 </div> 4345<div class="col col--mega-item"> 4346 <ul> 4347 <li class="dropdown__heading mb-1"><span><span> </span></span></li> 4348 <li class="dropdown__link"><a href="/category/all?tags[product][]=2029">Hats</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2803">Helmets</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1862">Hoodies</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1989">Insoles</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1451">Jackets</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1606">Jumpers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2020">Knee Pads</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2821">Lights</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1917">Mask Filters</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3512">Maternity</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2688">Over Trousers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3157">Overshoes</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1882">Polos</a></li> 4349 </ul> 4350 </div> 4351<div class="col col--mega-item"> 4352 <ul> 4353 <li class="dropdown__heading mb-1"><span><span> </span></span></li> 4354 <li class="dropdown__link"><a href="/category/all?tags[product][]=1628">Raincoats</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1895">Safety Glasses</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1974">Safety Shoes</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1625">Scarves</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3146">Scrub Tops</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2979">Shell Tops</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1549">Shirts</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2868">Shoes</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1880">Shorts</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1432">Skirts</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2006">Socks</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3265">Softshells</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1795">Specialist Coveralls</a></li> 4355 </ul> 4356 </div> 4357<div class="col col--mega-item"> 4358 <ul> 4359 <li class="dropdown__heading mb-1"><span><span> </span></span></li> 4360 <li class="dropdown__link"><a href="/category/all?tags[product][]=1790">Specialist Jackets</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1792">Specialist Trousers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=3320">Suiting</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1865">Sweatshirts</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1603">T-Shirts</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1684">Tabards</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1623">Ties</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1600">Tops</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2872">Trainers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1437">Trousers</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1633">Tunics</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=1438">Waistcoats</a></li><li class="dropdown__link"><a href="/category/all?tags[product][]=2875">Wellington Boots</a></li> 4361 </ul> 4362 </div> 4363 </div> 4364 </div> 4365 </ul> 4366 </li><li class="nav-item nav__dropdown" > 4367 <a href="#" class="nav__link dropdown-toggle" aria-haspopup="true" role="button" data-bs-toggle="dropdown" aria-expanded="false" > 4368 Shop by Category 4369 </a> 4370 <ul class="dropdown-menu mega_menu m-0 animate slideIn"> 4371 <div class="container-xxxl"> 4372 <div class="row mb-5 ps-0"><div class="col col--mega-item"> 4373 <ul> 4374 <li class="dropdown__heading mb-1"> 4375 <a href="/category/businesswear" > 4376 Businesswear 4377 </a> 4378 </li> 4379 <li class="dropdown__link"><a href="/category/suiting-collections">Suiting Collections</a></li><li class="dropdown__link"><a href="/category/made-in-britain">Suiting and Blouses - Made in Britain</a></li><li class="dropdown__link"><a href="/category/shirts-and-blouses">Shirts and Blouses</a></li><li class="dropdown__link"><a href="/category/casual-wear">Casual Wear</a></li><li class="dropdown__link"><a href="/category/knitwear">Knitwear</a></li><li class="dropdown__link"><a href="/category/outerwear">Jackets and Outerwear</a></li><li class="dropdown__link"><a href="/category/accessories-businesswear">Accessories</a></li> 4380 </ul> 4381 </div><div class="col col--mega-item"> 4382 <ul> 4383 <li class="dropdown__heading mb-1"> 4384 <a href="/category/workwear-and-ppe" > 4385 Workwear and PPE 4386 </a> 4387 </li> 4388 <li class="dropdown__link"><a href="/category/high-visibility">High Visibility</a></li><li class="dropdown__link"><a href="/category/high-visibility-ladies">High Visibility Ladies</a></li><li class="dropdown__link"><a href="/category/specialist">Specialist</a></li><li class="dropdown__link"><a href="/category/outerwear-workwear-thermals">Outerwear, Workwear and Thermals</a></li><li class="dropdown__link"><a href="/category/head-and-face-protection">Head and Face Protection</a></li><li class="dropdown__link"><a href="/category/hand-protection">Hand Protection</a></li><li class="dropdown__link"><a href="/category/fall-protection">Fall Protection</a></li><li class="dropdown__link"><a href="/category/body-protection">Body Protection - Disposables</a></li><li class="dropdown__link"><a href="/category/misc-accessories">Accessories</a></li><li class="dropdown__link"><a href="/category/medical-emergency">Medical/Emergency </a></li> 4389 </ul> 4390 </div><div class="col col--mega-item"> 4391 <ul> 4392 <li class="dropdown__heading mb-1"> 4393 <a href="/category/occupational-wear" > 4394 Professional Wear 4395 </a> 4396 </li> 4397 <li class="dropdown__link"><a href="/category/security">Security</a></li><li class="dropdown__link"><a href="/category/healthcare">Healthcare</a></li><li class="dropdown__link"><a href="/category/catering">
4397Catering and Hospitality</a></li><li class="dropdown__link"><a href="/category/beauty">Beauty</a></li> 4398 </ul> 4399 </div><div class="col col--mega-item"> 4400 <ul> 4401 <li class="dropdown__heading mb-1"> 4402 <a href="/category/footwear" > 4403 Footwear 4404 </a> 4405 </li> 4406 <li class="dropdown__link"><a href="/category/safety-boots">Safety</a></li><li class="dropdown__link"><a href="/category/tactical">Tactical</a></li><li class="dropdown__link"><a href="/category/occupational">Occupational</a></li><li class="dropdown__link"><a href="/category/non-safety">Non-Safety</a></li><li class="dropdown__link"><a href="/category/footwear-accessories">Accessories</a></li> 4407 </ul> 4408 </div></div> 4409 </div> 4410 </ul> 4411 </li><li class="nav-item " > 4412 <a href="/online-brochure" class="nav__link " > 4413 Brochures 4414 </a> 4415 4416 </li><li class="nav-item nav__dropdown" > 4417 <a href="#" class="nav__link dropdown-toggle" aria-haspopup="true" role="button" data-bs-toggle="dropdown" aria-expanded="false" > 4418 Services 4419 </a> 4420 <ul class="dropdown-menu mega_menu m-0 animate slideIn"> 4421 <div class="container-xxxl"> 4422 <div class="row mb-5 ps-0"><div class="col col--mega-item"> 4423 <ul> 4424 <li class="dropdown__heading mb-1"> 4425 Customer Experience 4426 </li> 4427 <li class="dropdown__link"><a href="/customer-service">Customer service</a></li><li class="dropdown__link"><a href="/account-management">Account management</a></li><li class="dropdown__link"><a href="/ecommerce">E-commerce</a></li><li class="dropdown__link"><a href="/a-fully-managed-service">Fully managed service</a></li><li class="dropdown__link"><a href="/wardrobe-management">Wardrobe Management</a></li><li class="dropdown__link"><a href="/online-acount-management">Customer Portal</a></li> 4428 </ul> 4429 </div><div class="col col--mega-item"> 4430 <ul> 4431 <li class="dropdown__heading mb-1"> 4432 Personalisation 4433 </li> 4434 <li class="dropdown__link"><a href="/branding">Branding</a></li><li class="dropdown__link"><a href="/customisation">Customisation</a></li> 4435 </ul> 4436 </div><div class="col col--mega-item"> 4437 <ul> 4438 <li class="dropdown__heading mb-1"> 4439 Bespoke clothing 4440 </li> 4441 <li class="dropdown__link"><a href="/uk-manufacturing">UK Manufacturing</a></li><li class="dropdown__link"><a href="/businesswear-and-hospitality">Businesswear and Hospitality</a></li><li class="dropdown__link"><a href="/workwear-and-ppe">Workwear and PPE</a></li> 4442 </ul> 4443 </div><div class="col col--mega-item"> 4444 <ul> 4445 <li class="dropdown__heading mb-1"> 4446 Recycling 4447 </li> 4448 <li class="dropdown__link"><a href="/burlingtons-recycling-service">Recycling Service</a></li> 4449 </ul> 4450 </div></div> 4451 </div> 4452 </ul> 4453 </li><li class="nav-item nav__dropdown" > 4454 <a href="#" class="nav__link dropdown-toggle" aria-haspopup="true" role="button" data-bs-toggle="dropdown" aria-expanded="false" > 4455 About Us 4456 </a> 4457 <ul class="dropdown-menu mega_menu m-0 animate slideIn"> 4458 <div class="container-xxxl"> 4459 <div class="row mb-5 ps-0"><div class="col col--mega-item"> 4460 <ul> 4461 <li class="dropdown__heading mb-1"> 4462 Company Information 4463 </li> 4464 <li class="dropdown__link"><a href="/about-us">About Us</a></li><li class="dropdown__link"><a href="/message-from-the-md">Message from the MD</a></li><li class="dropdown__link"><a href="/why-choose-burlington-uniforms">Why choose Burlington Uniforms</a></li><li class="dropdown__link"><a href="/clientoverview">Who we work with</a></li><li class="dropdown__link"><a href="/case-studies">Case Studies</a></li> 4465 </ul> 4466 </div><div class="col col--mega-item"> 4467 <ul> 4468 <li class="dropdown__heading mb-1"> 4469 Associations 4470 </li> 4471 <li class="dropdown__link"><a href="/memberships">Memberships</a></li><li class="dropdown__link"><a href="/frameworks">Frameworks</a></li><li class="dropdown__link"><a href="/certifications">Certifications</a></li> 4472 </ul> 4473 </div><div class="col col--mega-item"> 4474 <ul> 4475 <li class="dropdown__heading mb-1"> 4476 Company Policies 4477 </li> 4478 <li class="dropdown__link"><a href="/company-policies">Policies</a></li><li class="dropdown__link"><a href="/ethical-commitments">Ethical Commitments</a></li> 4479 </ul> 4480 </div></div> 4481 </div> 4482 </ul> 4483 </li><li class="nav-item " > 4484 <a href="/news" class="nav__link " > 4485 News 4486 </a> 4487 4488 </li><li class="nav-item " > 4489 <a href="/contact-us" class="nav__link " > 4490 Contact Us 4491 </a> 4492 4493 </li></ul> 4494 </div> 4495 </nav> 4496 4497</div> </nav> 4498 4499 </div> 4500 4501 4502 4503 <div class="region region--main" id="main-content" itemprop="mainContentOfPage"> 4504 <!-- Selected layout "layout--search.php". --> 4505 4506 4507 <div class="region region--breadcrumbs pt-3 pb-3"> 4508 <div class="container-xxxl container--breadcrumbs container--centered container--content"> 4509 4510 <div class="breadcrumbs"> 4511 4512 <a href="/"><strong>Home</strong></a> / 4513 </div> 4514 4515 <div class="row align-items-center"> 4516 <div class="col"> 4517 4518 <h1 class="m-0">Search</h1> 4519 </div> 4520 </div> 4521 4522 4523 4524 </div> 4525 </div> 4526 4527 4528<div class="region region--content"> 4529 4530 <div class="container container--categories pt-4"> 4531 4532 <article class="article--default"> 4533 4534 <p>Search the site using the box below:</p> 4535<div class="user-form"> 4536 <div> 4537 <legend class="hide-visually">Search:</legend> 4538 <div class="mb-3 row"> 4539 <div class="col"> 4540 <div id="keyword"></div> 4541 </div> 4542 </div> 4543 </div> 4544</div> 4545 4546 4547<div class="row align-items-center mb-4"> 4548 <div class="col"> 4549 <h3 class="m-0">Product results</h3> 4550 </div> 4551 <div class="d-block d-lg-none col text-end"> 4552 <button class="btn btn--slim btn-secondary toggle-search-filters">+/- Filters</button> 4553 </div> 4554</div> 4555 4556<div class="row mt-lg-5 justify-content-center"> 4557 <div class="col-12 product-browser-filters" id="product-browser-filters"> 4558 4559 <ul class="filter-list list-unstyled p-0 border-bottom-subtle pb-4 mb-4"> 4560 4561 <li class="mb-0 position-relative" style="min-width: 95px">
4562 <span id="filter-btn-product" 4563 aria-role="button" 4564 class="btn btn-toggle js-filter-toggle d-inline-flex align-items-center border-0 collapsed w-100" 4565 data-bs-toggle-nope="collapse" 4566 data-bs-target="#product-filter" 4567 aria-expanded="false"> 4568 Product 4569 </span> 4570 <div class="category-tags filter--hidden" id="product-filter" style=""> 4571 <div id="search-product"></div> 4572 </div> 4573 </li> 4574 4575 <li class="mb-0 position-relative" style="min-width: 95px"> 4576 <span id="filter-btn-gender" 4577 aria-role="button" 4578 class="btn btn-toggle js-filter-toggle d-inline-flex align-items-center border-0 collapsed w-100" 4579 data-bs-toggle-nope="collapse" 4580 data-bs-target="#gender-filter" 4581 aria-expanded="false"> 4582 Gender 4583 </span> 4584 <div class="category-tags filter--hidden" id="gender-filter" style=""> 4585 <div id="search-gender"></div> 4586 </div> 4587 </li> 4588 4589 <li class="mb-0 position-relative" style="min-width: 95px"> 4590 <span id="filter-btn-colour" 4591 aria-role="button" 4592 class="btn btn-toggle js-filter-toggle d-inline-flex align-items-center border-0 collapsed w-100" 4593 data-bs-toggle-nope="collapse" 4594 data-bs-target="#colour-filter" 4595 aria-expanded="false"> 4596 Colour 4597 </span> 4598 <div class="category-tags filter--hidden" id="colour-filter" style=""> 4599 <div id="search-colour"></div> 4600 </div> 4601 </li> 4602 4603 <li class="mb-0 position-relative" style="min-width: 95px"> 4604 <span id="filter-btn-category" 4605 aria-role="button" 4606 class="btn btn-toggle js-filter-toggle d-inline-flex align-items-center border-0 collapsed w-100" 4607 data-bs-toggle-nope="collapse" 4608 data-bs-target="#category-filter" 4609 aria-expanded="false"> 4610 Category 4611 </span> 4612 <div class="category-tags filter--hidden" id="category-filter" style=""> 4613 <div id="search-category"></div> 4614 </div> 4615 </li> 4616 4617 <li class="mb-0 position-relative no-hide" style="min-width: 100px"> 4618 <span id="filter-btn-more" 4619 aria-role="button" 4620 class="btn d-inline-flex justify-content-between align-items-center border-0 collapsed w-100" 4621 data-bs-toggle="offcanvas" 4622 data-bs-target="#offcanvasExample" 4623 aria-controls="offcanvasExample" 4624 aria-expanded="false"> 4625 <span style="pointer-events:none">More</span> 4626 <svg class="ms-2" width="14" height="17" viewBox="0 0 14 17" fill="none" xmlns="http://www.w3.org/2000/svg"> 4627 <path d="M12.75 13.4164L8.08337 13.4164" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4628 <path d="M5.41663 13.4164L0.75 13.4164" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4629 <path d="M12.7499 8.08337L6.74994 8.08337" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4630 <path d="M4.08331 8.08337L0.75 8.08337" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4631 <path d="M12.7498 2.75L9.4165 2.75" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4632 <path d="M6.74995 2.75L0.75 2.75" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4633 <path d="M8.08337 15.4165L8.08337 11.4165" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4634 <path d="M4.08337 10.0834L4.08337 6.0834" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4635 <path d="M9.4165 4.75L9.4165 0.75003" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4636 </svg> 4637 </span> 4638 4639 <div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasExample" aria-labelledby="offcanvasExampleLabel"> 4640 <div class="offcanvas-header"> 4641 <h5 class="offcanvas-title" id="offcanvasExampleLabel">Product filters</h5> 4642 <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button> 4643 </div> 4644 <div class="offcanvas-body"> 4645 <ul class="category-tags category-tags--vertical" id="filter-more"> 4646 4647 </ul> 4648 </div> 4649 </div> 4650 4651 </li> 4652 4653 <li class="mb-0 position-relative no-hide" style="min-width: 95px">
4654 <span id="filter-btn-sort" 4655 aria-role="button" 4656 class="btn btn-toggle js-filter-toggle d-inline-flex align-items-center border-0 collapsed w-100" 4657 data-bs-toggle-nope="collapse" 4658 data-bs-target="#sort" 4659 aria-expanded="false"> 4660 Sort 4661 </span> 4662 <div class="category-tags filter--hidden" id="sort"> 4663 4664 <div id="search-sort"></div> 4665 4666 </div> 4667 </li> 4668 4669 4670 </ul> 4671 4672 4673 4674 </div> 4675 4676 <div class="col-12 text-center"> 4677 <div id="product-list" class="product-list row"></div> 4678 <div id="search-pagination"></div> 4679 </div> 4680</div> 4681 4682 4683 </article> 4684 4685 4686 4687<aside class="aside--default"> 4688 <div class="widget-region"> 4689 <!-- No Widgets Found--> 4690 </div> 4691</aside> 4692 4693 4694 </div> 4695</div> 4696 4697 4698<div class="region region--newsletter"> 4699 <div class="container"> 4700 4701 <div class="newsletter mt-5 mb-5 "> 4702 <div class="row justify-content-between text-lg-start text-center "> 4703 4704 <div class="col-lg-5 col-md-12 d-flex flex-column align-items-center align-items-lg-start newsletter__text"> 4705 4706 <h2 class="temp__h4 mt-2"> 4707 Sign up to our newsletter 4708 </h2> 4709 <div class="snippet " data-id="1"> 4710 <div class="snippet__content "> 4711 Get the latest news and offers. 4712Enter your email address below to receive the latest news and offers from Burlington Uniforms. 4713 </div> 4714 </div> 4715 <div class="newsletterLegal mt-auto"> 4716 <div class="snippet " data-id="2"> 4717 <div class="snippet__content "> 4718 Burlington Uniforms will not pass your data onto third parties. To find out more about how we use your data, please refer to our <a href="/privacy-statement">privacy policy & GDPR.</a> 4719 </div> 4720 </div> </div> 4721 4722 4723 </div> 4724 4725 <div class="col-lg-6 offset-lg-1 col-md-12 mt-4"> 4726 4727 <form action="https://burlington-uniforms.us3.list-manage.com/subscribe/post" method="POST" class="newsletter_signpForm" target="_blank"> 4728 <input type="hidden" name="u" value="158a36f29e458a2be55c184ea"> 4729 <input type="hidden" name="id" value="c1caed5baf"> 4730 4731 4732 <!-- people should not fill these in and expect good things --> 4733 <div class="field-shift d-none" aria-label="Please leave the following three fields empty" aria-hidden="true"> 4734 <label for="b_name">Name: </label> 4735 <input type="text" name="b_name" tabindex="-1" value="" placeholder="Freddie" id="b_name"> 4736 4737 <label for="b_email">Email: </label> 4738 <input type="email" name="b_email" tabindex="-1" value="" placeholder="[email protected]" id="b_email"> 4739 4740 <label for="b_comment">Comment: </label> 4741 <textarea name="b_comment" tabindex="-1" placeholder="Please comment" id="b_comment"></textarea> 4742 </div> 4743 4744 <div id="mergeTable" class="mergeTable"> 4745 4746 4747 <div class="mergeRow dojoDndItem mergeRow-email" id="mergeRow-0"> 4748 <div class="field-group input-group mb-3"> 4749 <span class="input-group-text newsletter___signup__icon"><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> 4750 <path d="M3.33333 3.3335H16.6667C17.5833 3.3335 18.3333 4.0835 18.3333 5.00016V15.0002C18.3333 15.9168 17.5833 16.6668 16.6667 16.6668H3.33333C2.41667 16.6668 1.66667 15.9168 1.66667 15.0002V5.00016C1.66667 4.0835 2.41667 3.3335 3.33333 3.3335Z" stroke="#9E1981" stroke-linecap="round" stroke-linejoin="round" /> 4751 <path d="M18.3333 5L10 10.8333L1.66667 5" stroke="#9E1981" stroke-linecap="round" stroke-linejoin="round" /> 4752 </svg> 4753 4754 </span> 4755 <input type="email" autocapitalize="off" autocorrect="off" name="MERGE0" id="MERGE0" size="25" value="" class="form-control newsletter___signup__input" placeholder="Email address" aria-label="enter your email address"> 4756 </div> 4757 4758 </div> 4759 4760 4761 4762 <div class="mergeRow dojoDndItem mergeRow-text" id="mergeRow-1"> 4763 <div class="field-group input-group mb-3">
4764 <span class="input-group-text newsletter___signup__icon"><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> 4765 <path d="M16.6667 17.5V15.8333C16.6667 14.9493 16.3155 14.1014 15.6904 13.4763C15.0652 12.8512 14.2174 12.5 13.3333 12.5H6.66667C5.78261 12.5 4.93477 12.8512 4.30964 13.4763C3.68452 14.1014 3.33333 14.9493 3.33333 15.8333V17.5" stroke="#9E1981" stroke-linecap="round" stroke-linejoin="round" /> 4766 <path d="M10 9.16667C11.8409 9.16667 13.3333 7.67428 13.3333 5.83333C13.3333 3.99238 11.8409 2.5 10 2.5C8.15905 2.5 6.66667 3.99238 6.66667 5.83333C6.66667 7.67428 8.15905 9.16667 10 9.16667Z" stroke="#9E1981" stroke-linecap="round" stroke-linejoin="round" /> 4767 </svg> 4768 </span> 4769 <input type="text" name="MERGE1" id="MERGE1" size="25" value="" class="form-control newsletter___signup__input me-3" placeholder="First name" aria-label="enter your first name"> 4770 4771 <div class="mergeRow dojoDndItem mergeRow-text w-50" id="mergeRow-2"> 4772 <div class="field-group input-group" > 4773 <input type="text" name="MERGE2" id="MERGE2" size="25" value="" class="form-control newsletter___signup__input" style="padding-left: 20px !important" placeholder="Last name" aria-label="enter your last name"> 4774 </div> 4775 4776 </div> 4777 </div> 4778 4779 </div> 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 <div class="mergeRow-emailFormat d-none"> 4792 <label>Preferred format</label> 4793 <div class="field-group groups"> 4794 <div class="interestgroup_field radio-group"> 4795 <label class="radio" for="EMAILTYPE_HTML"><input type="radio" name="EMAILTYPE" id="EMAILTYPE_HTML" value="html" checked=""><span>HTML</span></label> 4796 <label class="radio" for="EMAILTYPE_TEXT"><input type="radio" name="EMAILTYPE" id="EMAILTYPE_TEXT" value="text"><span>Plain-text</span></label> 4797 </div> 4798 </div> 4799 </div> 4800 4801 4802 4803 </div> 4804 4805 <div class="submit_container clear mt-3"> 4806 <input type="submit" class="formEmailButton btn ps-5 pe-5 mt-3 newsletter__signup__submit" name="submit" value="Subscribe" target="_blank"> 4807 </div> 4808 <input type="hidden" name="ht" value="968b4cce589319340fc7b4459e8fe8fb312fd07f:MTY4ODA1MTMxMS4zNDg4"> 4809 <input type="hidden" name="mc_signupsource" value="hosted"> 4810 </form> 4811 4812 </div> 4813 4814 </div> 4815</div> 4816 </div> 4817</div> 4818 </div> 4819 4820 4821 </div> 4822 4823 4824 4825 4826 <footer class="region region--footer t-white--fg t-navy"> 4827 4828<style> 4829 .footer__swiper .swiper-slide{ 4830 padding: 0px; 4831 } 4832 .footer__swiper { 4833 padding: 5px; 4834 } 4835</style> 4836<div class="t-gray" style="background-color: #E7E8EE;"> 4837<div class=" text-center footer__credentials__mobile py-4"> 4838 <h2 class="hide-visually">Accreditations</h2> 4839 <!-- swiper footer --> 4840 4841 4842 4843 <div class="swiper footer__swiper px-lg-0 container"> 4844 <div class="swiper-wrapper align-items-center"> 4845 <div class="swiper-slide"> 4846 <div class="credential"> 4847 <img src="/getfile/footer-icons-2023/crown-commercial-services-2023.png" loading="lazy" 4848 alt="Crown Commercial Services logo" title="Crown Commercial Services" /> 4849 </div> 4850 </div> 4851 4852 4853 <div class="swiper-slide"> 4854 <div class="credential"> 4855 <img src="/getfile/footer-icons-2023/bsif-2023.png" loading="lazy" alt="bsif logo" 4856 title="bsif Registered Safety Supplier" /> 4857 </div> 4858 </div> 4859 4860 <div class="swiper-slide"> 4861 <div class="credential"> 4862 <img src="/getfile/footer-icons-2023/cyber-e-2023.png" loading="lazy" 4863 alt="Cyber Essentials logo" title="Cyber Essentials" /> 4864 </div> 4865 </div> 4866 4867 <div class="swiper-slide"> 4868 <div class="credential"> 4869 <img src="/getfile/footer-icons-2023/joint-iso-2023.png" loading="lazy" 4870 alt="Joint-ISO logo" title="ISOQAR Registered" /> 4871 </div> 4872 </div> 4873 4874 <div class="swiper-slide"> 4875 <div class="credential"> 4876 <img src="/getfile/footer-icons-2023/espo-framework-2023.png" loading="lazy" 4877 alt="ESPO Framework logo" title="ESPO Framework" /> 4878 </div> 4879 </div> 4880 4881 4882 <div class="swiper-slide"> 4883 <div class="credential"> 4884 <img src="/getfile/footer-icons-2023/ypo-2023.png" loading="lazy" alt="ypo logo" 4885 title="ypo-2023" /> 4886 </div> 4887 </div> 4888 4889 4890 <div class="swiper-slide"> 4891 <div class="credential"> 4892 <img src="/getfile/footer-icons-2023/verifiedstamp-2023.png" loading="lazy" 4893 alt="RISQS Verified logo" title="RISQS Verified" /> 4894 </div> 4895 </div> 4896 4897 4898 4899 4900 </div> 4901 4902 </div> 4903 4904
4905 4906 <!-- swiper footer --> 4907</div> 4908</div> 4909 4910<div class="container-xxxl t-navy container--footer"> 4911 4912 4913 <div class="footer__logo "> 4914 <a href="/"><img src="/getfile/design/burlington-roundel.svg" loading="lazy" 4915 alt="Burlington - Creative Corporate Clothing" title="" /></a> 4916 </div> 4917 4918 4919 4920 4921 <div class="footer__copyright small "> 4922 4923 <p>© Burlington Uniforms Ltd 2026. All rights reserved. Company Reg No: 1195047. VAT Reg No: 429 7961 03.<br /> 4924 4925 4926 <div class="footer__links mb-3"> 4927 4928 <div> 4929 <p class="h5 mb-3">Policies</p> 4930 <div class="snippet " data-id="10"> 4931 <div class="snippet__content "> 4932 <ul> 4933<li class="footer__links-list"><a href="/return-refund-policy">Return Policy</a></li> 4934<li class="footer__links-list"><a href="/privacy-statement">Privacy Policy</a></li> 4935<li class="footer__links-list"><a href="/company-policies">Other Company Policies</a></li> 4936<li class="footer__links-list"><a href="/getfile/site_documents/bu-terms-and-conditions.pdf">Terms & Conditions</a></li> 4937</ul> 4938 </div> 4939 </div> </div> 4940 4941 <div> 4942 <p class="h5 mb-3">Help</p> 4943 <div class="snippet " data-id="11"> 4944 <div class="snippet__content "> 4945 <ul> 4946<li class="footer__links-list"><a href="/faqs">FAQs</a></li> 4947<li class="footer__links-list"><a href="/guide-to-ordering">Guide to Ordering</a></li> 4948<li class="footer__links-list"><a href="/cart">Secure Checkout</a></li> 4949<li class="footer__links-list"><a href="/help-centre">Help Centre</a></li> 4950</ul> 4951 </div> 4952 </div> </div> 4953 4954 <div> 4955 <p class="h5 mb-3">Get in touch</p> 4956 <div class="snippet " data-id="12"> 4957 <div class="snippet__content "> 4958 <ul> 4959<li class="footer__links-list"><a href="/contact-us">Contact Information</a></li> 4960</ul> 4961 </div> 4962 </div> </div> 4963 4964 </div> 4965 4966 4967 4968 <p><a href="https://www.waters-creative.co.uk" target="_blank" rel="noopener">Website designed and developed 4969 by WATERS</a></p> 4970 4971 <div class="footer__social-icon-list d-flex justify-content-center"> 4972 4973 <a href="https://www.instagram.com/burlingtonuniforms/" class="p-1 text-decoration-none" target="_blank"> 4974 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-instagram" viewBox="0 0 16 16"> 4975 <path d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zm-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334z" /> 4976 </svg> 4977 </a> 4978 4979 <a href="https://www.linkedin.com/company/burlington-uniforms-ltd/" class="p-1 text-decoration-none" target="_blank"> 4980 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-linkedin" viewB
4980ox="0 0 16 16"> 4981 <path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 0 1 .016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z" /> 4982 </svg> 4983 </a> 4984 4985 <a href="https://www.facebook.com/Burlington.Uniforms/" class="p-1 text-decoration-none" target="_blank"> 4986 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-facebook" viewBox="0 0 16 16"> 4987 <path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" /> 4988 </svg></a> 4989 4990 <a href="https://www.youtube.com/c/BurlingtonUniformsEnfield" class="p-1 text-decoration-none" target="_blank"> 4991 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-youtube" viewBox="0 0 16 16"> 4992 <path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 0 1 7.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z" /> 4993 </svg> 4994 </a> 4995 4996 4997 4998 </div> 4999 </div> 5000 5001</div> 5002 5003 5004
5004<script> 5005 function loadAlgoliaSearch(){ 5006 var script = document.createElement('script'); 5007 script.src = '/js/libs/algolia/search.js?v=4.6'; 5008 script.async = true; 5009 document.body.appendChild(script); 5010 console.info('Loaded main search handler'); 5011 } 5012 </script>
5012 5013
5014<script src="/js/libs/algolia/quicksearch.js?v=4.6" async onload="return loadAlgoliaSearch()"></script>
5014 5015 5016 5017 5018 </footer> 5019 5020 5021 5022</body> 5023</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.