1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <title>Small Batch</title> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"> 6 <meta charset="UTF-8"> 7 8 <meta name="description" content="" /> 9 <meta property="og:title" content="" /> 10 <meta property="og:description" content="" /> 11 <meta property="og:image" content="" /> 12 <meta property="og:type" content="website" /> 13 <meta property="og:url" content="https://www.smallbatchws.com/contact-us" /> 14 15 <link rel="icon" type="image/x-icon" href="https://chowly-coo-configuration-assets.nyc3.digitaloceanspaces.com/chowly-coo-prod-configuration-assets/public/assets/Favi-314-ea25a2ec-cb9d-4bf7-b888-74cccbc29ad5.jpg"> 16 <link rel="canonical" href="https://www.smallbatchws.com/contact-us" /> 17 18 19 20 21 22 <link rel="stylesheet" href="/assets/site-94cc68917d34ae6c2fdb1850b8c7fc7064f5b465032aa1bd7806d8dd6aecaff5.css" data-turbo-track="reload" /> 23 <link rel="stylesheet" href="/assets/icons-8a8adf1b209dcf6019c445e5477d00b79192f6726b65fd7cf29cf43036ec3917.css" data-turbo-track="reload" /> 24 25
25<script type="importmap" data-turbo-track="reload">{ 26 "imports": { 27 "application": "/assets/application-4a1c1d27c11faa4dbac51fff4126422169b85739cdee3e8b89ea183bc17a2c23.js", 28 "@hotwired/turbo-rails": "/assets/turbo.min-f3765a09513ca1417099ce92257ef54b9d4cf3a7addc7dcbb1d6d848d307ee8a.js", 29 "@hotwired/stimulus": "/assets/stimulus.min-dd364f16ec9504dfb72672295637a1c8838773b01c0b441bd41008124c407894.js", 30 "@hotwired/stimulus-loading": "/assets/stimulus-loading-3576ce92b149ad5d6959438c6f291e2426c86df3b874c525b30faad51b0d96b3.js", 31 "site": "/assets/site-4b047adea2bfbedbd09cb582dd17c2c15e218d15c9dc17cfa26985c983bcea78.js", 32 "local-time": "/assets/local-time-821d43d4efe5c285055b57aea1a1f04a89a1019f689de214873d5af45a3ab3d7.js", 33 "jquery": "/assets/jquery-9292661fe0d8c5ef2ef35f5ca64d541d70c87e9f6d7f2716d646591a295b7f36.js", 34 "jquery-mask-plugin": "/assets/jquery-mask-plugin-12f491759485d6e50f909cf5fb641f245011016ab91b9043c057666fe07a99c0.js", 35 "alpinejs": "/assets/alpinejs-1330ff78f6252d676b60ac1291d71df4f04e542899717f8ee4d03a79dec27045.js", 36 "swiper": "/assets/swiper-7f75dbb82de8bbee0e764cde34bb5d2b466cf29a41dbcec463259a2c0c272bc5.js", 37 "libraries/vidbg": "/assets/libraries/vidbg-ca103f7572673d0e7e3cc8a6a59b200f7ab3da61da78a43e532949d800635fa5.js", 38 "controllers/application": "/assets/controllers/application-368d98631bccbf2349e0d4f8269afb3fe9625118341966de054759d96ea86c7e.js", 39 "controllers/hello_controller": "/assets/controllers/hello_controller-549135e8e7c683a538c3d6d517339ba470fcfb79d62f738a0a089ba41851a554.js", 40 "controllers": "/assets/controllers/index-2db729dddcc5b979110e98de4b6720f83f91a123172e87281d5a58410fc43806.js", 41 "controllers/prompt_engineering_controller": "/assets/controllers/prompt_engineering_controller-c5abfd07f3f7b741f778d3070d18fd216b100840ef6cfdce4adb7c953a59d715.js" 42 } 43}</script>
43 44<link rel="modulepreload" href="/assets/site-4b047adea2bfbedbd09cb582dd17c2c15e218d15c9dc17cfa26985c983bcea78.js"> 45<link rel="modulepreload" href="/assets/jquery-9292661fe0d8c5ef2ef35f5ca64d541d70c87e9f6d7f2716d646591a295b7f36.js"> 46<link rel="modulepreload" href="/assets/jquery-mask-plugin-12f491759485d6e50f909cf5fb641f245011016ab91b9043c057666fe07a99c0.js"> 47<link rel="modulepreload" href="/assets/alpinejs-1330ff78f6252d676b60ac1291d71df4f04e542899717f8ee4d03a79dec27045.js"> 48<link rel="modulepreload" href="/assets/swiper-7f75dbb82de8bbee0e764cde34bb5d2b466cf29a41dbcec463259a2c0c272bc5.js">
49<script type="module">import "site"</script>
49 50 51 <link rel="preconnect" href="https://fonts.googleapis.com"> 52 <link rel="preconnect" href="https://cdnjs.cloudflare.com"> 53 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 54 <link rel="preconnect" href="https://maps.googleapis.com" crossorigin> 55 56 57 <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,700,0..1,0&icon_names=17mp,add_card,ads_click,app_promo,attach_money,award_star,bakery_dining,bookmark_star,breakfast_dining,brightness_alert,cake,cake_add,cleaning_bucket,coffee,credit_card,date_range,directions_bus,drag_click,emoji_food_beverage,explosion,fastfood,featured_seasonal_and_gifts,fiber_new,file_map,file_map_stack,fireplace,food_bank,fork_spoon,glass_cup,home_pin,kid_star,local_bar,local_dining,local_fire_department,local_pizza,location_on,lunch_dining,mail,mark_email_unread,motorcycle,online_prediction,open_in_phone,phone_enabled,pin_drop,potted_plant,priority,quick_reorder,ramen_dining,restaurant,rice_bowl,sell,sentiment_excited,set_meal,settings_cell,shopping_bag,skillet_cooktop,smartphone,soup_kitchen,sports_football,star,star_rate,stockpot,trophy,volunteer_activism,wifi_calling_bar_1,wine_bar&display=block" 58 rel="preload" as="style"> 59 <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,700,0..1,0&icon_names=17mp,add_card,ads_click,app_promo,attach_money,award_star,bakery_dining,bookmark_star,breakfast_dining,brightness_alert,cake,cake_add,cleaning_bucket,coffee,credit_card,date_range,directions_bus,drag_click,emoji_food_beverage,explosion,fastfood,featured_seasonal_and_gifts,fiber_new,file_map,file_map_stack,fireplace,food_bank,fork_spoon,glass_cup,home_pin,kid_star,local_bar,local_dining,local_fire_department,local_pizza,location_on,lunch_dining,mail,mark_email_unread,motorcycle,online_prediction,open_in_phone,phone_enabled,pin_drop,potted_plant,priority,quick_reorder,ramen_dining,restaurant,rice_bowl,sell,sentiment_excited,set_meal,settings_cell,shopping_bag,skillet_cooktop,smartphone,soup_kitchen,sports_football,star,star_rate,stockpot,trophy,volunteer_activism,wifi_calling_bar_1,wine_bar&display=block" 60 rel="stylesheet"> 61 62 <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/fontawesome.min.css" 63 rel="preload" as="style"> 64 <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/fontawesome.min.css" 65 rel="stylesheet"> 66 67 <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/brands.min.css" 68 rel="preload" as="style"> 69 <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/brands.min.css" 70 rel="stylesheet">
vendor: 75 bytes, lines 70-72
70 71 72 <script src="https://www.google.com/recaptcha/enterprise.js?render=
726LcsffgqAAAAANLXQa19TOl4LbE2V7eS6PfaYhiT
vendor: 20 bytes, lines 72-73
72" defer></script> 73
73<script 74 src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAkzXdhpOE3VmUpHjl1ZqL5VBuLpJmMrkc&libraries=maps,marker" 75 async></script>
75 76 77
77<script> 78 if (!window.origin.includes('http://localhost')) { 79 window.heap=window.heap||[],heap.load=function(e,t){window.heap.appid=e,window.heap.config=t=t||{};var r=document.createElement("script");r.type="text/javascript",r.async=!0,r.src="https://cdn.heapanalytics.com/js/heap-"+e+".js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(r,a);for(var n=function(e){return function(){heap.push([e].concat(Array.prototype.slice.call(arguments,0)))}},p=["addEventProperties","addUserProperties","clearEventProperties","identify","resetIdentity","removeEventProperty","setEventProperties","track","unsetEventProperty"],o=0;o<p.length;o++)heap[p[o]]=n(p[o])}; 80 heap.load((window.origin.includes('chowly.dev') ? '3177339425' : '3745098455')); 81 } 82 </script>
82 83 84 <link href="https://fonts.googleapis.com/css2?family=Roboto Slab:wght@400;700&family=Roboto Slab:wght@400;700&display=swap" 85 rel="preload" as="style"> 86 <link href="https://fonts.googleapis.com/css2?family=Roboto Slab:wght@400;700&family=Roboto Slab:wght@400;700&display=swap" 87 rel="stylesheet"> 88 89 <style> 90 91 :root { 92 /* Light theme colors */ 93 --bg-primary: white; 94 --bg-secondary: #F2F2F2; 95 --bg-form: white; 96 --text-primary: #212121; 97 --text-secondary: #666; 98 --text-muted: #666666; 99 --border-primary: #231c1a; 100 --border-secondary: #D7D7D7; 101 --stroke-primary: #231c1a; 102 --stroke-secondary: currentColor; 103 --active-bg-opacity: 8%; 104 --active-text: #231c1a; 105 --hover-bg-opacity: 8%; 106 --hover-text: #231c1a; 107 --link-text: #666; 108 --link-hover: black; 109 --social-bg: #666; 110 --social-text: white; 111 --placeholder-text: #D7D7D7; 112 --focus-border: #777777; 113 --button-bg: transparent; 114 --button-text: #231c1a; 115 --button-border: #231c1a; 116 --button-hover-bg: transparent; 117 --button-hover-border: #231c1a; 118 --brand-primary: #231c1a; 119 --brand-overlay: rgba(35,28,26,0.08); 120 --brand-overlay-heavy: rgba(35,28,26,0.80); 121 --dim-overlay: rgba(0,0,0,0.4); 122 } 123 124 body { 125 background: linear-gradient(180deg, rgba(35, 28, 26, 0.08) 0px, rgba(35, 28, 26, 0.00) 520px); 126 } 127 128 .grecaptcha-badge { visibility: hidden; } 129 </style> 130 131 132 133
133<script src="https://cdn.userway.org/widget.js" data-account="2RTD1qUW2F" data-position="3"></script>
133 134 135 <link rel="stylesheet" href="/assets/vidbg-59cd2b661e27143a4d41f154396b1fabc6ac9c0893f4d4b1623cbf033efc0130.css" /> 136 137
137<script src="/assets/libraries/vidbg-ca103f7572673d0e7e3cc8a6a59b200f7ab3da61da78a43e532949d800635fa5.js"></script>
137 138
138<script src="/assets/banner-component-df2178bd5e74fa643d7e2d34c63f98ee00a1bb6d69b502a08043cecec055cee2.js"></script>
138 139 140
140<script async> 141 window.chowlyApiHost = 'https://api.chowlyinc.com'; 142 window.siteHost = 'https://sites.chowly.app'; 143 </script>
143 144 145
145<script type="application/ld+json"> 146 {"@type":"Restaurant","name":"Small Batch","address":{"@type":"PostalAddress","streetAddress":"241 W 5th St","addressLocality":"Winston-Salem","addressRegion":"NC","postalCode":"27101","addressCountry":"US"},"telephone":"3368936395","geo":{"@type":"GeoCoordinates","latitude":36.0997802,"longitude":-80.24720769999999},"url":"https://www.smallbatchws.com#location-46227","priceRange":"$$","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Sunday","opens":"11:00:00","closes":"22:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Tuesday","opens":"11:00:00","closes":"22:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Wednesday","opens":"11:00:00","closes":"22:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Thursday","opens":"11:00:00","closes":"23:59:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Friday","opens":"11:00:00","closes":"23:59:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Saturday","opens":"10:00:00","closes":"23:59:00"}],"hasMenu":"https://www.smallbatchws.com/menu","areaServed":["Downtown Winston-Salem","Trade Street Arts District","Bailey Park Area","Holly Avenue Historic District","West End","Winston-Salem","Forsyth County","Reynolda Area","Clemmons","Greater Piedmont Triad Area"],"@context":"https://schema.org"} 147 </script>
147 148</head> 149<body data-organization-id="46545"> 150 <a href="#main-content" class="sr-only focus:not-sr-only">Skip to main content</a> 151 <main id="main-content" role="main" data-maglev-dropzone> 152 <section class="grid grid-cols-2 gap-0 justify-center"> 153 <div class="bg-[var(--brand-primary)] w-full h-[40px] flex justify-center items-center px-4 col-span-2" role="banner" id="section-BjgzZhgrx8s" data-maglev-section-id="BjgzZhgrx8s" data-maglev-section-type="site_notification_01"> 154 <section class="flex items-center space-x-2 max-w-[1440px] w-full justify-center"> 155 <div class="w-[30px] h-[30px] overflow-hidden"> 156 <i class="text-white mds-food_bank" data-maglev-id="BjgzZhgrx8s.icon" aria-hidden="true"></i> 157 </div> 158 <span data-maglev-id="BjgzZhgrx8s.title" class="text-white text-[14px] font-normal leading-[24px] text-center line-clamp-2 overflow-hidden"><p>On the corner of 5th and Cherry Street in downtown Winston-Salem</p></span> 159 </section> 160</div><header class="sticky top-0 z-50 bg-[var(--bg-primary)] py-[16px] xl:py-[12px] shadow-md w-full col-span-2" id="section-tscTCVh1ba8" data-maglev-section-id="tscTCVh1ba8" data-maglev-section-type="standard_nav_01"> 161 <div class="flex justify-between items-center px-4 xl:px-8 mx-auto w-full xl:max-w-[1440px]"> 162 <div class="flex items-center"> 163 <div class="max-w-[280px] max-h-[100px] rounded-lg flex-shrink-0 mr-4 xl:mr-8"> 164 <a href="/" aria-label="Small Batch home"> 165 <img src="https://image-cdn.chowlyinc.com/300%2Cfit%2Cavif/https%3A%2F%2Fchowly-coo-configuration-assets.nyc3.digitaloceanspaces.com%2Fchowly-coo-prod-configuration-assets%2Fpublic%2Fassets%2Fsmall-batch-logo-176a44ec-ddb1-4075-bef8-57acce3cdab0.png" alt="Small Batch logo" class="max-w-[280px] max-h-[100px] w-auto h-auto object-contain rounded-lg"> 166 </a> 167 </div> 168 169 <nav role="navigation" aria-label="Main navigation" class="hidden xl:block"> 170 <ul class="flex"> 171 172 173 <li> 174 <a data-maglev-id="Vjl0Aq4Zkwg.link" class="flex text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3" aria-current="false" href="/"><span data-maglev-id="Vjl0Aq4Zkwg.link.text">Home</span></a> 175 </li> 176 177 <li> 178 <a data-maglev-id="BBg_RESKcSs.link" class="flex text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3" aria-current="false" href="/our-story"><span data-maglev-id="BBg_RESKcSs.link.text">Our Story</span></a> 179 </li> 180 181 <li> 182 <a data-maglev-id="yBrl2ANtRtk.link" class="flex text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3" aria-current="false" href="/catering"><span data-maglev-id="yBrl2ANtRtk.link.text">Catering</span></a> 183 </li> 184 185 <li> 186 <a data-maglev-id="uCYh5BqzCDk.link" class="flex text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3" aria-current="false" href="/menu"><span data-maglev-id="uCYh5BqzCDk.link.text">Menu</span></a> 187 </li> 188 189 <li class="relative"> 190 <button id="more-menu-button" class="flex text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3"> 191 More 192 <svg id="more-arrow" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 transition-transform duration-300" fill="none" viewBox="0 0 24 24" stroke="currentColor"> 193 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7" /> 194 </svg> 195 </button> 196 <div id="more-dropdown" class="hidden fixed left-0 right-0 w-full z-50 transition-all duration-300"> 197 <div class="mx-auto max-w-7xl bg-[var(--bg-secondary)] shadow-lg p-6 rounded-lg dropdown-top-shadow"> 198 <div class="grid grid-cols-3 gap-4"> 199 <div class="w-full mb-2"> 200 <a data-maglev-id="alhwCS0gKjk.link" target="_blank" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] inline-block py-2 px-4 text-sm font-medium rounded-md" aria-current="false" href="https://static1.squarespace.com/static/5cc34a51523958310fcf26a6/t/68040f3c062e0a0755c29d86/1745096509186/Wee
200kly-1.pdf"><span data-maglev-id="alhwCS0gKjk.link.text">Specials</span></a> 201 </div> 202 <div class="w-full mb-2"> 203 <a data-maglev-id="dyOnhTUw7LQ.link" class="bg-[var(--brand-primary)]/[var(--active-bg-opacity)] text-[var(--active-text)] inline-block py-2 px-4 text-sm font-medium rounded-md" aria-current="page" href="/contact-us"><span data-maglev-id="dyOnhTUw7LQ.link.text">Contact Us</span></a> 204 </div> 205 </div> 206 </div> 207 </div> 208 </li> 209 </ul> 210 </nav> 211 </div> 212 213 <!-- Right side: Mobile toggle + Desktop buttons --> 214 <div class="flex items-center gap-2"> 215 <!-- Mobile menu toggle --> 216 <div class="xl:hidden"> 217 <button id="menu-toggle" class="focus:outline-none" aria-expanded="false" aria-controls="mobile-menu" aria-label="Toggle menu"> 218 <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="var(--stroke-primary)"> 219 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" /> 220 </svg> 221 </button> 222 </div> 223 224 <!-- Desktop buttons (hidden on mobile) --> 225 <div class="hidden xl:flex items-center gap-2"> 226 <!-- Primary Order Now button (hardcoded) --> 227 <a href="/stores" class="inline-flex items-center justify-center h-12 px-8 bg-[var(--brand-primary)] text-white text-base font-semibold rounded-md hover:brightness-90">Order Now</a> 228 229 <!-- Secondary button (optional, configurable) --> 230 </div> 231 </div> 232 </div> 233 234 <div id="mobile-menu" class="hidden fixed top-0 left-0 w-full h-full bg-[var(--bg-primary)] z-50 overflow-y-auto"> 235 <div class="flex justify-between items-center px-4 py-4 sticky top-0 bg-[var(--bg-primary)] z-10"> 236 <div class="max-w-[280px] max-h-[100px] rounded-lg flex-shrink-0 mr-4 xl:mr-8"> 237 <img src="https://image-cdn.chowlyinc.com/300%2Cfit%2Cavif/https%3A%2F%2Fchowly-coo-configuration-assets.nyc3.digitaloceanspaces.com%2Fchowly-coo-prod-configuration-assets%2Fpublic%2Fassets%2Fsmall-batch-logo-176a44ec-ddb1-4075-bef8-57acce3cdab0.png" alt="Small Batch logo" class="max-w-[280px] max-h-[100px] w-auto h-auto object-contain rounded-lg"> 238 </div> 239 <button id="menu-close" class="focus:outline-none" aria-label="Close menu"> 240 <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="var(--stroke-primary)"> 241 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" /> 242 </svg> 243 </button> 244 </div> 245 246 <nav role="navigation" aria-label="Mobile navigation" class="pb-32"> 247 <ul class="flex flex-col items-start px-5 space-y-6 mt-8"> 248 249 <li> 250 <a data-maglev-id="Vjl0Aq4Zkwg.link" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] py-2 px-4 text-sm font-semibold pl-3" aria-current="false" href="/"><span data-maglev-id="Vjl0Aq4Zkwg.link.text">Home</span></a> 251 </li> 252 253 <li> 254 <a data-maglev-id="BBg_RESKcSs.link" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] py-2 px-4 text-sm font-semibold pl-3" aria-current="false" href="/our-story"><span data-maglev-id="BBg_RESKcSs.link.text">Our Story</span></a> 255 </li> 256 257 <li> 258 <a data-maglev-id="yBrl2ANtRtk.link" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] py-2 px-4 text-sm font-semibold pl-3" aria-current="false" href="/catering"><span data-maglev-id="yBrl2ANtRtk.link.text">Catering</span></a> 259 </li> 260 261 <li> 262 <a data-maglev-id="uCYh5BqzCDk.link" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] py-2 px-4 text-sm font-semibold pl-3" aria-current="false" href="/menu"><span data-maglev-id="uCYh5BqzCDk.link.text">Menu</span></a> 263 </li> 264 265 <li> 266 <a data-maglev-id="alhwCS0gKjk.link" target="_blank" class="text-[var(--text-muted)] hover:bg-[var(--brand-primary)]/[var(--hover-bg-opacity)] py-2 px-4 text-sm font-semibold pl-3" aria-current="false" href="https://static1.squarespace.com/static/5cc34a51523958310fcf26a6/t/68040f3c062e0a0755c29d86/1745096509186/Wee
266kly-1.pdf"><span data-maglev-id="alhwCS0gKjk.link.text">Specials</span></a> 267 </li> 268 269 <li> 270 <a data-maglev-id="dyOnhTUw7LQ.link" class="bg-[var(--brand-primary)]/[var(--active-bg-opacity)] text-[var(--active-text)] py-2 px-4 text-sm font-semibold pl-3" aria-current="page" href="/contact-us"><span data-maglev-id="dyOnhTUw7LQ.link.text">Contact Us</span></a> 271 </li> 272 </ul> 273 </nav> 274 275 <div class="fixed bottom-0 left-0 w-full flex items-center justify-center gap-2 py-8 px-4 bg-[var(--bg-primary)] border-[var(--border-secondary)]"> 276 <!-- Primary Order Now button (hardcoded) --> 277 <a href="/stores" class="inline-flex h-12 px-8 justify-center items-center gap-2 flex-shrink-0 rounded-[6px] bg-[var(--brand-primary)] text-white text-[15px] font-semibold leading-[150%] hover:brightness-90">Order Now</a> 278 279 <!-- Secondary button (optional, configurable) --> 280 </div> 281 </div> 282</header>
283<script> 284 const menuToggle = document.getElementById('menu-toggle'); 285 const menuClose = document.getElementById('menu-close'); 286 const mobileMenu = document.getElementById('mobile-menu'); 287 288 menuToggle.addEventListener('click', () => { 289 mobileMenu.classList.remove('hidden'); 290 mobileMenu.setAttribute('aria-hidden', 'false'); 291 menuToggle.setAttribute('aria-expanded', 'true'); 292 }); 293 294 menuClose.addEventListener('click', () => { 295 mobileMenu.classList.add('hidden'); 296 mobileMenu.setAttribute('aria-hidden', 'true'); 297 menuToggle.setAttribute('aria-expanded', 'false'); 298 }); 299 300 document.addEventListener('DOMContentLoaded', function() { 301 // More menu dropdown functionality 302 const moreButton = document.getElementById('more-menu-button'); 303 const moreDropdown = document.getElementById('more-dropdown'); 304 const moreArrow = document.getElementById('more-arrow'); 305 306 if (moreButton && moreDropdown && moreArrow) { 307 let isOpen = false; 308 let isHoveringButton = false; 309 let isHoveringDropdown = false; 310 let dropdownTimeout; 311 312 function showDropdown() { 313 clearTimeout(dropdownTimeout); 314 moreDropdown.classList.remove('hidden'); 315 moreDropdown.style.opacity = '1'; 316 moreArrow.classList.add('rotate-180'); 317 isOpen = true; 318 } 319 320 function hideDropdown() { 321 moreDropdown.style.opacity = '0'; 322 moreArrow.classList.remove('rotate-180'); 323 324 dropdownTimeout = setTimeout(() => { 325 moreDropdown.classList.add('hidden'); 326 isOpen = false; 327 }, 300); 328 } 329 330 function toggleDropdown() { 331 if (isOpen) { 332 hideDropdown(); 333 } else { 334 showDropdown(); 335 } 336 } 337 338 function updateDropdownVisibility() { 339 if (isHoveringButton || isHoveringDropdown) { 340 showDropdown(); 341 } else { 342 hideDropdown(); 343 } 344 } 345 346 moreButton.addEventListener('click', function(e) { 347 e.preventDefault(); 348 toggleDropdown(); 349 }); 350 351 moreButton.addEventListener('mouseenter', () => { 352 isHoveringButton = true; 353 updateDropdownVisibility(); 354 }); 355 356 moreButton.addEventListener('mouseleave', () => { 357 isHoveringButton = false; 358 toggleDropdown(); 359 }); 360 361 moreDropdown.addEventListener('mouseenter', () => { 362 isHoveringDropdown = true; 363 updateDropdownVisibility(); 364 }); 365 366 moreDropdown.addEventListener('mouseleave', () => { 367 isHoveringDropdown = false; 368 toggleDropdown(); 369 }); 370 371 document.addEventListener('click', function(e) { 372 if (isOpen && !moreButton.contains(e.target) && !moreDropdown.contains(e.target)) { 373 hideDropdown(); 374 } 375 }); 376 } 377 378 // Locations dropdown functionality (desktop main nav) 379 const locationsContainers = document.querySelectorAll('.locations-dropdown-container'); 380 locationsContainers.forEach(container => { 381 const button = container.querySelector('.locations-dropdown-button'); 382 const dropdown = container.querySelector('.locations-dropdown'); 383 const arrow = container.querySelector('.locations-arrow'); 384 385 if (button && dropdown && arrow) { 386 let isOpen = false; 387 let hoverTimeout; 388 389 function showLocationsDropdown() { 390 clearTimeout(hoverTimeout); 391 dropdown.classList.remove('hidden'); 392 arrow.classList.add('rotate-180'); 393 isOpen = true; 394 } 395 396 function hideLocationsDropdown() { 397 hoverTimeout = setTimeout(() => { 398 dropdown.classList.add('hidden'); 399 arrow.classList.remove('rotate-180'); 400 isOpen = false; 401 }, 150); 402 } 403 404 button.addEventListener('click', (e) => { 405 e.preventDefault(); 406 if (isOpen) { 407 hideLocationsDropdown(); 408 } else { 409 showLocationsDropdown(); 410 } 411 }); 412 413 container.addEventListener('mouseenter', showLocationsDropdown); 414 container.addEventListener('mouseleave', hideLocationsDropdown); 415 416 document.addEventListener('click', (e) => { 417 if (isOpen && !container.contains(e.target)) { 418 dropdown.classList.add('hidden'); 419 arrow.classList.remove('rotate-180'); 420 isOpen = false;
421 } 422 }); 423 } 424 }); 425 426 // Locations dropdown in "More" menu 427 const locationsMoreContainers = document.querySelectorAll('.locations-more-dropdown-container'); 428 locationsMoreContainers.forEach(container => { 429 const button = container.querySelector('.locations-more-button'); 430 const dropdown = container.querySelector('.locations-more-dropdown'); 431 const arrow = container.querySelector('.locations-more-arrow'); 432 433 if (button && dropdown && arrow) { 434 let isOpen = false; 435 436 button.addEventListener('click', (e) => { 437 e.preventDefault(); 438 e.stopPropagation(); 439 if (isOpen) { 440 dropdown.classList.add('hidden'); 441 arrow.classList.remove('rotate-180'); 442 isOpen = false; 443 } else { 444 dropdown.classList.remove('hidden'); 445 arrow.classList.add('rotate-180'); 446 isOpen = true; 447 } 448 }); 449 450 container.addEventListener('mouseenter', () => { 451 dropdown.classList.remove('hidden'); 452 arrow.classList.add('rotate-180'); 453 isOpen = true; 454 }); 455 456 container.addEventListener('mouseleave', () => { 457 dropdown.classList.add('hidden'); 458 arrow.classList.remove('rotate-180'); 459 isOpen = false; 460 }); 461 } 462 }); 463 464 // Mobile locations toggle 465 const mobileLocationsToggles = document.querySelectorAll('.mobile-locations-toggle'); 466 mobileLocationsToggles.forEach(toggle => { 467 const arrow = toggle.querySelector('.mobile-locations-arrow'); 468 const list = toggle.parentElement.querySelector('.mobile-locations-list'); 469 470 if (arrow && list) { 471 toggle.addEventListener('click', (e) => { 472 e.preventDefault(); 473 list.classList.toggle('hidden'); 474 arrow.classList.toggle('rotate-180'); 475 }); 476 } 477 }); 478 }); 479</script>
479 480 481<style> 482 .rotate-180 { 483 transform: rotate(180deg); 484 transition: transform 300ms; 485 } 486 487 #more-dropdown { 488 opacity: 0; 489 transition: opacity 300ms; 490 position: absolute; 491 top: 100%; 492 left: 50%; 493 right: 0; 494 width: 80vw; 495 margin-left: auto; 496 margin-right: auto; 497 z-index: 50; 498 transform: translateX(calc(-50% + 10vw)); 499 } 500 501 .dropdown-top-shadow { 502 box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1), 0 -2px 4px -1px rgba(0, 0, 0, 0.06), 503 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 504 } 505 506 .locations-dropdown { 507 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 508 } 509 510 .locations-more-dropdown { 511 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 512 } 513</style> 514<section class="flex justify-center py-10 px-4 xl:px-0 col-span-2" aria-labelledby="contact-title" itemscope="itemscope" itemtype="https://schema.org/ContactPage" id="section-SPH3vU4Ve1Q" data-maglev-section-id="SPH3vU4Ve1Q" data-maglev-section-type="contact_us_01"> 515 516 <div class="flex flex-col xl:flex-row w-full max-w-[1440px] mx-auto gap-10"> 517 <!-- Left Column - Hero Image --> 518 <figure class="w-full xl:w-[580px] aspect-[16/9] md:aspect-[4/3] xl:aspect-square flex-shrink-0 relative rounded-lg bg-cover bg-center" style="background-image: url(/maglev/assets/a3ceac2b-34fe-40c8-98ff-391e12d3abea-small-20batch-20about-20us-201.avif);" aria-label="Get in Touch with Us"> 519 <div class="absolute inset-0 rounded-lg bg-black/40"></div> 520 <figcaption class="absolute inset-0 flex flex-col justify-center px-6 xl:px-14"> 521 <h1 data-maglev-id="SPH3vU4Ve1Q.title" id="contact-title" class="text-white font-bold text-[40px] xl:text-[60px] md:text-[60px] leading-[50px] md:leading-[75px] xl:leading-none md:max-w-[500px] xl:max-w-[420px] md:mx-auto md:text-left xl:text-left">Get in Touch with Us</h1> 522 </figcaption> 523 </figure> 524 525 <!-- Right Column - Form --> 526 <div class="w-full xl:w-[580px] h-auto xl:h-auto flex-shrink-0 bg-[var(--bg-form)] rounded-lg shadow-md p-6 xl:p-8"> 527 <!-- Display Flash Messages --> 528 <div class="mb-4" id="flash-wrapper" aria-live="polite"> 529 <div id="flash-error-wrapper" class="hidden mb-2 p-4 bg-red-100 border border-red-400 text-red-700 rounded" role="alert"> 530 <ul id="flash-error-list"></ul> 531 </div> 532 533 <div id="flash-success-wrapper" class="hidden p-4 bg-green-100 border border-green-400 text-green-700 rounded" role="status"></div> 534 </div> 535 536 <form id="contact-form" class="space-y-6 w-full md:w-[344px] xl:w-full xl:mx-0 mx-auto" enctype="multipart/form-data" action="/contact-us" accept-charset="UTF-8" method="post"> 537 <input id="redirect_uri" autocomplete="off" type="hidden" name="redirect_uri" /> 538 <input value="uxIMdVuTcxDoF9xIawZiNKN7aJs3+g==--MqvwdPifL6O+KvX/--zqMFeZn5ohNICzEsJA400w==" id="recipient_email" autocomplete="off" type="hidden" name="recipient_email" /> 539 <!-- Full Name Field (Optional) --> 540 <fieldset> 541 <legend class="sr-only">Full Name</legend> 542 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="name"> 543 Full Name <span class="font-normal"></span> 544</label> <input placeholder="Full name" class="w-full mt-2 p-3 border text-[var(--text-primary)] border-[var(--border-secondary)] bg-[var(--bg-form)] rounded-lg placeholder:text-[var(--placeholder-text)] placeholder:text-[15px] placeholder:font-normal focus:border-[var(--focus-border)] focus:outline-none" aria-describedby="name-error" type="text" name="name" id="name" /> 545 <small class="text-red-600 hidden" id="name-error">Name cannot exceed 100 characters.</small> 546 </fieldset> 547 548 <!-- Email Field (Required) --> 549 <fieldset> 550 <legend class="sr-only">Email</legend> 551 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="email"> 552 Email <span class="font-normal">(required)</span> 553</label> <input placeholder="[email protected]" class="w-full mt-2 p-3 border text-[var(--text-primary)] border-[var(--border-secondary)] bg-[var(--bg-form)] rounded-lg placeholder:text-[var(--placeholder-text)] placeholder:text-[15px] placeholder:font-normal focus:border-[var(--focus-border)] focus:outline-none" required="required" aria-describedby="email-error" type="email" name="email" id="email" /> 554 <small class="text-red-600 hidden" id="email-error">Please enter a valid email address.</small> 555 </fieldset> 556 557 <!-- Phone Field (Optional) --> 558 <fieldset> 559 <legend class="sr-only">Phone</legend> 560 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="phone"> 561 Phone <span class="font-normal"></span> 562</label> <input placeholder="123-456-7890" class="phone-mask w-full mt-2 p-3 border text-[var(--text-primary)] border-[var(--border-secondary)] bg-[var(--bg-form)] rounded-lg placeholder:text-[var(--placeholder-text)] placeholder:text-[15px] placeholder:font-normal focus:border-[var(--focus-border)] focus:outline-none" aria-describedby="phone-error" type="tel" name="phone" id="phone" /> 563 <small class="text-red-600 hidden" id="phone-error">Please enter a valid phone number (e.g., 123-456-7890 or 1234567890)</small> 564 </fieldset> 565 566 <input type="hidden" name="g-recaptcha-response" class="g-recaptcha-response"> 567 568 <!-- Message Field (Required) --> 569 <fieldset> 570 <legend class="sr-only">Message</legend> 571 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="message"> 572 Message <span class="font-normal">(required)</span> 573</label> <textarea placeholder="Your message here..." class="w-full h-32 mt-2 p-3 border text-[var(--text-primary)] border-[var(--border-secondary)] bg-[var(--bg-form)] rounded-lg placeholder:text-[var(--placeholder-text)] placeholder:text-[15px] placeholder:font-normal focus:border-[var(--focus-border)] focus:outline-none" required="required" aria-describedby="message-error" name="message" id="message"> 574</textarea> 575 <small class="text-red-600 hidden" id="message-error">Please enter your message (maximum 1000 characters).</small> 576 </fieldset> 577 578 579 <div class="mt-6 flex flex-col xl:flex-row justify-between items-center gap-4"> 580 <!-- Submit Button --> 581 <div class="w-full xl:w-auto"> 582 <input type="submit" name="commit" value="Submit" class="inline-flex h-12 w-full xl:w-auto px-8 justify-center items-center gap-2 flex-shrink-0 rounded-[6px] text-white text-[15px] font-semibold leading-[150%] hover:brightness-90 g-recaptcha" style="background-color: rgb(35, 28, 26);" data-sitekey="6LcsffgqAAAAANLXQa19TOl4LbE2V7eS6PfaYhiT" data-callback="onContactSubmit" data-action="submit" data-disable-with="Submit" /> 583 </div> 584 </div> 585</form> 586 <!-- jQuery Validation Script --> 587
587<script type="module"> 588 $(document).ready(function() { 589 // Set the redirect_uri to the current page URL 590 $("#redirect_uri").val(window.location.href); 591 592 $("input[name='phone']").mask("000-000-0000"); 593 594 var urlParams = new URLSearchParams(window.location.search); 595 596 if (urlParams.has("errors[]") || urlParams.has("notice")) { 597 $("#flash-wrapper").removeClass("hidden"); 598 599 if (urlParams.has("errors[]")) { 600 $("#flash-error-wrapper").removeClass("hidden"); 601 602 let errors = urlParams.getAll("errors[]"); 603 604 let errorHtml = ""; 605 for(let i=0; i<errors.length; i++) { 606 errorHtml += `<li>${errors[i]}</li>`; 607 } 608 609 $("#flash-error-list").html(errorHtml); 610 } else { 611 $("#flash-success-wrapper").removeClass("hidden"); 612 $("#flash-success-wrapper").text(urlParams.get("notice")); 613 } 614 615 // Scroll to the contact form if the URL contains the "contact" parameter 616 document.getElementById("contact-form").scrollIntoView({ behavior: 'smooth' }); 617 } 618 619 // File input change handler 620 $('input[type="file"]').on('change', function() { 621 const fileError = $('#file-error'); 622 const acceptedFileTypes = $('#accepted-file-types'); 623 624 if (this.files.length > 0) { 625 const file = this.files[0]; 626 const allowedTypes = $(this).data('allowed-types').split(','); 627 const fileExtension = '.' + file.name.split('.').pop().toLowerCase(); 628 629 if (allowedTypes.includes(fileExtension)) { 630 fileError.addClass('hidden'); 631 acceptedFileTypes.removeClass('hidden'); 632 } 633 } 634 }); 635 }); 636 637 638 window.onContactSubmit = function(token) { 639 $(".text-red-600").addClass("hidden"); // Hide all error messages 640 641 $("#contact-form .g-recaptcha-response").val(token); 642 643 let isValid = true; 644 645 // Validate Full Name (Optional, max 100 characters) 646 const name = $("input[name='name']").val().trim(); 647 if (name.length > 100) { 648 $("#name-error").removeClass("hidden"); 649 isValid = false; 650 } 651 652 // Validate Email (Required and format) 653 const email = $("input[name='email']").val().trim(); 654 const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; 655 if (email === "" || !emailPattern.test(email)) { 656 $("#email-error").removeClass("hidden"); 657 isValid = false; 658 } 659 660 // Validate Phone (Optional, accepts both formats) 661 const phone = $("input[name='phone']").val().trim(); 662 const phonePatternWithDashes = /^\d{3}-\d{3}-\d{4}$/; 663 const phonePatternNumeric = /^\d{10}$/; 664 if (phone !== "" && !phonePatternWithDashes.test(phone) && !phonePatternNumeric.test(phone)) { 665 $("#phone-error") 666 .text("Please enter a valid phone number (e.g., 123-456-7890 or 1234567890)") 667 .removeClass("hidden"); 668 isValid = false; 669 } 670 671 // Validate Message (Required, max 1000 characters) 672 const message = $("textarea[name='message']").val().trim(); 673 if (message === "") { 674 $("#message-error").removeClass("hidden"); 675 isValid = false; 676 } else if (message.length > 1000) { 677 $("#message-error").text("Message cannot exceed 1000 characters.").removeClass("hidden"); 678 isValid = false; 679 } else { 680 $("#message-error").text("Please enter your message (maximum 1000 characters).").addClass("hidden"); 681 } 682 683 // Validate File Upload if enabled 684 const fileInput = $('input[type="file"]'); 685 if (fileInput.length && fileInput[0].files.length > 0) { 686 const file = fileInput[0].files[0]; 687 const maxSize = parseInt(fileInput.data('max-size')); 688 const allowedTypes = fileInput.data('allowed-types').split(','); 689 const fileError = $('#file-error'); 690 const acceptedFileTypes = $('#accepted-file-types'); 691 let fileWithError = false;
692 693 // Check file size 694 if (file.size > maxSize) { 695 fileError.text('File size must be less than 5MB'); 696 fileError.removeClass('hidden'); 697 acceptedFileTypes.addClass('hidden'); 698 isValid = false; 699 fileWithError = true; 700 } else { 701 acceptedFileTypes.removeClass('hidden'); 702 } 703 704 // Check file type 705 const fileExtension = '.' + file.name.split('.').pop().toLowerCase(); 706 if (!allowedTypes.includes(fileExtension)) { 707 fileError.text('Invalid file type. Please upload PDF, DOC, DOCX, or TXT files only. (max 5MB)'); 708 fileError.removeClass('hidden'); 709 acceptedFileTypes.addClass('hidden'); 710 isValid = false; 711 fileWithError = true; 712 } 713 714 if (fileWithError) { 715 acceptedFileTypes.addClass('hidden'); 716 } else { 717 acceptedFileTypes.removeClass('hidden'); 718 } 719 } 720 721 if (isValid) { 722 $('#contact-form').submit(); 723 } 724 }; 725 </script>
725 726 </div> 727 </div> 728 729 <!-- Schema.org JSON-LD structured data --> 730
730<script type="application/ld+json"> 731 { 732 "@context": "https://schema.org", 733 "@type": "ContactPage", 734 "name": "Get in Touch with Us", 735 "description": "Contact us form for inquiries and messages.", 736 "url": "https://www.smallbatchws.com/contact-us", 737 "mainEntity": { 738 "@type": "Organization", 739 "contactPoint": { 740 "@type": "ContactPoint", 741 "contactType": "customer service", 742 "email": "[email protected]" 743 } 744 } 745 } 746 </script>
746 747</section><section class="w-full flex justify-center py-10 col-span-2" data-location_id="section-5f238d84-e10c-4739-ad14-eed01e3c7a5d" aria-label="Locations information" id="section-uhz0Cvyy_20" data-maglev-section-id="uhz0Cvyy_20" data-maglev-section-type="dynamic_locations_01"> 748 749 750 751 752 <section class="w-full xl:max-w-[1440px] h-auto flex-shrink-0 bg-[var(--bg-secondary)] p-8"> 753 <header class="w-full flex flex-col items-center px-4 xl:px-0"> 754 <h2 data-maglev-id="uhz0Cvyy_20.title" class="text-[var(--text-primary)] text-center text-[32px] xl:text-[48px] font-semibold leading-[normal] tracking-[-0.48px]" id="locations-heading-5f238d84-e10c-4739-ad14-eed01e3c7a5d">Small Batch Locations in Winston-Salem</h2> 755 <p data-maglev-id="uhz0Cvyy_20.subtitle" class="text-[var(--text-secondary)] text-center text-[16px] font-normal leading-[24px] mt-2">Join us at Small Batch in downtown Winston-Salem! 756 757</p> 758 </header> 759 760 761 <div data-location_wrapper_id="5f238d84-e10c-4739-ad14-eed01e3c7a5d-0" class="mt-10 mx-auto w-full max-w-[1057px] flex flex-col xl:flex-row justify-center"> 762 <article class="w-full xl:w-[657px] bg-[var(--bg-primary)] rounded-lg shadow-lg p-8 flex-shrink-0 min-h-[418px] flex flex-col justify-between"> 763 <header> 764 <h3 class="text-[var(--text-primary)] text-[24px] font-semibold leading-[30px] tracking-[-0.192px]"> 765 Small Batch 766 </h3> 767 768 <nav class="mt-4 flex flex-wrap gap-2 md:flex-nowrap md:space-x-3 md:overflow-x-auto" aria-label="Location navigation"> 769 770 <div class="flex px-3 py-2 justify-center items-center rounded-md bg-[var(--brand-primary)]/[var(--active-bg-opacity)] text-[var(--active-text)] md:whitespace-nowrap"> 771 <a href="#" data-switch_location="5f238d84-e10c-4739-ad14-eed01e3c7a5d-0" class="text-[14px] font-semibold leading-[140%]" aria-current="page"> 772 Small Batch - Winston-Salem 241 W 5th St 773 </a> 774 </div> 775 </nav> 776 </header> 777 778 <address class="mt-6 flex items-center space-x-3 not-italic"> 779 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"> 780 <path 781 d="M9.99992 17.7712C9.80547 17.7712 9.61103 17.7364 9.41658 17.667C9.22214 17.5975 9.04853 17.4934 8.89575 17.3545C7.99297 16.5212 7.19436 15.7087 6.49992 14.917C5.80547 14.1253 5.22561 13.358 4.76034 12.6149C4.29506 11.8719 3.94089 11.1566 3.69784 10.4691C3.45478 9.78158 3.33325 9.12533 3.33325 8.50033C3.33325 6.41699 4.00339 4.75727 5.34367 3.52116C6.68395 2.28505 8.23603 1.66699 9.99992 1.66699C11.7638 1.66699 13.3159 2.28505 14.6562 3.52116C15.9964 4.75727 16.6666 6.41699 16.6666 8.50033C16.6666 9.12533 16.5451 9.78158 16.302 10.4691C16.0589 11.1566 15.7048 11.8719 15.2395 12.6149C14.7742 13.358 14.1944 14.1253 13.4999 14.917C12.8055 15.7087 12.0069 16.5212 11.1041 17.3545C10.9513 17.4934 10.7777 17.5975 10.5833 17.667C10.3888 17.7364 10.1944 17.7712 9.99992 17.7712ZM9.99992 10.0003C10.4583 10.0003 10.8506 9.83713 11.177 9.51074C11.5034 9.18435 11.6666 8.79199 11.6666 8.33366C11.6666 7.87533 11.5034 7.48296 11.177 7.15658C10.8506 6.83019 10.4583 6.66699 9.99992 6.66699C9.54158 6.66699 9.14922 6.83019 8.82283 7.15658C8.49645 7.48296 8.33325 7.87533 8.33325 8.33366C8.33325 8.79199 8.49645 9.18435 8.82283 9.51074C9.14922 9.83713 9.54158 10.0003 9.99992 10.0003Z" 782 fill="#666666"></path> 783 </svg> 784 <a href="https://www.google.com/maps/search/?api=1&query=241%20W%205th%20St%2C%20Winston-Salem%2C%20NC%2C%2027101%2C%20US" target="_blank" 785 class="text-[var(--text-primary)] text-[14px] font-normal leading-[20px]"> 786 241 W 5th St, Winston-Salem, NC, 27101, US 787 </a> 788 </address> 789 790 <div class="mt-6 flex items-center space-x-3"> 791 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"> 792 <path
793 d="M16.625 17.5C14.8889 17.5 13.1736 17.1215 11.4792 16.3646C9.78472 15.6076 8.24306 14.5347 6.85417 13.1458C5.46528 11.7569 4.39236 10.2153 3.63542 8.52083C2.87847 6.82639 2.5 5.11111 2.5 3.375C2.5 3.125 2.58333 2.91667 2.75 2.75C2.91667 2.58333 3.125 2.5 3.375 2.5H6.75C6.94444 2.5 7.11806 2.56597 7.27083 2.69792C7.42361 2.82986 7.51389 2.98611 7.54167 3.16667L8.08333 6.08333C8.11111 6.30556 8.10417 6.49306 8.0625 6.64583C8.02083 6.79861 7.94444 6.93056 7.83333 7.04167L5.8125 9.08333C6.09028 9.59722 6.42014 10.0938 6.80208 10.5729C7.18403 11.0521 7.60417 11.5139 8.0625 11.9583C8.49306 12.3889 8.94444 12.7882 9.41667 13.1562C9.88889 13.5243 10.3889 13.8611 10.9167 14.1667L12.875 12.2083C13 12.0833 13.1632 11.9896 13.3646 11.9271C13.566 11.8646 13.7639 11.8472 13.9583 11.875L16.8333 12.4583C17.0278 12.5139 17.1875 12.6146 17.3125 12.7604C17.4375 12.9062 17.5 13.0694 17.5 13.25V16.625C17.5 16.875 17.4167 17.0833 17.25 17.25C17.0833 17.4167 16.875 17.5 16.625 17.5Z" 794 fill="#666666"></path> 795 </svg> 796 <a href="tel:3368936395" class="text-[var(--text-primary)] text-[14px] font-normal leading-[20px]"> 797 336-893-6395 798 </a> 799 </div> 800 801 <div class="mt-6 flex flex-col space-y-2 xl:flex-row xl:space-x-3 justify-between"> 802 <div class="flex flex-wrap space-x-3"> 803 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"> 804 <path 805 d="M10.8334 9.66699V6.66699C10.8334 6.43088 10.7536 6.23296 10.5938 6.07324C10.4341 5.91352 10.2362 5.83366 10.0001 5.83366C9.76397 5.83366 9.56605 5.91352 9.40633 6.07324C9.24661 6.23296 9.16675 6.43088 9.16675 6.66699V9.97949C9.16675 10.0906 9.18758 10.1982 9.22925 10.3024C9.27091 10.4066 9.33341 10.5003 9.41675 10.5837L12.1667 13.3337C12.3195 13.4864 12.514 13.5628 12.7501 13.5628C12.9862 13.5628 13.1806 13.4864 13.3334 13.3337C13.4862 13.1809 13.5626 12.9864 13.5626 12.7503C13.5626 12.5142 13.4862 12.3198 13.3334 12.167L10.8334 9.66699ZM10.0001 18.3337C8.8473 18.3337 7.76397 18.1149 6.75008 17.6774C5.73619 17.2399 4.85425 16.6462 4.10425 15.8962C3.35425 15.1462 2.7605 14.2642 2.323 13.2503C1.8855 12.2364 1.66675 11.1531 1.66675 10.0003C1.66675 8.84755 1.8855 7.76421 2.323 6.75033C2.7605 5.73644 3.35425 4.85449 4.10425 4.10449C4.85425 3.35449 5.73619 2.76074 6.75008 2.32324C7.76397 1.88574 8.8473 1.66699 10.0001 1.66699C11.1529 1.66699 12.2362 1.88574 13.2501 2.32324C14.264 2.76074 15.1459 3.35449 15.8959 4.10449C16.6459 4.85449 17.2397 5.73644 17.6772 6.75033C18.1147 7.76421 18.3334 8.84755 18.3334 10.0003C18.3334 11.1531 18.1147 12.2364 17.6772 13.2503C17.2397 14.2642 16.6459 15.1462 15.8959 15.8962C15.1459 16.6462 14.264 17.2399 13.2501 17.6774C12.2362 18.1149 11.1529 18.3337 10.0001 18.3337Z" 806 fill="#666666"></path> 807 </svg> 808 <div> 809 <section class="text-[var(--text-primary)] mt-0 space-y-2"> 810 <div class="sr-only" aria-hidden="false">Business Hours</div> 811 <b>Sunday:</b> 812 <div class="inline"> 813 <time content="11:00" datetime="11:00" class="inline">11:00 AM</time> - <time content="22:00" datetime="22:00" class="inline">10:00 PM</time> 814 </div> 815 <br /> 816 <b>Monday:</b> 817 <div class="inline"> 818 Closed 819 </div> 820 <br /> 821 <b>Tuesday:</b> 822 <div class="inline"> 823 <time content="11:00" datetime="11:00" class="inline">11:00 AM</time> - <time content="22:00" datetime="22:00" class="inline">10:00 PM</time> 824 </div> 825 <br /> 826 <b>Wednesday:</b> 827 <div class="inline"> 828 <time content="11:00" datetime="11:00" class="inline">11:00 AM</time> - <time content="22:00" datetime="22:00" class="inline">10:00 PM</time> 829 </div> 830 <br /> 831 <b>Thursday:</b> 832 <div class="inline"> 833 <time content="11:00" datetime="11:00" class="inline">11:00 AM</time> - <time content="23:59" datetime="23:59" class="inline">11:59 PM</time> 834 </div> 835 <br /> 836 <b>Friday:</b> 837 <div class="inline"> 838 <time content="11:00" datetime="11:00" class="inline">11:00 AM</time> - <time content="23:59" datetime="23:59" class="inline">11:59 PM</time> 839 </div> 840 <br /> 841 <b>Saturday:</b> 842 <div class="inline"> 843 <time content="10:00" datetime="10:00" class="inline">10:00 AM</time> - <time content="23:59" datetime="23:59" class="inline">11:59 PM</time> 844 </div> 845 <br /> 846</section> 847 </div> 848 </div> 849 850 <div class="flex flex-col justify-end items-center xl:items-end"> 851 <a href="/stores" 852 class="mt-6 inline-flex h-[48px] px-8 py-4 justify-center items-center gap-2 rounded-[6px] bg-[var(--button-bg)] text-[var(--button-text)] border border-[var(--button-border)] hover:bg-[var(--button-hover-bg)] hover:border-[var(--button-hover-border)] text-[15px] font-semibold leading-[150%]"> 853 Start an order 854 </a> 855 </div> 856 </div> 857 </article> 858 859 <figure class="w-full xl:w-[359px] h-[418px] mt-4 xl:mt-0 rounded-lg flex-shrink-0 overflow-hidden"> 860 <gmp-map center="36.0997802,-80.24720769999999" zoom="14" map-id="abc5b04ea38d0c8f"> 861 <gmp-advanced-marker 862 position="36.0997802,-80.24720769999999" 863 title="Small Batch - 241 W 5th St, Winston-Salem, NC, 27101, US" 864 ></gmp-advanced-marker> 865</gmp-map> 866 867 </figure> 868 </div> 869 </section> 870 871
871<script type="module"> 872 $(document).on('click', '[data-location_id=section-5f238d84-e10c-4739-ad14-eed01e3c7a5d] [data-switch_location]', function(e) { 873 e.preventDefault(); 874 const idx = $(this).data('switch_location'); 875 $('[data-location_id=section-5f238d84-e10c-4739-ad14-eed01e3c7a5d] [data-location_wrapper_id]').addClass('hidden'); 876 $('[data-location_id=section-5f238d84-e10c-4739-ad14-eed01e3c7a5d] [data-location_wrapper_id=' + idx + ']').removeClass('hidden'); 877 }); 878 </script>
878 879 880</section><footer class="w-full mx-auto bg-[var(--bg-primary)] py-8 col-span-2" role="contentinfo" itemscope="itemscope" itemtype="https://schema.org/WPFooter" id="section-TxYZ8WjMaJc" data-maglev-section-id="TxYZ8WjMaJc" data-maglev-section-type="standard_footer_01"> 881 <div class="w-full px-4 xl:px-0 xl:w-[1200px] mx-auto flex flex-col space-y-3 xl:space-y-6"> 882 883 <div class="w-full grid grid-cols-1 xl:grid-cols-3 gap-4 xl:gap-4 mb-2 xl:mb-4"> 884 <nav class="col-span-1 flex flex-wrap justify-center xl:justify-start order-2 xl:order-1 xl:pl-0" aria-label="Footer navigation"> 885 <a data-maglev-id="dZtKY0QXE1Q.link" class="mx-3 xl:mx-0 xl:mr-6 mb-2 text-[var(--link-text)] hover:text-[var(--link-hover)] text-sm" href="/catering"><span data-maglev-id="dZtKY0QXE1Q.link.text">Catering</span></a> 886 </nav> 887 888 <nav class="col-span-1 flex justify-center space-x-6 xl:space-x-8 order-1 xl:order-2" aria-label="Social media links"> 889 <a data-maglev-id="vs263kLncsI.link" target="_blank" class="w-[32px] h-[32px] bg-[var(--social-bg)] rounded-lg text-[var(--social-text)] text-center" aria-label="fa-brands fa-instagram" href="https://www.instagram.com/smallbatchbeerco/"> 890 <i class="text-[24px] pt-[4px] fa-brands fa-instagram" data-maglev-id="vs263kLncsI.icon"></i> 891</a> <a data-maglev-id="yvpUKGq_GuU.link" class="w-[32px] h-[32px] bg-[var(--social-bg)] rounded-lg text-[var(--social-text)] text-center" aria-label="mds-filled-phone_enabled" href="tel: 336.893.6395"> 892 <i class="text-[24px] pt-[4px] mds-filled-phone_enabled" data-maglev-id="yvpUKGq_GuU.icon"></i> 893</a> </nav> 894 895 <div class="col-span-1 hidden xl:block order-3"></div> 896 </div> 897 898 <div class="w-full flex flex-col xl:flex-row justify-between items-center text-[var(--text-secondary)] text-sm font-normal leading-[142.857%] space-y-3 xl:space-y-0 mt-2 xl:mt-6"> 899 <nav class="flex flex-wrap justify-center xl:justify-start flex-grow space-x-4 xl:space-x-6 xl:pl-0" aria-label="Legal links"> 900 <a href="https://koala-configurations.s3.amazonaws.com/public/assets/Chowly-Terms-and-Conditions-b3cca027-acb6-42db-9d1f-11080e29b1e1.pdf" target="_blank" rel="noopener" class="mb-2">Terms of Use</a> 901 <a href="https://koala-configurations.s3.us-east-1.amazonaws.com/public/assets/Chowly-Privacy-Policy-202f4118-faeb-4593-8574-57dc447ae203.pdf" target="_blank" rel="noopener" class="mb-2">Privacy Policy</a> 902 </nav> 903 904 <p class="relative text-center xl:flex-grow xl:left-[-200px]" itemscope itemtype="https://schema.org/Organization"> 905 <span>Small Batch</span>⢠<span itemprop="copyrightYear">2026</span> All Rights Reserved 906 </p> 907 <p class="text-center xl:text-right">Made by <a href="https://www.chowly.com" class="font-bold" rel="noopener">Chowly</a></p> 908 </div> 909 </div> 910</footer> 911 </section> 912 </main> 913 914</body> 915</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.