1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <title>Best Seafood Catering in Buda | Mudbugs Cajun Boil | Mudbugs | Cajun Cuisine | Buda, TX</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="Mudbugs offers seafood catering in Buda with crawfish boil, shrimp, and Cajun favorites. Order catering for events, parties, and gatherings." /> 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.peaceloveandcrawfish.com/catering" /> 14 15 <link rel="icon" type="image/png" href="https://chowly-coo-configuration-assets.nyc3.digitaloceanspaces.com/chowly-coo-prod-configuration-assets/public/assets/Favicon-596-11c6c726-f738-4359-91d6-4af5199a80a2.png"> 16 <link rel="canonical" href="https://www.peaceloveandcrawfish.com/catering" /> 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: #cf3131; 100 --border-secondary: #D7D7D7; 101 --stroke-primary: #cf3131; 102 --stroke-secondary: currentColor; 103 --active-bg-opacity: 8%; 104 --active-text: #cf3131; 105 --hover-bg-opacity: 8%; 106 --hover-text: #cf3131; 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: #cf3131; 115 --button-border: #cf3131; 116 --button-hover-bg: transparent; 117 --button-hover-border: #cf3131; 118 --brand-primary: #cf3131; 119 --brand-overlay: rgba(207,49,49,0.08); 120 --brand-overlay-heavy: rgba(207,49,49,0.80); 121 --dim-overlay: rgba(0,0,0,0.4); 122 } 123 124 body { 125 background: linear-gradient(180deg, rgba(207, 49, 49, 0.08) 0px, rgba(207, 49, 49, 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":"MudBugs - A Cajun Joint","address":{"@type":"PostalAddress","streetAddress":"306 S Main St Suite 107","addressLocality":"Buda","addressRegion":"TX","postalCode":"78610","addressCountry":"US"},"telephone":"5125238241","geo":{"@type":"GeoCoordinates","latitude":30.0775604,"longitude":-97.8456344},"url":"https://www.peaceloveandcrawfish.com#location-48200","priceRange":"$$","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Sunday","opens":"10:00:00","closes":"20:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Monday","opens":"11:00:00","closes":"21:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Tuesday","opens":"11:00:00","closes":"21:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Wednesday","opens":"11:00:00","closes":"21:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Thursday","opens":"11:00:00","closes":"21:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Friday","opens":"11:00:00","closes":"22:00:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"https://schema.org/Saturday","opens":"10:00:00","closes":"22:00:00"}],"hasMenu":"https://www.peaceloveandcrawfish.com/menu","areaServed":["Buda","Downtown Buda","South Austin","Kyle","Onion Creek","Manchaca","San Leanna","Mountain City","Hays County","Sunfield"],"@context":"https://schema.org"} 147 </script>
147 148</head> 149<body data-organization-id="48829"> 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-l64b_nKD" data-maglev-section-id="l64b_nKD" 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="l64b_nKD.icon" aria-hidden="true"></i> 157 </div> 158 <span data-maglev-id="l64b_nKD.title" class="text-white text-[14px] font-normal leading-[24px] text-center line-clamp-2 overflow-hidden"><p><strong>Order online from the Best Cajun Restaurant in Buda, TX!</strong></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-iXmMU04m" data-maglev-section-id="iXmMU04m" 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="Mudbugs 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%2FLogo-1404-3e01a2d4-2f3e-411a-81d6-9040d85034c0.png" alt="Mudbugs 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="G22OaKF-0Fo.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="G22OaKF-0Fo.link.text">Home</span></a> 175 </li> 176 177 <li> 178 <a data-maglev-id="KDZFI2M-_yg.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="KDZFI2M-_yg.link.text">Menu</span></a> 179 </li> 180 181 <li> 182 <a data-maglev-id="Vg5kmfI5pko.link" class="flex bg-[var(--brand-primary)]/[var(--active-bg-opacity)] text-[var(--active-text)] items-center justify-center gap-2 py-2 px-3 text-sm font-semibold rounded-md mr-3" aria-current="page" href="/catering"><span data-maglev-id="Vg5kmfI5pko.link.text">Catering</span></a> 183 </li> 184 185 <li> 186 <a data-maglev-id="wZkCFKeiXbc.link" target="_blank" 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="https://resy.com/cities/buda-tx-tx/venues/mudbugs"><span data-maglev-id="wZkCFKeiXbc.link.text">Reservations</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="S71NZqRXtyI.link" 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="/specials"><span data-maglev-id="S71NZqRXtyI.link.text">Specials</span></a> 201 </div> 202 <div class="w-full mb-2"> 203 <a data-maglev-id="BXpcPa_iljA.link" 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="/our-story"><span data-maglev-id="BXpcPa_iljA.link.text">Our Story</span></a> 204 </div> 205 <div class="w-full mb-2"> 206 <a data-maglev-id="SIzhoe6zK3Q.link" 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="/jobs"><span data-maglev-id="SIzhoe6zK3Q.link.text">Jobs</span></a> 207 </div> 208 <div class="w-full mb-2"> 209 <a data-maglev-id="pw1segTj4dU.link" 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="/contact-us"><span data-maglev-id="pw1segTj4dU.link.text">Contact Us</span></a> 210 </div> 211 <div class="w-full mb-2"> 212 <a data-maglev-id="KA64S4VAcdw.link" 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="/parties"><span data-maglev-id="KA64S4VAcdw.link.text">Private Parties</span></a> 213 </div> 214 </div> 215 </div> 216 </div> 217 </li> 218 </ul> 219 </nav> 220 </div> 221 222 <!-- Right side: Mobile toggle + Desktop buttons --> 223 <div class="flex items-center gap-2"> 224 <!-- Mobile menu toggle --> 225 <div class="xl:hidden"> 226 <button id="menu-toggle" class="focus:outline-none" aria-expanded="false" aria-controls="mobile-menu" aria-label="Toggle menu"> 227 <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="var(--stroke-primary)"> 228 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" /> 229 </svg> 230 </button> 231 </div> 232 233 <!-- Desktop buttons (hidden on mobile) --> 234 <div class="hidden xl:flex items-center gap-2"> 235 <!-- Primary Order Now button (hardcoded) --> 236 <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> 237 238 <!-- Secondary button (optional, configurable) --> 239 </div> 240 </div> 241 </div> 242 243 <div id="mobile-menu" class="hidden fixed top-0 left-0 w-full h-full bg-[var(--bg-primary)] z-50 overflow-y-auto"> 244 <div class="flex justify-between items-center px-4 py-4 sticky top-0 bg-[var(--bg-primary)] z-10"> 245 <div class="max-w-[280px] max-h-[100px] rounded-lg flex-shrink-0 mr-4 xl:mr-8"> 246 <img src="https://image-cdn.chowlyinc.com/300%2Cfit%2C
246avif/https%3A%2F%2Fchowly-coo-configuration-assets.nyc3.digitaloceanspaces.com%2Fchowly-coo-prod-configuration-assets%2Fpublic%2Fassets%2FLogo-1404-3e01a2d4-2f3e-411a-81d6-9040d85034c0.png" alt="Mudbugs logo" class="max-w-[280px] max-h-[100px] w-auto h-auto object-contain rounded-lg"> 247 </div> 248 <button id="menu-close" class="focus:outline-none" aria-label="Close menu"> 249 <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="var(--stroke-primary)"> 250 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" /> 251 </svg> 252 </button> 253 </div> 254 255 <nav role="navigation" aria-label="Mobile navigation" class="pb-32"> 256 <ul class="flex flex-col items-start px-5 space-y-6 mt-8"> 257 258 <li> 259 <a data-maglev-id="G22OaKF-0Fo.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="G22OaKF-0Fo.link.text">Home</span></a> 260 </li> 261 262 <li> 263 <a data-maglev-id="KDZFI2M-_yg.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="KDZFI2M-_yg.link.text">Menu</span></a> 264 </li> 265 266 <li> 267 <a data-maglev-id="Vg5kmfI5pko.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="/catering"><span data-maglev-id="Vg5kmfI5pko.link.text">Catering</span></a> 268 </li> 269 270 <li> 271 <a data-maglev-id="wZkCFKeiXbc.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://resy.com/cities/buda-tx-tx/venues/mudbugs"><span data-maglev-id="wZkCFKeiXbc.link.text">Reservations</span></a> 272 </li> 273 274 <li> 275 <a data-maglev-id="S71NZqRXtyI.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="/specials"><span data-maglev-id="S71NZqRXtyI.link.text">Specials</span></a> 276 </li> 277 278 <li> 279 <a data-maglev-id="BXpcPa_iljA.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="BXpcPa_iljA.link.text">Our Story</span></a> 280 </li> 281 282 <li> 283 <a data-maglev-id="SIzhoe6zK3Q.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="/jobs"><span data-maglev-id="SIzhoe6zK3Q.link.text">Jobs</span></a> 284 </li> 285 286 <li> 287 <a data-maglev-id="pw1segTj4dU.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="/contact-us"><span data-maglev-id="pw1segTj4dU.link.text">Contact Us</span></a> 288 </li> 289 290 <li> 291 <a data-maglev-id="KA64S4VAcdw.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="/parties"><span data-maglev-id="KA64S4VAcdw.link.text">Private Parties</span></a> 292 </li> 293 </ul> 294 </nav> 295 296 <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)]"> 297 <!-- Primary Order Now button (hardcoded) --> 298 <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> 299 300 <!-- Secondary button (optional, configurable) --> 301 </div> 302 </div> 303</header>
304<script> 305 const menuToggle = document.getElementById('menu-toggle'); 306 const menuClose = document.getElementById('menu-close'); 307 const mobileMenu = document.getElementById('mobile-menu'); 308 309 menuToggle.addEventListener('click', () => { 310 mobileMenu.classList.remove('hidden'); 311 mobileMenu.setAttribute('aria-hidden', 'false'); 312 menuToggle.setAttribute('aria-expanded', 'true'); 313 }); 314 315 menuClose.addEventListener('click', () => { 316 mobileMenu.classList.add('hidden'); 317 mobileMenu.setAttribute('aria-hidden', 'true'); 318 menuToggle.setAttribute('aria-expanded', 'false'); 319 }); 320 321 document.addEventListener('DOMContentLoaded', function() { 322 // More menu dropdown functionality 323 const moreButton = document.getElementById('more-menu-button'); 324 const moreDropdown = document.getElementById('more-dropdown'); 325 const moreArrow = document.getElementById('more-arrow'); 326 327 if (moreButton && moreDropdown && moreArrow) { 328 let isOpen = false; 329 let isHoveringButton = false; 330 let isHoveringDropdown = false; 331 let dropdownTimeout; 332 333 function showDropdown() { 334 clearTimeout(dropdownTimeout); 335 moreDropdown.classList.remove('hidden'); 336 moreDropdown.style.opacity = '1'; 337 moreArrow.classList.add('rotate-180'); 338 isOpen = true; 339 } 340 341 function hideDropdown() { 342 moreDropdown.style.opacity = '0'; 343 moreArrow.classList.remove('rotate-180'); 344 345 dropdownTimeout = setTimeout(() => { 346 moreDropdown.classList.add('hidden'); 347 isOpen = false; 348 }, 300); 349 } 350 351 function toggleDropdown() { 352 if (isOpen) { 353 hideDropdown(); 354 } else { 355 showDropdown(); 356 } 357 } 358 359 function updateDropdownVisibility() { 360 if (isHoveringButton || isHoveringDropdown) { 361 showDropdown(); 362 } else { 363 hideDropdown(); 364 } 365 } 366 367 moreButton.addEventListener('click', function(e) { 368 e.preventDefault(); 369 toggleDropdown(); 370 }); 371 372 moreButton.addEventListener('mouseenter', () => { 373 isHoveringButton = true; 374 updateDropdownVisibility(); 375 }); 376 377 moreButton.addEventListener('mouseleave', () => { 378 isHoveringButton = false; 379 toggleDropdown(); 380 }); 381 382 moreDropdown.addEventListener('mouseenter', () => { 383 isHoveringDropdown = true; 384 updateDropdownVisibility(); 385 }); 386 387 moreDropdown.addEventListener('mouseleave', () => { 388 isHoveringDropdown = false; 389 toggleDropdown(); 390 }); 391 392 document.addEventListener('click', function(e) { 393 if (isOpen && !moreButton.contains(e.target) && !moreDropdown.contains(e.target)) { 394 hideDropdown(); 395 } 396 }); 397 } 398 399 // Locations dropdown functionality (desktop main nav) 400 const locationsContainers = document.querySelectorAll('.locations-dropdown-container'); 401 locationsContainers.forEach(container => { 402 const button = container.querySelector('.locations-dropdown-button'); 403 const dropdown = container.querySelector('.locations-dropdown'); 404 const arrow = container.querySelector('.locations-arrow'); 405 406 if (button && dropdown && arrow) { 407 let isOpen = false; 408 let hoverTimeout; 409 410 function showLocationsDropdown() { 411 clearTimeout(hoverTimeout); 412 dropdown.classList.remove('hidden'); 413 arrow.classList.add('rotate-180'); 414 isOpen = true; 415 } 416 417 function hideLocationsDropdown() { 418 hoverTimeout = setTimeout(() => { 419 dropdown.classList.add('hidden'); 420 arrow.classList.remove('rotate-180'); 421 isOpen = false; 422 }, 150); 423 } 424 425 button.addEventListener('click', (e) => { 426 e.preventDefault(); 427 if (isOpen) { 428 hideLocationsDropdown(); 429 } else { 430 showLocationsDropdown(); 431 } 432 }); 433 434 container.addEventListener('mouseenter', showLocationsDropdown); 435 container.addEventListener('mouseleave', hideLocationsDropdown); 436 437 document.addEventListener('click', (e) => { 438 if (isOpen && !container.contains(e.target)) { 439 dropdown.classList.add('hidden'); 440 arrow.classList.remove('rotate-180'); 441 isOpen = false;
442 } 443 }); 444 } 445 }); 446 447 // Locations dropdown in "More" menu 448 const locationsMoreContainers = document.querySelectorAll('.locations-more-dropdown-container'); 449 locationsMoreContainers.forEach(container => { 450 const button = container.querySelector('.locations-more-button'); 451 const dropdown = container.querySelector('.locations-more-dropdown'); 452 const arrow = container.querySelector('.locations-more-arrow'); 453 454 if (button && dropdown && arrow) { 455 let isOpen = false; 456 457 button.addEventListener('click', (e) => { 458 e.preventDefault(); 459 e.stopPropagation(); 460 if (isOpen) { 461 dropdown.classList.add('hidden'); 462 arrow.classList.remove('rotate-180'); 463 isOpen = false; 464 } else { 465 dropdown.classList.remove('hidden'); 466 arrow.classList.add('rotate-180'); 467 isOpen = true; 468 } 469 }); 470 471 container.addEventListener('mouseenter', () => { 472 dropdown.classList.remove('hidden'); 473 arrow.classList.add('rotate-180'); 474 isOpen = true; 475 }); 476 477 container.addEventListener('mouseleave', () => { 478 dropdown.classList.add('hidden'); 479 arrow.classList.remove('rotate-180'); 480 isOpen = false; 481 }); 482 } 483 }); 484 485 // Mobile locations toggle 486 const mobileLocationsToggles = document.querySelectorAll('.mobile-locations-toggle'); 487 mobileLocationsToggles.forEach(toggle => { 488 const arrow = toggle.querySelector('.mobile-locations-arrow'); 489 const list = toggle.parentElement.querySelector('.mobile-locations-list'); 490 491 if (arrow && list) { 492 toggle.addEventListener('click', (e) => { 493 e.preventDefault(); 494 list.classList.toggle('hidden'); 495 arrow.classList.toggle('rotate-180'); 496 }); 497 } 498 }); 499 }); 500</script>
500 501 502<style> 503 .rotate-180 { 504 transform: rotate(180deg); 505 transition: transform 300ms; 506 } 507 508 #more-dropdown { 509 opacity: 0; 510 transition: opacity 300ms; 511 position: absolute; 512 top: 100%; 513 left: 50%; 514 right: 0; 515 width: 80vw; 516 margin-left: auto; 517 margin-right: auto; 518 z-index: 50; 519 transform: translateX(calc(-50% + 10vw)); 520 } 521 522 .dropdown-top-shadow { 523 box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1), 0 -2px 4px -1px rgba(0, 0, 0, 0.06), 524 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 525 } 526 527 .locations-dropdown { 528 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 529 } 530 531 .locations-more-dropdown { 532 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); 533 } 534</style> 535<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-Uc33Zx9R" data-maglev-section-id="Uc33Zx9R" data-maglev-section-type="contact_us_01"> 536 537 <div class="flex flex-col xl:flex-row w-full max-w-[1440px] mx-auto gap-10"> 538 <!-- Left Column - Hero Image --> 539 <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/7c925ef2-2316-41ce-842a-4983a91a24ca-uh3bpqhlc5ntsmdhm5cli4rg8ikz.jpeg);" aria-label="Catering Inquiry Form"> 540 <div class="absolute inset-0 rounded-lg bg-black/40"></div> 541 <figcaption class="absolute inset-0 flex flex-col justify-center px-6 xl:px-14"> 542 <h1 data-maglev-id="Uc33Zx9R.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">Catering Inquiry Form</h1> 543 </figcaption> 544 </figure> 545 546 <!-- Right Column - Form --> 547 <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"> 548 <!-- Display Flash Messages --> 549 <div class="mb-4" id="flash-wrapper" aria-live="polite"> 550 <div id="flash-error-wrapper" class="hidden mb-2 p-4 bg-red-100 border border-red-400 text-red-700 rounded" role="alert"> 551 <ul id="flash-error-list"></ul> 552 </div> 553 554 <div id="flash-success-wrapper" class="hidden p-4 bg-green-100 border border-green-400 text-green-700 rounded" role="status"></div> 555 </div> 556 557 <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"> 558 <input id="redirect_uri" autocomplete="off" type="hidden" name="redirect_uri" /> 559 <input value="zp8cJVY+9W9SZdKvQTMIKtgjdpGr1xdZbXfbk+2K3A==--FXCGGVU4G1mxAMhA--fIkPWA4KrE5EEqrt8j1HoA==" id="recipient_email" autocomplete="off" type="hidden" name="recipient_email" /> 560 <!-- Full Name Field (Optional) --> 561 <fieldset> 562 <legend class="sr-only">Full Name</legend> 563 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="name"> 564 Full Name <span class="font-normal"></span> 565</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" /> 566 <small class="text-red-600 hidden" id="name-error">Name cannot exceed 100 characters.</small> 567 </fieldset> 568 569 <!-- Email Field (Required) --> 570 <fieldset> 571 <legend class="sr-only">Email</legend> 572 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="email"> 573 Email <span class="font-normal">(required)</span> 574</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" /> 575 <small class="text-red-600 hidden" id="email-error">Please enter a valid email address.</small> 576 </fieldset> 577 578 <!-- Phone Field (Optional) --> 579 <fieldset> 580 <legend class="sr-only">Phone</legend> 581 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="phone"> 582 Phone <span class="font-normal"></span> 583</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" /> 584 <small class="text-red-600 hidden" id="phone-error">Please enter a valid phone number (e.g., 123-456-7890 or 1234567890)</small> 585 </fieldset> 586 587 <input type="hidden" name="g-recaptcha-response" class="g-recaptcha-response"> 588 589 <!-- Message Field (Required) --> 590 <fieldset> 591 <legend class="sr-only">Message</legend> 592 <label class="block text-[var(--text-primary)] text-[13px] font-bold leading-[150%]" for="message"> 593 Message <span class="font-normal">(required)</span> 594</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"> 595</textarea> 596 <small class="text-red-600 hidden" id="message-error">Please enter your message (maximum 1000 characters).</small> 597 </fieldset> 598 599 600 <div class="mt-6 flex flex-col xl:flex-row justify-between items-center gap-4"> 601 <!-- Submit Button --> 602 <div class="w-full xl:w-auto"> 603 <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(207, 49, 49);" data-sitekey="6LcsffgqAAAAANLXQa19TOl4LbE2V7eS6PfaYhiT" data-callback="onContactSubmit" data-action="submit" data-disable-with="Submit" /> 604 </div> 605 </div> 606</form> 607 <!-- jQuery Validation Script --> 608
608<script type="module"> 609 $(document).ready(function() { 610 // Set the redirect_uri to the current page URL 611 $("#redirect_uri").val(window.location.href); 612 613 $("input[name='phone']").mask("000-000-0000"); 614 615 var urlParams = new URLSearchParams(window.location.search); 616 617 if (urlParams.has("errors[]") || urlParams.has("notice")) { 618 $("#flash-wrapper").removeClass("hidden"); 619 620 if (urlParams.has("errors[]")) { 621 $("#flash-error-wrapper").removeClass("hidden"); 622 623 let errors = urlParams.getAll("errors[]"); 624 625 let errorHtml = ""; 626 for(let i=0; i<errors.length; i++) { 627 errorHtml += `<li>${errors[i]}</li>`; 628 } 629 630 $("#flash-error-list").html(errorHtml); 631 } else { 632 $("#flash-success-wrapper").removeClass("hidden"); 633 $("#flash-success-wrapper").text(urlParams.get("notice")); 634 } 635 636 // Scroll to the contact form if the URL contains the "contact" parameter 637 document.getElementById("contact-form").scrollIntoView({ behavior: 'smooth' }); 638 } 639 640 // File input change handler 641 $('input[type="file"]').on('change', function() { 642 const fileError = $('#file-error'); 643 const acceptedFileTypes = $('#accepted-file-types'); 644 645 if (this.files.length > 0) { 646 const file = this.files[0]; 647 const allowedTypes = $(this).data('allowed-types').split(','); 648 const fileExtension = '.' + file.name.split('.').pop().toLowerCase(); 649 650 if (allowedTypes.includes(fileExtension)) { 651 fileError.addClass('hidden'); 652 acceptedFileTypes.removeClass('hidden'); 653 } 654 } 655 }); 656 }); 657 658 659 window.onContactSubmit = function(token) { 660 $(".text-red-600").addClass("hidden"); // Hide all error messages 661 662 $("#contact-form .g-recaptcha-response").val(token); 663 664 let isValid = true; 665 666 // Validate Full Name (Optional, max 100 characters) 667 const name = $("input[name='name']").val().trim(); 668 if (name.length > 100) { 669 $("#name-error").removeClass("hidden"); 670 isValid = false; 671 } 672 673 // Validate Email (Required and format) 674 const email = $("input[name='email']").val().trim(); 675 const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; 676 if (email === "" || !emailPattern.test(email)) { 677 $("#email-error").removeClass("hidden"); 678 isValid = false; 679 } 680 681 // Validate Phone (Optional, accepts both formats) 682 const phone = $("input[name='phone']").val().trim(); 683 const phonePatternWithDashes = /^\d{3}-\d{3}-\d{4}$/; 684 const phonePatternNumeric = /^\d{10}$/; 685 if (phone !== "" && !phonePatternWithDashes.test(phone) && !phonePatternNumeric.test(phone)) { 686 $("#phone-error") 687 .text("Please enter a valid phone number (e.g., 123-456-7890 or 1234567890)") 688 .removeClass("hidden"); 689 isValid = false; 690 } 691 692 // Validate Message (Required, max 1000 characters) 693 const message = $("textarea[name='message']").val().trim(); 694 if (message === "") { 695 $("#message-error").removeClass("hidden"); 696 isValid = false; 697 } else if (message.length > 1000) { 698 $("#message-error").text("Message cannot exceed 1000 characters.").removeClass("hidden"); 699 isValid = false; 700 } else { 701 $("#message-error").text("Please enter your message (maximum 1000 characters).").addClass("hidden"); 702 } 703 704 // Validate File Upload if enabled 705 const fileInput = $('input[type="file"]'); 706 if (fileInput.length && fileInput[0].files.length > 0) { 707 const file = fileInput[0].files[0]; 708 const maxSize = parseInt(fileInput.data('max-size')); 709 const allowedTypes = fileInput.data('allowed-types').split(','); 710 const fileError = $('#file-error'); 711 const acceptedFileTypes = $('#accepted-file-types'); 712 let fileWithError = false;
713 714 // Check file size 715 if (file.size > maxSize) { 716 fileError.text('File size must be less than 5MB'); 717 fileError.removeClass('hidden'); 718 acceptedFileTypes.addClass('hidden'); 719 isValid = false; 720 fileWithError = true; 721 } else { 722 acceptedFileTypes.removeClass('hidden'); 723 } 724 725 // Check file type 726 const fileExtension = '.' + file.name.split('.').pop().toLowerCase(); 727 if (!allowedTypes.includes(fileExtension)) { 728 fileError.text('Invalid file type. Please upload PDF, DOC, DOCX, or TXT files only. (max 5MB)'); 729 fileError.removeClass('hidden'); 730 acceptedFileTypes.addClass('hidden'); 731 isValid = false; 732 fileWithError = true; 733 } 734 735 if (fileWithError) { 736 acceptedFileTypes.addClass('hidden'); 737 } else { 738 acceptedFileTypes.removeClass('hidden'); 739 } 740 } 741 742 if (isValid) { 743 $('#contact-form').submit(); 744 } 745 }; 746 </script>
746 747 </div> 748 </div> 749 750 <!-- Schema.org JSON-LD structured data --> 751
751<script type="application/ld+json"> 752 { 753 "@context": "https://schema.org", 754 "@type": "ContactPage", 755 "name": "Catering Inquiry Form", 756 "description": "Contact us form for inquiries and messages.", 757 "url": "https://www.peaceloveandcrawfish.com/catering", 758 "mainEntity": { 759 "@type": "Organization", 760 "contactPoint": { 761 "@type": "ContactPoint", 762 "contactType": "customer service", 763 "email": "[email protected]" 764 } 765 } 766 } 767 </script>
767 768</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-uch0OQRg" data-maglev-section-id="uch0OQRg" data-maglev-section-type="standard_footer_01"> 769 <div class="w-full px-4 xl:px-0 xl:w-[1200px] mx-auto flex flex-col space-y-3 xl:space-y-6"> 770 771 <div class="w-full grid grid-cols-1 xl:grid-cols-3 gap-4 xl:gap-4 mb-2 xl:mb-4"> 772 <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"> 773 <a data-maglev-id="QJnhgGL4nEs.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="QJnhgGL4nEs.link.text">Catering</span></a> 774 </nav> 775 776 <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"> 777 <a data-maglev-id="yKRSy2ifCRI.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-facebook-f" href="https://www.facebook.com/1402452756448051"> 778 <i class="text-[24px] pt-[4px] fa-brands fa-facebook-f" data-maglev-id="yKRSy2ifCRI.icon"></i> 779</a> <a data-maglev-id="tCgPN8P04Ro.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/mudbugs_budatx"> 780 <i class="text-[24px] pt-[4px] fa-brands fa-instagram" data-maglev-id="tCgPN8P04Ro.icon"></i> 781</a> <a data-maglev-id="ykFUXZjehNY.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:5125238241"> 782 <i class="text-[24px] pt-[4px] mds-filled-phone_enabled" data-maglev-id="ykFUXZjehNY.icon"></i> 783</a> </nav> 784 785 <div class="col-span-1 hidden xl:block order-3"></div> 786 </div> 787 788 <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"> 789 <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"> 790 <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> 791 <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> 792 </nav> 793 794 <p class="relative text-center xl:flex-grow xl:left-[-200px]" itemscope itemtype="https://schema.org/Organization"> 795 <span>Mudbugs</span>⢠<span itemprop="copyrightYear">2026</span> All Rights Reserved 796 </p> 797 <p class="text-center xl:text-right">Made by <a href="https://www.chowly.com" class="font-bold" rel="noopener">Chowly</a></p> 798 </div> 799 </div> 800</footer> 801 </section> 802 </main> 803 804</body> 805</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.