1 2<!DOCTYPE html> 3<html lang="en-US"> 4<head> 5 <meta charset="utf-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 7 <meta name="generator" content="frappe"> 8 9 10 <meta name="description" content="Shop Lace Up dress shoes from Wizfort. Premium quality footwear with exceptional style."><meta property="og:title" content="Lace Up Shoes | Wizfort"><meta property="og:description" content="Shop Lace Up dress shoes from Wizfort. Premium quality footwear with exceptional style."><meta property="og:type" content="website"><meta property="og:url" content="https://wizfort.com/closure-type/Lace-Up/items"><meta property="og:image" content="https://wizfort.com/files/wizfort-og.png"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Lace Up Shoes | Wizfort"><meta name="twitter:description" content="Shop Lace Up dress shoes from Wizfort. Premium quality footwear with exceptional style."><meta name="title" content="Lace Up Shoes | Wizfort"><meta name="language" content="en-US"><meta property="og:site_name" content="Wizfort"><meta property="og:locale" content="en_US"><meta property="og:image:alt" content="Lace Up Shoes | Wizfort"><meta property="og:image:width" content="1200"><meta property="og:image:height" content="630"> 11 12 13 <title>Lace Up Shoes | Wizfort</title> 14 15 16 <link rel="icon" type="image/png" href="/files/cslshoes89cb70.png"> 17 <link rel="apple-touch-icon" href="/files/cslshoes89cb70.png"> 18<link type="text/css" rel="stylesheet" href="/assets/frappe/dist/css/website.bundle.GD6PKXQI.css"> 19<link type="text/css" rel="stylesheet" href="/assets/erpnext/dist/css/erpnext-web.bundle.XAPV6OJR.css"> 20<link type="text/css" rel="stylesheet" href="/assets/webshop/dist/css/webshop-web.bundle.GQDT63VG.css"> 21<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/csl_design_tokens.css?v=20260613a"> 22<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/webshop_filters.css?v=4b435436"> 23<link type="text/css" rel="stylesheet" href="/assets/cslshoes_erp/css/csl_custom.css?v=20260517a"> 24<link type="text/css" rel="stylesheet" href="/assets/blog/css/blog.scss"> 25 26 27 28 <!-- CSL web analytics (GA4) â deferred loader (A3 2026-06-03) -->
29<script> 30 window.dataLayer = window.dataLayer || []; 31 function gtag(){dataLayer.push(arguments);} 32 gtag('consent', 'default', {'ad_storage':'granted','ad_user_data':'granted','ad_personalization':'granted','analytics_storage':'granted'}); 33 gtag('consent', 'default', {'ad_storage':'denied','ad_user_data':'denied','ad_personalization':'denied','analytics_storage':'denied','region':["AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR", "DE", "GR", "HU", "IE", "IT", "LV", "LT", "LU", "MT", "NL", "PL", "PT", "RO", "SK", "SI", "ES", "SE", "IS", "LI", "NO", "GB"]}); 34 gtag('js', new Date()); 35 gtag('config', 'G-WJ5VB6BGCD'); 36 // A3 2026-06-03: defer the gtag.js loader off the critical render path. 37 // dataLayer calls above queue; gtag.js drains them on load (interaction, 38 // or idle-after-load, or an 8s safety net) so pageview/consent/config still fire. 39 (function(){ 40 var loaded=false; 41 function loadGA(){ if(loaded){return;} loaded=true; 42 var s=document.createElement("script"); s.async=true; 43 s.src="https://www.googletagmanager.com/gtag/js?id=G-WJ5VB6BGCD"; 44 (document.head||document.documentElement).appendChild(s); 45 } 46 ["pointerdown","keydown","scroll","touchstart"].forEach(function(e){ window.addEventListener(e, loadGA, {once:true, passive:true}); }); 47 function schedule(){ if("requestIdleCallback" in window){ requestIdleCallback(loadGA,{timeout:3500}); } else { setTimeout(loadGA,2500); } } 48 if(document.readyState==="complete"){ schedule(); } else { window.addEventListener("load", schedule); } 49 setTimeout(loadGA, 8000); 50 })(); 51</script>
51 52 53 <style>a,button,[role="button"],input,select,textarea{touch-action:manipulation}</style> 54 <link rel="preload" as="font" type="font/woff2" href="/assets/cslshoes_erp/fonts/InterVariable-Latin.woff2" crossorigin> 55 <link rel="canonical" href="https://cslshoes.com/closure-type/Lace-Up/items"> 56 57 <meta property="fb:app_id" content="806042942283128"> 58 <link rel="alternate" type="application/rss+xml" title="Wizfort Blog" href="/rss"> 59
59<script type="application/ld+json">{"@context": "https://schema.org", "@type": "Organization", "name": "Wizfort", "url": "https://wizfort.com", "logo": "https://wizfort.com/files/wizfort-og.png", "image": "https://wizfort.com/files/wizfort-og.png", "address": {"@type": "PostalAddress", "streetAddress": "3 Alpine Court, Unit W156", "addressLocality": "Chestnut Ridge", "addressRegion": "NY", "postalCode": "10977", "addressCountry": "US"}, "contactPoint": {"@type": "ContactPoint", "telephone": "+1-845-694-6700", "contactType": "customer service", "availableLanguage": ["English"]}, "openingHoursSpecification": [{"@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"], "opens": "09:00", "closes": "18:00"}, {"@type": "OpeningHoursSpecification", "dayOfWeek": "Saturday", "opens": "10:00", "closes": "16:00"}]}</script>
59 60
60<script type="application/ld+json">{"@context": "https://schema.org", "@type": "WebSite", "name": "Wizfort", "url": "https://wizfort.com", "potentialAction": {"@type": "SearchAction", "target": {"@type": "EntryPoint", "urlTemplate": "https://wizfort.com/all-products?search={search_term_string}"}, "query-input": "required name=search_term_string"}}</script>
60 61 62<style> 63:root { 64 --primary: #1a1a1a; 65 --accent: #c9a227; 66 --success: #22c55e; 67 --danger: #ef4444; 68 --gray-50: #f9fafb; 69 --gray-100: #f3f4f6; 70 --gray-200: #e5e7eb; 71 --gray-300: #d1d5db; 72 --gray-400: #9ca3af; 73 --gray-500: #6b7280; 74 --gray-600: #4b5563; 75 --gray-700: #374151; 76 --gray-800: #1f2937; 77 --gray-900: #111827; 78 --white: #ffffff; 79} 80 81 82.product-card { 83 transition: transform 0.2s, box-shadow 0.2s; 84} 85.product-card:hover { 86 transform: translateY(-5px); 87 box-shadow: 0 4px 15px rgba(0,0,0,0.1); 88} 89 90</style> 91 92 93 94
94<script> 95 window.frappe = {}; 96 frappe.ready_events = []; 97 frappe.ready = function(fn) { 98 frappe.ready_events.push(fn); 99 } 100 window.dev_server = 0; 101 window.socketio_port = 9000; 102 window.show_language_picker = false; 103 </script>
103 104</head> 105<body frappe-session-status="logged-out" data-path="closure-type" class=""> 106 107 <svg id="csl-icons" aria-hidden="true" style="position:absolute;width:0;height:0;overflow:hidden" xmlns="http://www.w3.org/2000/svg"> 108 <symbol viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" id="icon-assets"> 109 <path d="M3 6h17" stroke="var(--icon-stroke)" stroke-miterlimit="10"></path> 110 <path d="M20 19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6l3.4-3h10.2L20 6v13z" stroke="var(--icon-stroke)" stroke-miterlimit="10" stroke-linecap="square" stroke-linejoin="round"></path> 111 <path d="M15.582 10c0 2.29-1.8 4.09-4.091 4.09A4.051 4.051 0 0 1 7.4 10" stroke="var(--icon-stroke)" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"></path> 112 <circle cx="15.6" cy="10" r=".5" stroke="var(--icon-stroke)"></circle> 113 <circle cx="7.3" cy="10" r=".5" stroke="var(--icon-stroke)"></circle> 114 </symbol> 115 <symbol id="icon-delete" viewBox="0 0 32 32" fill="none"> 116 <path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M7 7v18.118c0 2.145 1.492 3.882 3.333 3.882h11.333c1.842 0 3.333-1.737 3.333-3.882v-18.118"></path> 117 <path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M5 7h22"></path> 118 <path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M10 7v-1c0-1.657 1.343-3 3-3h6c1.657 0 3 1.343 3 3v1"></path> 119 <path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M18.8 14.4v8.571"></path> 120 <path stroke-linejoin="round" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M13.2 14.4v8.571"></path> 121 </symbol> 122 <symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-down"> 123 <path d="M3 5.5l5 5 5-5" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"></path> 124 </symbol> 125 <symbol viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" id="icon-edit"> 126 <path fill-rule="evenodd" clip-rule="evenodd" d="M10.6262 2.70711C11.0168 2.31658 11.6499 2.31658 12.0404 2.70711L13.2929 3.95956C13.6834 4.35008 13.6834 4.98325 13.2929 5.37377L6 12.6667L2 14L3.33333 10L10.6262 2.70711Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/> 127 <line x1="9.79157" y1="3.92744" x2="12.0738" y2="6.2097" stroke="var(--icon-stroke)"/> 128 </symbol> 129 <symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-heart"> 130 <path d="M7.606 3.799L8 4.302l.394-.503.106-.14c.048-.065.08-.108.129-.159a3.284 3.284 0 0 1 4.72 0c.424.434.655 1.245.65 2.278-.006 1.578-.685 2.931-1.728 4.159-1.05 1.234-2.439 2.308-3.814 3.328a.763.763 0 0 1-.914 0c-1.375-1.02-2.764-2.094-3.814-3.328C2.686 8.709 2.007 7.357 2 5.778c-.004-1.033.227-1.844.651-2.278a3.284 3.284 0 0 1 4.72 0c.05.05.081.094.129.158.028.038.061.083.106.14z" 131 stroke="var(--icon-stroke)"></path> 132 </symbol> 133 <symbol viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" id="icon-star"> 134 <path d="M11.5516 2.90849C11.735 2.53687 12.265 2.53687 12.4484 2.90849L14.8226 7.71919C14.8954 7.86677 15.0362 7.96905 15.1991 7.99271L20.508 8.76415C20.9181 8.82374 21.0818 9.32772 20.7851 9.61699L16.9435 13.3616C16.8257 13.4765 16.7719 13.642 16.7997 13.8042L17.7066 19.0916C17.7766 19.5001 17.3479 19.8116 16.9811 19.6187L12.2327 17.1223C12.087 17.0457 11.913 17.0457 11.7673 17.1223L7.01888 19.6187C6.65207 19.8116 6.22335 19.5001 6.29341 19.0916L7.20028 13.8042C7.2281 13.642 7.17433 13.4765 7.05648 13.3616L3.21491 9.61699C2.91815 9.32772 3.08191 8.82374 3.49202 8.76415L8.80094 7.99271C8.9638 7.96905 9.10458 7.86677 9.17741 7.71919L11.5516 2.90849Z" fill="var(--star-fill)" stroke="var(--star-fill)"/> 135 </symbol> 136 <symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-tag"> 137 <path d="M12.6401 10.2571L10.107 12.7901C9.52125 13.3759 8.5718 13.3756 7.98601 12.7898L2.49654 7.30037C2.40278 7.2066 2.3501 7.07942 2.3501 6.94682L2.3501 3C2.3501 2.72386 2.57396 2.5 2.8501 2.5L6.79691 2.5C6.92952 2.5 7.0567 2.55268 7.15047 2.64645L12.6399 8.13591C13.2257 8.7217 13.2259 9.67131 12.6401 10.2571Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/> 138 <path d="M6.08001 5.46157C6.08001 5.88642 5.7356 6.23082 5.31076 6.23082C4.88591 6.23082 4.5415 5.88642 4.5415 5.46157C4.5415 5.03673 4.88591 4.69232 5.31076 4.69232C5.7356 4.69232 6.08001 5.03673 6.08001 5.46157Z" stroke="var(--icon-stroke)" stroke-linecap="round" stroke-linejoin="round"/> 139 </symbol> 140 <!-- icon-list and icon-image-view: copied from apps/frappe/frappe/public/icons/timeless/icons.svg 141 for the /all-products toolbar view-toggle. Keep in sync on Frappe upgrades (ERP-025). --> 142 <symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-list"> 143 <path fill-rule="evenodd" clip-rule="evenodd" d="M2.667 3.25a.75.75 0 0 0 0 1.5h.007a.75.75 0 0 0 0-1.5h-.007zm2.666.25a.5.5 0 0 0 0 1H14a.5.5 0 0 0 0-1H5.333zm0 4a.5.5 0 0 0 0 1H14a.5.5 0 0 0 0-1H5.333zm-.5 4.5a.5.5 0 0 1 .5-.5H14a.5.5 0 0 1 0 1H5.333a.5.5 0 0 1-.5-.5zM1.917 8a.75.75 0 0 1 .75-.75h.007a.75.75 0 0 1 0 1.5h-.007a.75.75 0 0 1-.75-.75zm.75 3.25a.75.75 0 0 0 0 1.5h.007a.75.75 0 0 0 0-1.5h-.007z" 144 fill="var(--icon-stroke)" stroke-width="0"></path> 145 </symbol> 146 <symbol viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" id="icon-image-view"> 147 <path d="M2.5 3.5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v3h-3a1 1 0 0 1-1-1v-2zm0 7a1 1 0 0 1 1-1h3v3a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-2zm7-7a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-3v-3zm0 6h3a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-3z"></path> 148 </symbol> 149</svg>
150 <a href="#main-content" class="skip-to-content" style="position:absolute;top:-40px;left:0;background:#1a1a1a;color:#fff;padding:8px 16px;z-index:10001;font-size:14px;text-decoration:none;transition:top 0.2s;" onfocus="this.style.top='0'" onblur="this.style.top='-40px'">Skip to main content</a> 151 152 153 154 155<style> 156/* CSL Header Styles - Inline to avoid CSS conflicts with Frappe */ 157:root { 158 --csl-white: #ffffff; 159 --csl-gray-50: #f9fafb; 160 --csl-gray-100: #f3f4f6; 161 --csl-gray-200: #e5e7eb; 162 --csl-gray-300: #d1d5db; 163 --csl-gray-400: #9ca3af; 164 --csl-gray-500: #6b7280; 165 --csl-gray-600: #4b5563; 166 --csl-gray-700: #374151; 167 --csl-gray-800: #1f2937; 168 --csl-gray-900: #111827; 169 --csl-black: #000000; 170 --csl-danger: #ef4444; 171} 172 173/* Hide default Frappe navbar */ 174.navbar.navbar-expand-lg, .web-footer { display: none !important; } 175 176/* Top Bar */ 177.csl-top-bar { 178 background: var(--csl-gray-900); 179 color: var(--csl-white); 180 padding: 8px 0; 181 font-size: 12px; 182} 183.csl-top-bar-content { 184 max-width: 1400px; 185 margin: 0 auto; 186 padding: 0 20px; 187 display: flex; 188 justify-content: space-between; 189 align-items: center; 190} 191.csl-top-bar-message { font-weight: 500; } 192.csl-top-bar-links { display: flex; gap: 20px; align-items: center; } 193.csl-top-bar-links a { color: var(--csl-white); text-decoration: none; } 194.csl-top-bar-links a:hover { text-decoration: underline; } 195.csl-top-bar-phone { display: flex; align-items: center; gap: 5px; font-weight: 600; } 196.csl-top-bar-phone svg { flex-shrink: 0; } 197 198/* Header */ 199.csl-header { 200 background: var(--csl-white); 201 border-bottom: 1px solid var(--csl-gray-200); 202 padding: 16px 0; 203 position: sticky; 204 top: 0; 205 z-index: 1000; 206} 207.csl-header-inner { 208 max-width: 1400px; 209 margin: 0 auto; 210 padding: 0 20px; 211 display: flex; 212 align-items: center; 213 justify-content: space-between; 214 gap: 40px; 215 position: relative; 216 z-index: 100; 217} 218.csl-header-inner * { 219 pointer-events: auto; 220} 221.csl-logo { 222 font-size: 24px; 223 font-weight: 700; 224 color: var(--csl-black); 225 text-decoration: none; 226} 227.csl-nav { 228 display: flex; 229 align-items: center; 230 gap: 32px; 231} 232.csl-nav a { 233 font-size: 14px; 234 font-weight: 500; 235 color: var(--csl-gray-700); 236 text-decoration: none; 237 transition: color 0.2s; 238} 239.csl-nav a:hover { color: var(--csl-black); } 240.csl-nav-dropdown { position: relative; } 241.csl-nav-dropdown > a { 242 display: flex; 243 align-items: center; 244 gap: 4px; 245} 246.csl-nav-dropdown > a svg { 247 width: 12px; 248 height: 12px; 249 stroke: currentColor; 250 stroke-width: 2; 251 fill: none; 252 transition: transform 0.2s; 253} 254.csl-nav-dropdown:hover > a svg { transform: rotate(180deg); } 255.csl-dropdown-menu { 256 position: absolute; 257 top: 100%; 258 left: 50%; 259 transform: translateX(-50%); 260 background: var(--csl-white); 261 border: 1px solid var(--csl-gray-200); 262 border-radius: 8px; 263 box-shadow: 0 8px 24px rgba(0,0,0,0.12); 264 min-width: 180px; 265 padding: 8px 0; 266 opacity: 0; 267 visibility: hidden; 268 transition: all 0.2s ease; 269 z-index: 1001; 270 margin-top: 8px; 271} 272.csl-nav-dropdown:hover .csl-dropdown-menu { 273 opacity: 1; 274 visibility: visible; 275} 276.csl-dropdown-menu a { 277 display: block; 278 padding: 10px 16px; 279 font-size: 14px; 280 color: var(--csl-gray-700); 281 transition: all 0.15s; 282} 283.csl-dropdown-menu a:hover { 284 background: var(--csl-gray-50); 285 color: var(--csl-black); 286} 287/* ERP-101: account icon dropdown (My Account + Sign Out). Right-aligned so it 288 doesn't overflow the viewport edge; reuses .csl-dropdown-menu base styling. */ 289.csl-account-dropdown { position: relative; display: inline-flex; align-items: center; } 290.csl-account-menu { left: auto; right: 0; transform: none; min-width: 160px; } 291.csl-account-dropdown:hover .csl-account-menu { opacity: 1; visibility: visible; } 292 293/* Header Actions */ 294.csl-header-actions { 295 display: flex; 296 align-items: center; 297 gap: 20px; 298 pointer-events: auto; 299 position: relative; 300 z-index: 50; 301} 302.csl-search-box { 303 display: flex !important; 304 align-items: center; 305 background: var(--csl-gray-100); 306 border: 1px solid var(--csl-gray-200); 307 border-radius: 6px; 308 padding: 8px 12px; 309 width: 280px; 310 position: relative; 311 cursor: text; 312 z-index: 100; 313 pointer-events: auto !important; 314} 315.csl-search-box input { 316 border: none !important; 317 background: transparent !important; 318 outline: none !important; 319 font-size: 14px; 320 width: 100%; 321 margin-left: 8px; 322 cursor: text !important; 323 color: var(--csl-gray-900); 324 pointer-events: auto !important; 325 position: relative; 326 z-index: 10; 327 display: block !important; 328 visibility: visible !important; 329 opacity: 1 !important; 330} 331.csl-search-box input::placeholder { color: var(--csl-gray-500); } 332#csl-search-input { 333 display: block !important; 334 visibility: visible !important; 335 opacity: 1 !important; 336 pointer-events: auto !important; 337 position: relative !important; 338 z-index: 10 !important; 339 -webkit-user-select: text !important; 340 user-select: text !important; 341 cursor: text !important; 342} 343.csl-search-box:focus-within { 344 border-color: var(--csl-gray-400); 345 box-shadow: 0 0 0 2px rgba(0,0,0,0.05); 346} 347.csl-search-box svg {
348 width: 20px; 349 height: 20px; 350 stroke: var(--csl-gray-500); 351 stroke-width: 1.5; 352 fill: none; 353 pointer-events: none; 354 flex-shrink: 0; 355} 356.csl-search-results { 357 position: absolute; 358 top: 100%; 359 left: 0; 360 right: 0; 361 background: var(--csl-white); 362 border: 1px solid var(--csl-gray-200); 363 border-radius: 8px; 364 box-shadow: 0 8px 24px rgba(0,0,0,0.12); 365 margin-top: 4px; 366 max-height: 400px; 367 overflow-y: auto; 368 display: none; 369 z-index: 1002; 370} 371.csl-search-results.active { display: block; } 372.csl-search-result-item { 373 display: flex; 374 align-items: center; 375 gap: 12px; 376 padding: 10px 12px; 377 text-decoration: none; 378 color: var(--csl-gray-800); 379 transition: background 0.15s; 380} 381.csl-search-result-item:hover { background: var(--csl-gray-50); } 382.csl-search-result-item img { 383 width: 50px; 384 height: 50px; 385 object-fit: contain; 386 background: var(--csl-gray-100); 387 border-radius: 4px; 388} 389.csl-search-result-name { 390 font-size: 14px; 391 font-weight: 500; 392 margin: 0; 393 display: block; 394} 395.csl-search-result-info p { 396 font-size: 12px; 397 color: var(--csl-gray-500); 398 margin: 2px 0 0 0; 399} 400.csl-search-no-results { 401 padding: 20px; 402 text-align: center; 403 color: var(--csl-gray-500); 404} 405 406/* Header Icons */ 407.csl-header-icon { 408 width: 20px; 409 height: 20px; 410 stroke: var(--csl-gray-500); 411 stroke-width: 1.5; 412 fill: none; 413 cursor: pointer; 414 transition: stroke 0.2s; 415} 416.csl-header-icon:hover { stroke: var(--csl-black); } 417.csl-header-icon-link { 418 display: flex; 419 align-items: center; 420 justify-content: center; 421 text-decoration: none; 422} 423.csl-cart-icon, .csl-wishlist-icon { position: relative; } 424.csl-cart-count, .csl-wishlist-count { 425 position: absolute; 426 top: -6px; 427 right: -6px; 428 background: var(--csl-black); 429 color: var(--csl-white); 430 font-size: 10px; 431 font-weight: 600; 432 min-width: 18px; 433 height: 18px; 434 border-radius: 50%; 435 display: flex; 436 align-items: center; 437 justify-content: center; 438} 439.csl-wishlist-count { background: var(--csl-danger); display: none; } 440 441/* Mobile Menu Toggle */ 442.csl-mobile-menu-toggle { 443 display: none; 444 width: 40px; 445 height: 40px; 446 background: none; 447 border: 1px solid var(--csl-gray-300); 448 border-radius: 8px; 449 cursor: pointer; 450 align-items: center; 451 justify-content: center; 452} 453.csl-mobile-menu-toggle svg { 454 width: 24px; 455 height: 24px; 456 stroke: var(--csl-gray-700); 457 stroke-width: 2; 458 fill: none; 459} 460 461/* Mobile Navigation - Hidden by default */ 462.csl-mobile-nav { 463 display: none !important; 464 position: fixed; 465 top: 0; 466 left: 0; 467 right: 0; 468 bottom: 0; 469 background: var(--csl-white); 470 z-index: 9999; 471 padding: 20px; 472 flex-direction: column; 473 overflow-y: auto; 474} 475.csl-mobile-nav.active { display: flex !important; } 476.csl-mobile-nav-header { 477 display: flex; 478 justify-content: space-between; 479 align-items: center; 480 margin-bottom: 24px; 481 padding-bottom: 16px; 482 border-bottom: 1px solid var(--csl-gray-200); 483} 484.csl-mobile-nav-close { 485 width: 40px; 486 height: 40px; 487 background: none; 488 border: none; 489 cursor: pointer; 490 display: flex; 491 align-items: center; 492 justify-content: center; 493} 494.csl-mobile-nav-close svg { 495 width: 24px; 496 height: 24px; 497 stroke: var(--csl-gray-700); 498 stroke-width: 2; 499 fill: none; 500} 501.csl-mobile-nav-links { 502 display: flex; 503 flex-direction: column; 504} 505.csl-mobile-nav-links a { 506 padding: 16px 0; 507 font-size: 18px; 508 font-weight: 500; 509 color: var(--csl-gray-800); 510 text-decoration: none; 511 border-bottom: 1px solid var(--csl-gray-100); 512} 513.csl-mobile-search { 514 margin-bottom: 16px; 515 padding: 12px 16px; 516 background: var(--csl-gray-100); 517 border: 1px solid var(--csl-gray-200); 518 border-radius: 8px; 519 font-size: 16px; 520 width: 100%; 521} 522 523/* Size Guide Link */ 524.csl-size-guide-link { 525 display: flex; 526 align-items: center; 527 gap: 4px; 528 font-size: 13px; 529 color: var(--csl-gray-600); 530 text-decoration: none; 531} 532.csl-size-guide-link:hover { color: var(--csl-black); } 533.csl-size-guide-link svg { 534 width: 16px; 535 height: 16px; 536 stroke: currentColor; 537 stroke-width: 1.5; 538 fill: none; 539} 540 541/* Responsive */ 542@media (max-width: 1024px) { 543 .csl-search-box { width: 200px; } 544} 545@media (max-width: 768px) { 546 .csl-top-bar { padding: 6px 0; } 547 .csl-top-bar-links { display: none; } 548 .csl-top-bar-message { font-size: 11px; text-align: center; width: 100%; } 549 .csl-header { padding: 12px 0; } 550 .csl-header-inner { gap: 12px; } 551 .csl-logo { font-size: 20px; flex-shrink: 0; max-width: 45vw; } 552 .csl-logo img { height: 24px; width: auto; } 553 .csl-nav, .csl-search-box, .csl-size-guide-link { display: none; } 554 .csl-mobile-menu-toggle { display: flex; } 555 .csl-mobile-search-toggle { display: flex; } 556 .csl-header-actions { gap: 12px; } 557 .csl-header-icon { width: 18px; height: 18px; } 558 .csl-cart-count, .csl-wishlist-count { width: 16px; height: 16px; font-size: 9px; top: -4px; right: -4px; } 559} 560/* Mobile Search Overlay */
561.csl-mobile-search-toggle { 562 display: none; 563 width: 44px; 564 height: 44px; 565 background: none; 566 border: none; 567 cursor: pointer; 568 align-items: center; 569 justify-content: center; 570 padding: 0; 571} 572.csl-mobile-search-toggle svg { 573 width: 20px; 574 height: 20px; 575 stroke: var(--csl-gray-700); 576 stroke-width: 2; 577 fill: none; 578} 579.csl-mobile-search-overlay { 580 display: none; 581 position: fixed; 582 top: 0; 583 left: 0; 584 right: 0; 585 z-index: 10000; 586 background: var(--csl-white); 587 padding: 12px 16px; 588 box-shadow: 0 4px 12px rgba(0,0,0,0.1); 589} 590.csl-mobile-search-overlay.active { display: flex; gap: 8px; align-items: center; } 591.csl-mobile-search-overlay input { 592 flex: 1; 593 padding: 12px 16px; 594 font-size: 16px; 595 border: 1px solid var(--csl-gray-300); 596 border-radius: 8px; 597 outline: none; 598} 599.csl-mobile-search-overlay input:focus { border-color: var(--csl-black); } 600.csl-mobile-search-overlay .csl-mobile-search-close { 601 width: 44px; 602 height: 44px; 603 background: none; 604 border: none; 605 cursor: pointer; 606 display: flex; 607 align-items: center; 608 justify-content: center; 609} 610.csl-mobile-search-overlay .csl-mobile-search-close svg { 611 width: 24px; 612 height: 24px; 613 stroke: var(--csl-gray-600); 614 stroke-width: 2; 615 fill: none; 616} 617.csl-mobile-search-overlay .csl-search-results { 618 position: absolute; 619 top: 100%; 620 left: 0; 621 right: 0; 622 background: var(--csl-white); 623 max-height: 60vh; 624 overflow-y: auto; 625 box-shadow: 0 4px 12px rgba(0,0,0,0.1); 626} 627</style> 628 629<!-- Mobile Navigation (hidden by default, shown on mobile menu click) --> 630<div class="csl-mobile-nav" id="csl-mobile-nav" data-nosnippet> 631 <div class="csl-mobile-nav-header"> 632 <span class="csl-logo">CSL Shoes</span> 633 <button class="csl-mobile-nav-close" onclick="cslCloseMobileNav()" aria-label="Close menu"> 634 <svg viewBox="0 0 24 24" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg> 635 </button> 636 </div> 637 <input type="text" class="csl-mobile-search" placeholder="Search shoes..." id="csl-mobile-search-input" aria-label="Search products"> 638 <div class="csl-mobile-nav-links"> 639 640 641 642 643 644 <a href="/shoes/oxfords" onclick="cslCloseMobileNav()">Oxfords</a> 645 646 647 648 <a href="/shoes/loafers" onclick="cslCloseMobileNav()">Loafers</a> 649 650 651 652 <a href="/shoes/slip-ons" onclick="cslCloseMobileNav()">Slip-Ons</a> 653 654 655 656 <a href="/shoes/wide-width" onclick="cslCloseMobileNav()">Wide Width</a> 657 658 659 660 <a href="/shoes/boys-dress-shoes" onclick="cslCloseMobileNav()">Boys' Shoes</a> 661 662 663 664 <a href="/all-products" onclick="cslCloseMobileNav()">All Products</a> 665 666 667 668 669 670 <a href="/brands/wizfort" onclick="cslCloseMobileNav()">Wizfort</a> 671 672 673 674 <a href="/brands/esse-comfort" onclick="cslCloseMobileNav()">Esse Comfort</a> 675 676 677 678 <a href="/brands/benelaccio" onclick="cslCloseMobileNav()">Benelaccio</a> 679 680 681 682 <a href="/blog" onclick="cslCloseMobileNav()">Blog</a> 683 684 685 686 <a href="/about" onclick="cslCloseMobileNav()">About</a> 687 688 689 690 691 692 <a href="/shoes/wedding-shoes" onclick="cslCloseMobileNav()">Wedding</a> 693 694 695 696 <a href="/shoes/school-shoes" onclick="cslCloseMobileNav()">School</a> 697 698 699 700 <a href="/shoes/office-shoes" onclick="cslCloseMobileNav()">Office</a> 701 702 703 704 705 706 <a href="/help" onclick="cslCloseMobileNav()">Help</a> 707 708 <a href="/track-order" onclick="cslCloseMobileNav()">Track Order</a> 709 710 <a href="/contact" onclick="cslCloseMobileNav()">Contact Us</a> 711 712 713 714 715 <a href="/login" onclick="cslCloseMobileNav()">Sign In</a> 716 717 </div> 718</div> 719 720<!-- Top Bar --> 721 722<div class="csl-top-bar" data-nosnippet> 723 <div class="csl-top-bar-content"> 724 725 726 727 <span class="csl-top-bar-message">Free standard shipping for retail orders | Family-Owned Since 2008 | 60-Day Easy Returns</span> 728 729 <div class="csl-top-bar-links"> 730 <a href="tel:+18456946700" class="csl-top-bar-phone"> 731 <svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg> 732 (845) 694-6700 733 </a> 734 735 736 <a href="/help">Help</a> 737 738 <a href="/track-order">Track Order</a> 739 740 <a href="/contact">Contact Us</a> 741 742 743 </div> 744 </div> 745</div> 746 747 748<!-- Header --> 749<header class="csl-header" data-nosnippet> 750 <div class="csl-header-inner"> 751 <button class="csl-mobile-menu-toggle" onclick="cslOpenMobileNav()" aria-label="Open menu"> 752 <svg viewBox="0 0 24 24" aria-hidden="true"><line x1="3" y1="6" x2="21" y2="6"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="18" x2="21" y2="18"/></svg> 753 </button> 754 <a href="/" class="csl-logo"> 755 756 <img src="/files/cslshoes.webp" alt="CSL Shoes logo" width="213" height="32"> 757 758 </a> 759 <nav class="csl-nav"> 760 761 762 763 <div class="csl-nav-dropdown"> 764 <a href="/shoes">Styles <svg viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"/></svg></a> 765 <div class="csl-dropdown-menu"> 766 767 768 769 770 <a href="/shoes/oxfords">Oxfords</a> 771 772 773 774 <a href="/shoes/loafers">Loafers</a> 775 776 777 778 <a href="/shoes/slip-ons">Slip-Ons</a> 779 780 781 782 <a href="/shoes/wide-width">Wide Width</a> 783 784 785 786 <a href="/shoes/boys-dress-shoes">Boys' Shoes</a> 787 788 789 790 <a href="/all-products">All Products</a> 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 </div> 814 </div> 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 <div class="csl-nav-dropdown"> 831 <a href="/brands">Brands <svg viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"/></svg></a> 832 <div class="csl-dropdown-menu"> 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 <a href="/brands/wizfort">Wizfort</a> 852 853 854 855 <a href="/brands/esse-comfort">Esse Comfort</a> 856 857 858 859 <a href="/brands/benelaccio">Benelaccio</a> 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 </div> 875 </div> 876 877 878 879 880 881 882 883 884 885 <a href="/blog">Blog</a> 886 887 888 889 <a href="/about">About</a> 890 891 892 893 <div class="csl-nav-dropdown"> 894 <a href="/shoes">Occasions <svg viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"/></svg></a> 895 <div class="csl-dropdown-menu"> 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 <a href="/shoes/wedding-shoes">Wedding</a> 927 928 929 930 <a href="/shoes/school-shoes">School</a> 931 932 933 934 <a href="/shoes/office-shoes">Office</a> 935 936 937 </div> 938 </div> 939 940 941 942 943 944 945 946 947 948 </nav> 949 <div class="csl-header-actions"> 950 <button class="csl-mobile-search-toggle" onclick="cslOpenMobileSearch()" aria-label="Search"> 951 <svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg> 952 </button> 953 <a href="/size-guide" class="csl-size-guide-link"> 954 <svg viewBox="0 0 24 24"><rect x="2" y="7" width="20" height="14" rx="2" ry="2"/><path d="M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"/></svg> 955 Size Guide 956 </a> 957 958 <div class="csl-search-box"> 959 <svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg> 960 <input type="text" id="csl-search-input" placeholder="Search shoes..." autocomplete="off" aria-label="Search products"> 961 <div class="csl-search-results" id="csl-search-results"></div> 962 </div> 963 964 965 966 <a href="/login" class="csl-header-icon-link" title="Sign In">
967 <svg class="csl-header-icon" viewBox="0 0 24 24"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg> 968 </a> 969 970 971 972 <a href="/wishlist" class="csl-wishlist-icon csl-header-icon-link" title="Wishlist"> 973 <svg class="csl-header-icon" viewBox="0 0 24 24"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg> 974 <span class="csl-wishlist-count" id="csl-wishlist-count">0</span> 975 </a> 976 977 978 <a href="/cart" class="csl-cart-icon csl-header-icon-link" title="Cart"> 979 <svg class="csl-header-icon" viewBox="0 0 24 24"><path d="M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z"/><line x1="3" y1="6" x2="21" y2="6"/><path d="M16 10a4 4 0 0 1-8 0"/></svg> 980 <span class="csl-cart-count" id="csl-cart-count">0</span> 981 </a> 982 983 </div> 984 </div> 985</header> 986 987<!-- Mobile Search Overlay --> 988<div class="csl-mobile-search-overlay" id="csl-mobile-search-overlay"> 989 <input type="text" id="csl-mobile-search-input" placeholder="Search shoes..." autocomplete="off" aria-label="Search products"> 990 <button class="csl-mobile-search-close" onclick="cslCloseMobileSearch()" aria-label="Close search"> 991 <svg viewBox="0 0 24 24" aria-hidden="true"><line x1="18" y1="6" x2="6" y2="18"/><line x1="6" y1="6" x2="18" y2="18"/></svg> 992 </button> 993 <div class="csl-search-results" id="csl-mobile-search-results"></div> 994</div> 995
996<script> 997// CSL Header JavaScript - Inline for reliability 998(function() { 999 var cslSearchTimeout; 1000 1001 // Mobile search 1002 window.cslOpenMobileSearch = function() { 1003 var overlay = document.getElementById('csl-mobile-search-overlay'); 1004 overlay.classList.add('active'); 1005 var input = document.getElementById('csl-mobile-search-input'); 1006 input.value = ''; 1007 input.focus(); 1008 }; 1009 1010 window.cslCloseMobileSearch = function() { 1011 document.getElementById('csl-mobile-search-overlay').classList.remove('active'); 1012 document.getElementById('csl-mobile-search-results').innerHTML = ''; 1013 }; 1014 1015 // Mobile navigation 1016 window.cslOpenMobileNav = function() { 1017 document.getElementById('csl-mobile-nav').classList.add('active'); 1018 document.body.style.overflow = 'hidden'; 1019 }; 1020 1021 window.cslCloseMobileNav = function() { 1022 document.getElementById('csl-mobile-nav').classList.remove('active'); 1023 document.body.style.overflow = ''; 1024 }; 1025 1026 // Search functionality 1027 function initCslSearch() { 1028 var searchInput = document.getElementById('csl-search-input'); 1029 var searchResults = document.getElementById('csl-search-results'); 1030 1031 if (!searchInput) return; 1032 1033 searchInput.addEventListener('input', function() { 1034 clearTimeout(cslSearchTimeout); 1035 var query = this.value.trim(); 1036 1037 if (query.length < 2) { 1038 searchResults.classList.remove('active'); 1039 return; 1040 } 1041 1042 cslSearchTimeout = setTimeout(function() { cslSearchProducts(query); }, 300); 1043 }); 1044 1045 searchInput.addEventListener('focus', function() { 1046 if (this.value.trim().length >= 2) { 1047 searchResults.classList.add('active'); 1048 } 1049 }); 1050 1051 searchInput.addEventListener('keypress', function(e) { 1052 if (e.key === 'Enter') { 1053 var query = this.value.trim(); 1054 if (query) { 1055 window.location.href = '/all-products?search=' + encodeURIComponent(query); 1056 } 1057 } 1058 }); 1059 1060 document.addEventListener('click', function(e) { 1061 if (!e.target.closest('.csl-search-box')) { 1062 searchResults.classList.remove('active'); 1063 } 1064 }); 1065 } 1066 1067 // Mobile search - reuse same search logic 1068 function initCslMobileSearch() { 1069 var mobileInput = document.getElementById('csl-mobile-search-input'); 1070 var mobileResults = document.getElementById('csl-mobile-search-results'); 1071 if (!mobileInput) return; 1072 1073 mobileInput.addEventListener('input', function() { 1074 clearTimeout(cslSearchTimeout); 1075 var query = this.value.trim(); 1076 if (query.length < 2) { mobileResults.innerHTML = ''; return; } 1077 cslSearchTimeout = setTimeout(function() { cslSearchProductsMobile(query); }, 300); 1078 }); 1079 1080 mobileInput.addEventListener('keypress', function(e) { 1081 if (e.key === 'Enter') { 1082 var query = this.value.trim(); 1083 if (query) { 1084 window.location.href = '/all-products?search=' + encodeURIComponent(query); 1085 cslCloseMobileSearch(); 1086 } 1087 } 1088 }); 1089 } 1090 1091 function cslSearchProductsMobile(query) { 1092 var mobileResults = document.getElementById('csl-mobile-search-results'); 1093 fetch('/api/method/cslshoes_erp.api.search.search_products?query=' + encodeURIComponent(query)) 1094 .then(function(response) { return response.json(); }) 1095 .then(function(data) { 1096 if (data.message && data.message.length > 0) { 1097 mobileResults.innerHTML = data.message.map(function(product) { 1098 var safeName = cslEscapeHtml(product.web_item_name); 1099 var safeRoute = encodeURI(product.route || ''); 1100 var safeImage = cslEscapeHtml(product.website_image || '/assets/webshop/images/cart-empty-state.png'); 1101 return '<a href="/' + safeRoute + '" style="display:flex;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;color:#1a1a1a;border-bottom:1px solid #f3f4f6;">' + 1102 '<img src="' + safeImage + '" alt="' + safeName + '" width="50" height="50" style="border-radius:6px;object-fit:cover;">' + 1103 '<span style="font-size:14px;">' + safeName + '</span>' + 1104 '</a>'; 1105 }).join(''); 1106 } else { 1107 mobileResults.innerHTML = '<div style="padding:16px;text-align:center;color:#6b7280;">No products found</div>'; 1108 } 1109 }) 1110 .catch(function() { 1111 mobileResults.innerHTML = '<div style="padding:16px;text-align:center;color:#6b7280;">Search unavailable</div>'; 1112 }); 1113 } 1114 1115 function cslSearchProducts(query) { 1116 var searchResults = document.getElementById('csl-search-results'); 1117 1118 fetch('/api/method/cslshoes_erp.api.search.search_products?query=' + encodeURIComponent(query)) 1119 .then(function(response) { return response.json(); }) 1120 .then(function(data) { 1121 if (data.message && data.message.length > 0) {
1122 cslRenderSearchResults(data.message); 1123 } else { 1124 searchResults.innerHTML = '<div class="csl-search-no-results">No products found</div>'; 1125 } 1126 searchResults.classList.add('active'); 1127 }) 1128 .catch(function() { 1129 searchResults.innerHTML = '<div class="csl-search-no-results">Search unavailable</div>'; 1130 searchResults.classList.add('active'); 1131 }); 1132 } 1133 1134 function cslEscapeHtml(str) { 1135 if (!str) return ''; 1136 var div = document.createElement('div'); 1137 div.appendChild(document.createTextNode(String(str))); 1138 return div.innerHTML; 1139 } 1140 1141 function cslRenderSearchResults(products) { 1142 var searchResults = document.getElementById('csl-search-results'); 1143 searchResults.innerHTML = products.map(function(product) { 1144 var safeName = cslEscapeHtml(product.web_item_name); 1145 var safeRoute = encodeURI(product.route || ''); 1146 var safeBrand = cslEscapeHtml(product.brand || 'CSL Shoes'); 1147 var safeImage = cslEscapeHtml(product.website_image || '/assets/webshop/images/cart-empty-state.png'); 1148 return '<a href="/' + safeRoute + '" class="csl-search-result-item">' + 1149 '<img src="' + safeImage + '" alt="' + safeName + '">' + 1150 '<div class="csl-search-result-info">' + 1151 '<span class="csl-search-result-name">' + safeName + '</span>' + 1152 '<p>' + safeBrand + '</p>' + 1153 '</div>' + 1154 '</a>'; 1155 }).join(''); 1156 } 1157 1158 // Cart count update - supports both guests and logged-in users 1159 function updateCslCartCount() { 1160 var isGuest = document.body.getAttribute('frappe-session-status') === 'logged-out'; 1161 1162 if (isGuest) { 1163 // Guest: use guest cart API 1164 var cartIdMatch = document.cookie.match(/guest_cart_id=([^;]+)/); 1165 var cartId = cartIdMatch ? cartIdMatch[1] : null; 1166 1167 fetch('/api/method/cslshoes_erp.api.guest_cart.get_cart_count', { 1168 method: 'POST', 1169 headers: { 'Content-Type': 'application/json' }, 1170 credentials: 'same-origin', 1171 body: JSON.stringify({ cart_id: cartId }) 1172 }) 1173 .then(function(r) { return r.json(); }) 1174 .then(function(data) { 1175 if (data.message) { 1176 var count = data.message.count || 0; 1177 updateCartCountDisplay(count); 1178 } 1179 }) 1180 .catch(function() {}); 1181 } else { 1182 // Logged-in user: use quotation API 1183 fetch('/api/method/webshop.webshop.shopping_cart.cart.get_cart_quotation', { 1184 method: 'GET', 1185 headers: { 'Content-Type': 'application/json' }, 1186 credentials: 'same-origin' 1187 }) 1188 .then(function(r) { return r.json(); }) 1189 .then(function(data) { 1190 if (data.message && data.message.doc) { 1191 var totalQty = data.message.doc.total_qty || 0; 1192 updateCartCountDisplay(totalQty); 1193 } 1194 }) 1195 .catch(function() {}); 1196 } 1197 } 1198 1199 // Helper to update cart count display in header 1200 function updateCartCountDisplay(count) { 1201 count = Math.floor(count); 1202 var countEl = document.getElementById('csl-cart-count'); 1203 if (countEl) { 1204 countEl.textContent = count; 1205 countEl.style.display = count > 0 ? 'flex' : 'none'; 1206 } 1207 } 1208 1209 // Wishlist count update 1210 function updateCslWishlistCount() { 1211 fetch('/api/method/cslshoes_erp.api.wishlist.get_wishlist_count', { 1212 method: 'GET', 1213 credentials: 'same-origin' 1214 }) 1215 .then(function(r) { return r.json(); }) 1216 .then(function(data) { 1217 var count = data.message || 0; 1218 var countEl = document.getElementById('csl-wishlist-count'); 1219 if (countEl) { 1220 if (count > 0) { 1221 countEl.textContent = count; 1222 countEl.style.display = 'flex'; 1223 } else { 1224 countEl.style.display = 'none'; 1225 } 1226 } 1227 }) 1228 .catch(function() {}); 1229 } 1230 1231 // Initialize on DOM ready 1232 if (document.readyState === 'loading') { 1233 document.addEventListener('DOMContentLoaded', function() { 1234 initCslSearch(); 1235 initCslMobileSearch(); 1236 updateCslCartCount(); 1237 updateCslWishlistCount(); 1238 }); 1239 } else {
1240 initCslSearch(); 1241 initCslMobileSearch(); 1242 updateCslCartCount(); 1243 updateCslWishlistCount(); 1244 } 1245 1246 // BUG-W3 cart sub: expose count refreshers globally so add-to-cart handlers 1247 // in homepage / PDP / /all-products can trigger header re-sync after mutation. 1248 // Idempotency guard (auditor C1) â if a future include order re-exposes, keep 1249 // the first definition. 1250 window.updateCslCartCount = window.updateCslCartCount || updateCslCartCount; 1251 window.updateCslWishlistCount = window.updateCslWishlistCount || updateCslWishlistCount; 1252})(); 1253</script>
1253<main id="main-content"> 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265<div id="page-index" data-path="closure-type/Lace-Up/items"> 1266 1267<div class="page-content-wrapper"> 1268 <!-- breadcrumbs --> 1269 <div class="page-breadcrumbs"> 1270 1271 1272 1273 </div> 1274 1275 1276 <main class="container"> 1277 <div class="page-header-wrapper"> 1278 <div class="page-header"> 1279 1280 </div> 1281 1282 1283 </div> 1284 1285 <div class="page_content"> 1286 1287 1288 1289<style> 1290.csl-breadcrumbs { 1291 padding: 15px 0; 1292 background: #f9fafb; 1293 font-size: 0.85rem; 1294 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 1295 border-bottom: 1px solid #e5e7eb; 1296} 1297.csl-breadcrumbs .container { 1298 max-width: 1400px; 1299 margin: 0 auto; 1300 padding: 0 20px; 1301} 1302.csl-breadcrumbs a { 1303 color: #6b7280; 1304 text-decoration: none; 1305 transition: color 0.2s; 1306} 1307.csl-breadcrumbs a:hover { color: #111; } 1308.csl-breadcrumbs .separator { 1309 color: #9ca3af; 1310 margin: 0 8px; 1311} 1312.csl-breadcrumbs .current { 1313 color: #111; 1314 font-weight: 500; 1315} 1316</style> 1317 1318 1319<div class="csl-breadcrumbs"> 1320 <div class="container"> 1321 1322 1323 <a href="/">Home</a> 1324 <span class="separator">/</span> 1325 1326 1327 1328 <a href="/all-products">All Products</a> 1329 <span class="separator">/</span> 1330 1331 1332 1333 <span class="current">Lace Up Shoes</span> 1334 1335 1336 </div> 1337</div> 1338 1339 1340
1341<script type="application/ld+json">{"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://wizfort.com/"}, {"@type": "ListItem", "position": 2, "name": "All Products", "item": "https://wizfort.com/all-products"}, {"@type": "ListItem", "position": 3, "name": "Lace Up Shoes"}]}</script>
1341 1342 1343<div class="container mt-5"> 1344 <h1 class="mb-4">Lace Up Shoes</h1> 1345 <p class="text-muted mb-4">Showing available Lace Up shoes</p> 1346 1347 <div class="row"> 1348 1349 1350 <div class="col-md-3 mb-4"> 1351 <a href="/products/wizfort-mens-bicycle-toe-lace-up-q6rsr" class="text-decoration-none"> 1352 <div class="card h-100 product-card"> 1353 <div class="position-relative"> 1354 1355 <img src="/files/600_Main.png" class="card-img-top" alt="Wizfort Mens Bicycle Toe Lace Up" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1356 1357 1358 </div> 1359 <div class="card-body"> 1360 <h5 class="card-title">Wizfort Mens Bicycle Toe Lace Up</h5> 1361 <p class="text-muted small mb-1">Wizfort Shoes</p> 1362 <p class="text-muted small">600</p> 1363 </div> 1364 </div> 1365 </a> 1366 </div> 1367 1368 <div class="col-md-3 mb-4"> 1369 <a href="/products/wizfort-classics-mens-leather-sole-bicycle-toe-lace-up-s8svh" class="text-decoration-none"> 1370 <div class="card h-100 product-card"> 1371 <div class="position-relative"> 1372 1373 <img src="/files/710Main.png" class="card-img-top" alt="Wizfort Classics Mens Leather Sole Bicycle Toe Lace Up" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1374 1375 1376 </div> 1377 <div class="card-body"> 1378 <h5 class="card-title">Wizfort Classics Mens Leather Sole Bicycle Toe Lace Up</h5> 1379 <p class="text-muted small mb-1">Wizfort Shoes</p> 1380 <p class="text-muted small">710</p> 1381 </div> 1382 </div> 1383 </a> 1384 </div> 1385 1386 <div class="col-md-3 mb-4"> 1387 <a href="/products/wizfort-classics-mens-leather-sole-moc-toe-lace-up-ggqjf" class="text-decoration-none"> 1388 <div class="card h-100 product-card"> 1389 <div class="position-relative"> 1390 1391 <img src="/files/720Main.png" class="card-img-top" alt="Wizfort Classics Mens Leather Sole Moc Toe Lace Up" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1392 1393 1394 </div> 1395 <div class="card-body"> 1396 <h5 class="card-title">Wizfort Classics Mens Leather Sole Moc Toe Lace Up</h5> 1397 <p class="text-muted small mb-1">Wizfort Shoes</p> 1398 <p class="text-muted small">720</p> 1399 </div> 1400 </div> 1401 </a> 1402 </div> 1403 1404 <div class="col-md-3 mb-4"> 1405 <a href="/products/wizfort-mens-lightweight-bicycle-toe-lace-up-ul7ri" class="text-decoration-none"> 1406 <div class="card h-100 product-card"> 1407 <div class="position-relative"> 1408 1409 <img src="/files/Wizfort800_Main.png" class="card-img-top" alt="Wizfort Mens Lightweight Bicycle Toe Lace Up" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1410 1411 1412 </div> 1413 <div class="card-body"> 1414 <h5 class="card-title">Wizfort Mens Lightweight Bicycle Toe Lace Up</h5> 1415 <p class="text-muted small mb-1">Wizfort Shoes</p> 1416 <p class="text-muted small">800</p> 1417 </div> 1418 </div> 1419 </a> 1420 </div> 1421 1422 <div class="col-md-3 mb-4"> 1423 <a href="/products/wizfort-prestige-leather-sole-bicycle-toe-lace-up-shoe-for-men-bgki4" class="text-decoration-none"> 1424 <div class="card h-100 product-card"> 1425 <div class="position-relative"> 1426 1427 <img src="/files/Wizfort900_Main.png" class="card-img-top" alt="Wizfort Prestige Leather Sole Bicycle Toe Lace Up Shoe for Men" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1428 1429 1430 </div> 1431 <div class="card-body"> 1432 <h5 class="card-title">Wizfort Prestige Leather Sole Bicycle Toe Lace Up Shoe for Men</h5> 1433 <p class="text-muted small mb-1">Wizfort Shoes</p> 1434 <p class="text-muted small">900</p> 1435 </div> 1436 </div> 1437 </a> 1438 </div> 1439 1440 <div class="col-md-3 mb-4"> 1441 <a href="/products/wizfort-prestige-mens-moc-toe-lace-up-8svvp" class="text-decoration-none"> 1442 <div class="card h-100 product-card"> 1443 <div class="position-relative"> 1444 1445 <img src="/files/Wizfort910_Main.png" class="card-img-top" alt="Wizfort Prestige Mens Moc Toe Lace Up" width="300" height="200" loading="lazy" style="height: 200px; width: 100%; object-fit: cover; aspect-ratio: 3/2;"> 1446 1447 1448 </div> 1449 <div class="card-body"> 1450 <h5 class="card-title">Wizfort Prestige Mens Moc Toe Lace Up</h5> 1451 <p class="text-muted small mb-1">Wizfort Shoes</p> 1452 <p class="text-muted small">910</p> 1453 </div> 1454 </div> 1455 </a> 1456 </div> 1457 1458 1459 </div> 1460 1461 <div style="margin-top: 48px; padding-top: 32px; border-top: 1px solid #eee;"> 1462 <h3 style="font-size: 18px; font-weight: 600; margin-bottom: 16px;">Browse by Brand</h3> 1463 <div style="display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px;"> 1464 <a href="/brands/benelaccio" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Benelaccio</a> 1465 <a href="/brands/esse-comfort" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Esse Comfort</a> 1466 <a href="/brands/wizfort" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Wizfort</a> 1467 </div> 1468 <h3 style="font-size: 18px; font-weight: 600; margin-bottom: 16px;">Browse by Collection</h3> 1469 <div style="display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px;"> 1470 <a href="/collection/Casual/items" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Casual</a> 1471 <a href="/collection/Classic/items" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Classic</a> 1472 <a href="/collection/Dress/items" style="padding: 8px 16px; background: #f3f4f6; border-radius: 20px; color: #374151; text-decoration: none; font-size: 14px;">Dress</a> 1473 </div> 1474 <h3 style="font-size: 18px; font-weight: 600; margin-bottom: 16px;">Helpful Guides</h3> 1475 <ul style="list-style: none; padding-left: 0; margin: 0;"> 1476 <li style="margin-bottom: 8px;"><a href="/guides/shoe-buying-guide" style="color: #374151;">Shoe Buying Guide</a></li> 1477 <li style="margin-bottom: 8px;"><a href="/guides/how-to-style-dress-shoes" style="color: #374151;">How to Style Dress Shoes</a></li> 1478 </ul> 1479 </div> 1480</div> 1481 1482 1483</div> 1484 1485 <div class="page-footer"></div> 1486 </main> 1487 1488</div> 1489 1490</div> 1491 1492 1493 1494 </main><style> 1495/* CSL Shoes Shared Footer */ 1496.csl-footer { 1497 background: #111; 1498 color: #9ca3af; 1499 padding: 60px 0 30px; 1500 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 1501}
1502.csl-footer .container { 1503 max-width: 1400px; 1504 margin: 0 auto; 1505 padding: 0 20px; 1506} 1507.csl-footer-grid { 1508 display: grid; 1509 grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr; 1510 gap: 40px; 1511 margin-bottom: 40px; 1512} 1513.csl-footer-brand p { 1514 font-size: 13px; 1515 line-height: 1.6; 1516 margin-bottom: 20px; 1517 max-width: 280px; 1518} 1519.csl-footer-logo { 1520 font-size: 20px; 1521 font-weight: 700; 1522 color: #fff; 1523 margin-bottom: 12px; 1524} 1525.csl-footer-heading { 1526 font-size: 13px; 1527 font-weight: 600; 1528 color: #fff; 1529 text-transform: uppercase; 1530 letter-spacing: 0.5px; 1531 margin-bottom: 16px; 1532} 1533.csl-footer-links { list-style: none; padding: 0; margin: 0; } 1534.csl-footer-links li { margin-bottom: 10px; } 1535.csl-footer-links a { 1536 font-size: 13px; 1537 color: #9ca3af; 1538 text-decoration: none; 1539 transition: color 0.2s; 1540} 1541.csl-footer-links a:hover { color: #fff; } 1542.csl-footer-contact p { 1543 font-size: 13px; 1544 margin-bottom: 6px; 1545} 1546.csl-footer-contact a { color: #fff; text-decoration: none; } 1547.csl-footer-bottom { 1548 padding-top: 30px; 1549 border-top: 1px solid #374151; 1550 display: flex; 1551 align-items: center; 1552 justify-content: space-between; 1553} 1554.csl-footer-copyright { 1555 font-size: 12px; 1556 color: #6b7280; 1557} 1558.csl-footer-payments { display: flex; gap: 10px; align-items: center; } 1559.csl-footer-payments img { 1560 height: 24px; 1561 width: auto; 1562 opacity: 0.6; 1563 transition: opacity 0.2s; 1564} 1565.csl-footer-payments img:hover { opacity: 0.9; } 1566 1567/* Footer Responsive - Tablet */ 1568@media (max-width: 1024px) { 1569 .csl-footer-grid { grid-template-columns: repeat(2, 1fr); } 1570} 1571 1572/* Footer Responsive - Mobile */ 1573@media (max-width: 768px) { 1574 .csl-footer { padding: 40px 0 20px; } 1575 .csl-footer-grid { grid-template-columns: 1fr; gap: 24px; } 1576 .csl-footer-brand p { font-size: 12px; } 1577 .csl-footer-heading { font-size: 12px; margin-bottom: 12px; } 1578 .csl-footer-links a { font-size: 12px; } 1579 .csl-footer-bottom { flex-direction: column; gap: 12px; text-align: center; } 1580 .csl-footer-payments { flex-wrap: wrap; justify-content: center; } 1581} 1582</style> 1583 1584<footer class="csl-footer" data-nosnippet> 1585 <div class="container"> 1586 <div class="csl-footer-grid"> 1587 <div class="csl-footer-brand"> 1588 <p class="csl-footer-logo">CSL Shoes</p> 1589 <p>Premium leather footwear for the whole family since 2008. Genuine leather uppers, handcrafted quality, and exceptional customer service.</p> 1590 <p class="csl-footer-entity" style="font-size:12px;line-height:1.6;color:#9ca3af;margin-bottom:16px;max-width:280px;">Retail purchases on this website are sold by CSL Retail LLC. Wholesale purchases are sold by The CSL Group, Inc â both operate from 3 Alpine Court, Unit W156, Chestnut Ridge, NY 10977.</p> 1591 </div> 1592 <div> 1593 <div class="csl-footer-heading">Shop</div> 1594 <ul class="csl-footer-links"> 1595 <li><a href="/all-products">All Products</a></li> 1596 <li><a href="/closure-type/Lace-Up/items">Oxfords</a></li> 1597 <li><a href="/closure-type/Velcro/items">Boys' Shoes</a></li> 1598 <li><a href="/closure-type/Slip-On/items">Loafers</a></li> 1599 <li><a href="/all-products">New Arrivals</a></li> 1600 </ul> 1601 </div> 1602 <div> 1603 <div class="csl-footer-heading">Support</div> 1604 <ul class="csl-footer-links"> 1605 <li><a href="/size-guide">Size Guide</a></li> 1606 <li><a href="/shipping">Shipping Info</a></li> 1607 <li><a href="/returns">Returns</a></li> 1608 <li><a href="/guides/leather-shoe-care">Shoe Care</a></li> 1609 <li><a href="/help">FAQ</a></li> 1610 <li><a href="/blog">Blog</a></li> 1611 </ul> 1612 </div> 1613 <div> 1614 <div class="csl-footer-heading">Company</div> 1615 <ul class="csl-footer-links"> 1616 <li><a href="/about">About Us</a></li> 1617 <li><a href="/contact">Contact</a></li> 1618 <li><a href="/privacy-policy">Privacy Policy</a></li> 1619 <li><a href="/terms-of-service">Terms of Service</a></li> 1620 </ul> 1621 </div> 1622 <div class="csl-footer-contact"> 1623 <div class="csl-footer-heading">Contact Us</div> 1624 <p><a href="/cdn-cgi/l/email-protection#462f2820290625352a352e2923356825292b"><span class="__cf_email__" data-cfemail="c1a8afa7ae81a2b2adb2a9aea4b2efa2aeac">[email protected]</span></a></p> 1625 <p>Mon - Fri: 9am - 6pm EST</p> 1626 </div> 1627 </div> 1628 <div class="csl-footer-bottom"> 1629 <p class="csl-footer-copyright">© 2026 CSL Shoes. All rights reserved.</p> 1630 <div class="csl-footer-payments"> 1631 <img src="/assets/cslshoes_erp/images/visa.svg" alt="Visa" width="40" height="24"> 1632 <img src="/assets/cslshoes_erp/images/mastercard.svg" alt="Mastercard" width="40" height="24"> 1633 <img src="/assets/cslshoes_erp/images/amex.svg" alt="American Express" width="40" height="24"> 1634 </div> 1635 </div> 1636 </div> 1637</footer> 1638 1639 <a href="https://wa.me/18456946700?text=Hi%2C%20I%20have%20a%20question%20about%20your%20shoes" 1640 target="_blank" rel="noopener" 1641 class="csl-whatsapp-widget" 1642 aria-label="Chat with us on WhatsApp" 1643 style="position:fixed;bottom:24px;right:24px;z-index:9998;width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,0.15);transition:transform 0.2s;" 1644 onmouseover="this.style.transform='scale(1.1)'" 1645 onmouseout="this.style.transform='scale(1)'"> 1646 <svg viewBox="0 0 24 24" width="28" height="28" fill="white"> 1647 <path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.
1647198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z"/> 1648 </svg> 1649 </a>
vendor: 110 bytes, lines 1649-1650
1649 1650 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
1650<script> 1651 frappe.boot = { 1652 "apps_data": { 1653 "apps": [], 1654 "default_path": "", 1655 "is_desk_apps": 1 1656 }, 1657 "assets_json": { 1658 "bank-reconciliation-tool.bundle.js": "/assets/erpnext/dist/js/bank-reconciliation-tool.bundle.3OD5XE4B.js", 1659 "billing.bundle.js": "/assets/frappe/dist/js/billing.bundle.XJXMQXLI.js", 1660 "bom_configurator.bundle.js": "/assets/erpnext/dist/js/bom_configurator.bundle.KVVOL5AV.js", 1661 "bootstrap-4-web.bundle.js": "/assets/frappe/dist/js/bootstrap-4-web.bundle.OGQ7JEDG.js", 1662 "build_events.bundle.js": "/assets/frappe/dist/js/build_events.bundle.BCX32TWL.js", 1663 "calendar.bundle.js": "/assets/frappe/dist/js/calendar.bundle.4A4YITIU.js", 1664 "controls.bundle.js": "/assets/frappe/dist/js/controls.bundle.GHTVO2AR.js", 1665 "csl-web.bundle.js": "/assets/cslshoes_erp/dist/js/csl-web.bundle.SBA57Y6F.js", 1666 "cslshoes_erp-web.bundle.js": "/assets/cslshoes_erp/dist/js/cslshoes_erp-web.bundle.VKBRYFDI.js", 1667 "data_import_tools.bundle.js": "/assets/frappe/dist/js/data_import_tools.bundle.AIMRIHAY.js", 1668 "desk.bundle.css": "/assets/frappe/dist/css/desk.bundle.E3JNXVFK.css", 1669 "desk.bundle.js": "/assets/frappe/dist/js/desk.bundle.LRVAENER.js", 1670 "dialog.bundle.js": "/assets/frappe/dist/js/dialog.bundle.4Y7AGZYX.js", 1671 "email.bundle.css": "/assets/frappe/dist/css/email.bundle.FRP6ZWO5.css", 1672 "erpnext-web.bundle.css": "/assets/erpnext/dist/css/erpnext-web.bundle.XAPV6OJR.css", 1673 "erpnext.bundle.css": "/assets/erpnext/dist/css/erpnext.bundle.U3ZULTHY.css", 1674 "erpnext.bundle.js": "/assets/erpnext/dist/js/erpnext.bundle.W4BKB7EY.js", 1675 "erpnext_email.bundle.css": "/assets/erpnext/dist/css/erpnext_email.bundle.QDPP6JFP.css", 1676 "file_uploader.bundle.js": "/assets/frappe/dist/js/file_uploader.bundle.NFWQ74RI.js", 1677 "form.bundle.js": "/assets/frappe/dist/js/form.bundle.V6TJPRRA.js", 1678 "form_builder.bundle.js": "/assets/frappe/dist/js/form_builder.bundle.TJDI53IC.js", 1679 "frappe-web.bundle.js": "/assets/frappe/dist/js/frappe-web.bundle.6AGRRLFL.js", 1680 "hierarchy-chart.bundle.js": "/assets/hrms/dist/js/hierarchy-chart.bundle.5E224PCR.js", 1681 "hrms.bundle.css": "/assets/hrms/dist/css/hrms.bundle.2Y752HAB.css", 1682 "hrms.bundle.js": "/assets/hrms/dist/js/hrms.bundle.QS2GRVNQ.js", 1683 "interview.bundle.js": "/assets/hrms/dist/js/interview.bundle.C7CDEMYA.js",
1684 "item-dashboard.bundle.js": "/assets/erpnext/dist/js/item-dashboard.bundle.7LUKZCYJ.js", 1685 "kanban_board.bundle.js": "/assets/frappe/dist/js/kanban_board.bundle.WBHS2NSO.js", 1686 "libs.bundle.js": "/assets/frappe/dist/js/libs.bundle.JEM3HUCP.js", 1687 "list.bundle.js": "/assets/frappe/dist/js/list.bundle.C5NWOGPL.js", 1688 "login.bundle.css": "/assets/frappe/dist/css/login.bundle.PUSGKFZL.css", 1689 "logtypes.bundle.js": "/assets/frappe/dist/js/logtypes.bundle.WKQH7KBM.js", 1690 "onboarding_tours.bundle.js": "/assets/frappe/dist/js/onboarding_tours.bundle.3QPQU5AO.js", 1691 "performance.bundle.js": "/assets/hrms/dist/js/performance.bundle.63UL5NS7.js", 1692 "photoswipe.bundle.js": "/assets/frappe/dist/js/photoswipe.bundle.YSXZQA64.js", 1693 "point-of-sale.bundle.js": "/assets/erpnext/dist/js/point-of-sale.bundle.QTZY4HXK.js", 1694 "print.bundle.css": "/assets/frappe/dist/css/print.bundle.TFESFRRQ.css", 1695 "print_format.bundle.css": "/assets/frappe/dist/css/print_format.bundle.G3JSEXTM.css", 1696 "print_format_builder.bundle.js": "/assets/frappe/dist/js/print_format_builder.bundle.EY2DZ4XK.js", 1697 "report.bundle.css": "/assets/frappe/dist/css/report.bundle.YRLG53MK.css", 1698 "report.bundle.js": "/assets/frappe/dist/js/report.bundle.YZUQRDTQ.js", 1699 "rtl_desk.bundle.css": "/assets/frappe/dist/css-rtl/desk.bundle.GTUX6NUS.css", 1700 "rtl_email.bundle.css": "/assets/frappe/dist/css-rtl/email.bundle.S6OLPJLO.css", 1701 "rtl_erpnext-web.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext-web.bundle.MY3OHIQG.css", 1702 "rtl_erpnext.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext.bundle.NFI4TDNU.css", 1703 "rtl_erpnext_email.bundle.css": "/assets/erpnext/dist/css-rtl/erpnext_email.bundle.4SUQQPOC.css", 1704 "rtl_hrms.bundle.css": "/assets/hrms/dist/css-rtl/hrms.bundle.2VFWZIH4.css", 1705 "rtl_login.bundle.css": "/assets/frappe/dist/css-rtl/login.bundle.LAUNAKDN.css", 1706 "rtl_print.bundle.css": "/assets/frappe/dist/css-rtl/print.bundle.46KW2M23.css", 1707 "rtl_print_format.bundle.css": "/assets/frappe/dist/css-rtl/print_format.bundle.WRCRSWVB.css", 1708 "rtl_report.bundle.css": "/assets/frappe/dist/css-rtl/report.bundle.J47TQ5QB.css", 1709 "rtl_web_form.bundle.css": "/assets/frappe/dist/css-rtl/web_form.bundle.V6TATNAO.css", 1710 "rtl_webshop-web.bundle.css": "/assets/webshop/dist/css-rtl/webshop-web.bundle.MXY3MF47.css", 1711 "rtl_website.bundle.css": "/assets/frappe/dist/css-rtl/website.bundle.UYAJRC2H.css", 1712 "sentry.bundle.js": "/assets/frappe/dist/js/sentry.bundle.AX44GVWW.js", 1713 "syntax_highlighting.bundle.js": "/assets/frappe/dist/js/syntax_highlighting.bundle.YHGNRCUE.js", 1714 "telemetry.bundle.js": "/assets/frappe/dist/js/telemetry.bundle.RXBBNH3H.js", 1715 "user_onboarding.bundle.js": "/assets/frappe/dist/js/user_onboarding.bundle.RGMWXG2C.js", 1716 "video_player.bundle.js": "/assets/frappe/dist/js/video_player.bundle.DUYYLSFO.js", 1717 "web.bundle.js": "/assets/webshop/dist/js/web.bundle.WLOGYSZO.js", 1718 "web_form.bundle.css": "/assets/frappe/dist/css/web_form.bundle.6KU4CLFY.css", 1719 "web_form.bundle.js": "/assets/frappe/dist/js/web_form.bundle.ALVCCXE4.js", 1720 "webshop-web.bundle.css": "/assets/webshop/dist/css/webshop-web.bundle.GQDT63VG.css", 1721 "website.bundle.css": "/assets/frappe/dist/css/website.bundle.GD6PKXQI.css", 1722 "workflow_builder.bundle.js": "/assets/frappe/dist/js/workflow_builder.bundle.O2QPXUEI.js" 1723 }, 1724 "is_fc_site": 0, 1725 "lang": "en-US", 1726 "sitename": "csl.local", 1727 "sysdefaults": { 1728 "currency": "USD", 1729 "date_format": "mm/dd/yyyy", 1730 "first_day_of_the_week": "Sunday", 1731 "float_precision": 3, 1732 "number_format": "#,###.##", 1733 "time_format": "HH:mm:ss" 1734 }, 1735 "time_zone": { 1736 "system": "America/New_York", 1737 "user": "America/New_York" 1738 } 1739} 1740 frappe.sys_defaults = frappe.boot.sysdefaults; 1741 </script>
1741 1742 1743
1743<script type="text/javascript" src="/assets/cslshoes_erp/dist/js/csl-web.bundle.SBA57Y6F.js"></script>
1743 1744 1745
1745<script type="text/javascript" src="/website_script.js" defer></script>
1745 1746
1746<script type="text/javascript" src="/assets/webshop/dist/js/web.bundle.WLOGYSZO.js" defer></script>
1746 1747
1747<script type="text/javascript" src="/assets/cslshoes_erp/dist/js/cslshoes_erp-web.bundle.VKBRYFDI.js" defer></script>
1747 1748
1748<script type="text/javascript" src="/assets/cslshoes_erp/js/csl-analytics.js?v=20260528a" defer></script>
1748 1749
1749<script type="text/javascript" src="/assets/cslshoes_erp/js/product_image_autoplay.js?v=20260613a" defer></script>
1749 1750
1750<script type="text/javascript" src="/assets/cslshoes_erp/js/compare.js" defer></script>
1750 1751
1751<script type="text/javascript" src="/assets/cslshoes_erp/js/tile_wishlist.js?v=20260517e" defer></script>
1751 1752
1752<script type="text/javascript" src="/assets/cslshoes_erp/js/all_products_patches.js?v=20260613a" defer></script>
1752 1753
1753<script type="text/javascript" src="/assets/cslshoes_erp/js/wishlist_page.js?v=20260517c" defer></script>
1753 1754
1754<script type="text/javascript" src="/assets/cslshoes_erp/js/wholesale_order_banner.js?v=20260520c" defer></script>
1754 1755
1755<script type="text/javascript" src="/assets/cslshoes_erp/js/sso_login_order.js?v=20260531b" defer></script>
1755 1756
1756<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"02110bd8a9eb40e98c9fc92b32ecf849","r":1,"spa":2}' crossorigin="anonymous"></script>
1756 1757</body> 1758</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.