1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"> 6 <title>Contact Slateworks</title> 7 <meta name="description" content="Tell us about your shop. Slateworks runs bidding, scheduling, field tracking, and billing for small trade contractors â get early access."> 8 <meta name="theme-color" content="#2c3e50"> 9 <link rel="canonical" href="https://slateworks.ai/contact"> 10 11 <!-- Open Graph --> 12 <meta property="og:title" content="Contact Slateworks"> 13 <meta property="og:description" content="Tell us about your shop â get early access to Slateworks."> 14 <meta property="og:type" content="website"> 15 <meta property="og:url" content="https://slateworks.ai/contact"> 16 <meta property="og:image" content="https://slateworks.ai/assets/og-image.png"> 17 <meta property="og:image:width" content="1200"> 18 <meta property="og:image:height" content="630"> 19 <meta name="twitter:card" content="summary_large_image"> 20 21 <!-- Fonts --> 22 <link rel="preconnect" href="https://fonts.googleapis.com"> 23 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 24 <link href="https://fonts.googleapis.com/css2?family=Archivo+Black&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Yellowtail&display=swap" rel="stylesheet"> 25 26 <link rel="stylesheet" href="/pages.css?v=979ea9dc"> 27 28 <!-- Favicon --> 29 <link rel="icon" href="/assets/icons/favicon.ico?v=rockpick2" sizes="any"> 30 <link rel="icon" type="image/png" sizes="32x32" href="/assets/icons/favicon-32.png?v=rockpick2"> 31 <link rel="icon" type="image/png" sizes="16x16" href="/assets/icons/favicon-16.png?v=rockpick2"> 32 <link rel="icon" href="/assets/icons/icon-192.png?v=rockpick2" type="image/png" sizes="192x192"> 33 34 <!-- Turnstile (human verification). Auto-renders the .cf-turnstile 35 div on direct loads; when this page is injected by the router, 36 page_overlay.js loads this script and renders explicitly. --> 37
37<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
37 38
38<script> 39 // JS is on, so the live WebGL sky will boot: black out the static 40 // CSS sky pre-paint (html.sky-live in pages.css) rather than 41 // crossfading a night snapshot into the live sim. No-JS visitors 42 // keep the static sky. 43 document.documentElement.classList.add('sky-live'); 44 </script>
44 45</head> 46<body class="page-shell"> 47 48 <a class="skip-link" href="#content">Skip to content</a> 49 50 <nav class="site-nav" aria-label="Main"> 51 <div class="nav-inner"> 52 <a class="nav-brand" href="/">Slateworks</a> 53 <div class="nav-links"> 54 <a href="/what-we-do">What we do</a> 55 <details class="nav-dropdown"> 56 <summary>Trades</summary> 57 <div class="nav-dropdown-panel"> 58 <a href="/for/sealcoating">Asphalt Maintenance</a> 59 <a href="/for/fencing">Fencing</a> 60 <a href="/for/roofing">Roofing</a> 61 <a href="/for/concrete">Concrete</a> 62 <a href="/for/landscaping">Landscaping</a> 63 </div> 64 </details> 65 <a href="/pricing">Pricing</a> 66 <a href="/contact" aria-current="page">Contact</a> 67 </div> 68 </div> 69 </nav> 70 71 <main class="page" id="content"> 72 73 <header class="page-hero"> 74 <p class="eyebrow">Contact</p> 75 <h1>Tell us about your shop.</h1> 76 <p class="lede">Whether you want early access, a straight answer about pricing, or just to kick the tires â drop us a line and a real person will get back to you.</p> 77 </header> 78 79 <section class="card"> 80 <!-- Submission is handled by page_overlay.js (document-level 81 delegation, so the form also works when this page is injected 82 into the overlay). The "fax" field is a honeypot â off-screen, 83 and any value in it marks the submission as bot traffic. 84 Turnstile injects the cf-turnstile-response token that 85 functions/api/contact.js verifies server-side, which also 86 means submissions require JS now â the plain-POST no-JS path 87 can't pass verification. --> 88 <form class="contact-form" id="contact-form" method="POST" action="/api/contact"> 89 <div class="form-row-2"> 90 <div> 91 <label for="cf-name">Name</label> 92 <input id="cf-name" name="name" type="text" required maxlength="200" autocomplete="name"> 93 </div> 94 <div> 95 <label for="cf-company">Company</label> 96 <input id="cf-company" name="company" type="text" maxlength="200" autocomplete="organization"> 97 </div> 98 </div> 99 <div class="form-row-2"> 100 <div> 101 <label for="cf-license-number">Contractor license number</label> 102 <input id="cf-license-number" name="license_number" type="text" maxlength="60" aria-describedby="cf-license-note"> 103 </div> 104 <div> 105 <label for="cf-license-state">Issuing state or province</label> 106 <select id="cf-license-state" name="license_state" aria-describedby="cf-license-note"> 107 <option value="">Pick one</option> 108 <optgroup label="United States"> 109 <option value="AL">Alabama</option> 110 <option value="AK">Alaska</option> 111 <option value="AZ">Arizona</option> 112 <option value="AR">Arkansas</option> 113 <option value="CA">California</option> 114 <option value="CO">Colorado</option> 115 <option value="CT">Connecticut</option> 116 <option value="DE">Delaware</option> 117 <option value="DC">District of Columbia</option> 118 <option value="FL">Florida</option> 119 <option value="GA">Georgia</option> 120 <option value="HI">Hawaii</option> 121 <option value="ID">Idaho</option> 122 <option value="IL">Illinois</option> 123 <option value="IN">Indiana</option> 124 <option value="IA">Iowa</option> 125 <option value="KS">Kansas</option> 126 <option value="KY">Kentucky</option> 127 <option value="LA">Louisiana</option> 128 <option value="ME">Maine</option> 129 <option value="MD">Maryland</option> 130 <option value="MA">Massachusetts</option> 131 <option value="MI">Michigan</option> 132 <option value="MN">Minnesota</option> 133 <option value="MS">Mississippi</option> 134 <option value="MO">Missouri</option> 135 <option value="MT">Montana</option> 136 <option value="NE">Nebraska</option> 137 <option value="NV">Nevada</option> 138 <option value="NH">New Hampshire</option> 139 <option value="NJ">New Jersey</option> 140 <option value="NM">New Mexico</option> 141 <option value="NY">New York</option> 142 <option value="NC">North Carolina</option> 143 <option value="ND">North Dakota</option> 144 <option value="OH">Ohio</option> 145 <option value="OK">Oklahoma</option> 146 <option value="OR">Oregon</option> 147 <option value="PA">Pennsylvania</option> 148 <option value="RI">Rhode Island</option> 149 <option value="SC">South Carolina</option> 150 <option value="SD">South Dakota</option> 151 <option value="TN">Tennessee</option> 152 <option value="TX">Texas</option> 153 <option value="UT">Utah</option> 154 <option value="VT">Vermont</option> 155 <option value="VA">Virginia</option> 156 <option value="WA">Washington</option> 157 <option value="WV">West Virginia</option> 158 <option value="WI">Wisconsin</option> 159 <option value="WY">Wyoming</option> 160 </optgroup> 161 <optgroup label="Canada"> 162 <option value="AB">Alberta</option> 163 <option value="BC">British Columbia</option> 164 <option value="MB">Manitoba</option> 165 <option value="NB">New Brunswick</option> 166 <option value="NL">Newfoundland and Labrador</option> 167 <option value="NS">Nova Scotia</option> 168 <option value="NT">Northwest Territories</option> 169 <option value="NU">Nunavut</option> 170 <option value="ON">Ontario</option> 171 <option value="PE">Prince Edward Island</option> 172 <option value="QC">Quebec</option> 173 <option value="SK">Saskatchewan</option> 174 <option value="YT">Yukon</option> 175 </optgroup> 176 <option value="Other">Other</option> 177 </select> 178 </div> 179 </div> 180 <div id="cf-license-state-other-wrap" hidden> 181 <label for="cf-license-state-other">Issuing state or province â other</label> 182 <input id="cf-license-state-other" name="license_state_other" type="text" maxlength="60"> 183 </div> 184 <p class="form-optional" id="cf-license-note">Slateworks is sold only to licensed contracting companies in the US and Canada. Reach out from anywhere else and we'll figure it out.</p> 185 <div class="form-row-2"> 186 <div> 187 <label for="cf-email">Email</label> 188 <input id="cf-email" name="email" type="email" required maxlength="320" autocomplete="email" 189 pattern="[^\s@]+@[^\s@]+\.[^\s@]{2,}" title="A full email address, like [email protected]"> 190 </div> 191 <div> 192 <label for="cf-phone">Phone</label> 193 <input id="cf-phone" name="phone" type="tel" required maxlength="14" autocomplete="tel" 194 placeholder="(555) 123-4567" pattern="\(\d{3}\) \d{3}-\d{4}" 195 title="10 digits, formatted (555) 123-4567 â it fills in as you type"> 196 </div> 197 </div> 198 <div> 199 <label for="cf-website">Company website</label> 200 <input id="cf-website" name="website" type="text" required maxlength="300" inputmode="url" 201 autocomplete="url" placeholder="yourcompany.com" 202 pattern="(https?://)?[A-Za-z0-9\-]+(\.[A-Za-z0-9\-]+)+(/.*)?" 203 title="Your company's website, like yourcompany.com"> 204 </div> 205 <div class="form-row-2"> 206 <div> 207 <label for="cf-trade">Trade</label> 208 <select id="cf-trade" name="trade"> 209 <option value="">Pick one (or don't)</option> 210 <option>Asphalt Maintenance</option> 211 <option>Fencing</option> 212 <option>Roofing</option> 213 <option>Concrete</option> 214 <option>Landscaping</option> 215 <option>Other</option> 216 </select> 217 </div> 218 <div id="cf-trade-other-wrap" hidden> 219 <label for="cf-trade-other">What does your company do?</label> 220 <input id="cf-trade-other" name="trade_other" type="text" maxlength="60" placeholder="Paving, striping, snowâ¦"> 221 </div> 222 </div> 223 <div class="form-row-2"> 224 <div> 225 <label for="cf-source">How did you hear about us? <span class="form-optional">(optional)</span></label> 226 <select id="cf-source" name="source"> 227 <option value="">Pick one (or don't)</option> 228 <option>
228Search engine</option> 229 <option>TikTok</option> 230 <option>Instagram</option> 231 <option>Facebook</option> 232 <option>LinkedIn</option> 233 <option>X</option> 234 <option>Bluesky</option> 235 <option>YouTube</option> 236 <option>Referral</option> 237 <option>Trade show or event</option> 238 <option>Other</option> 239 </select> 240 </div> 241 <div id="cf-source-other-wrap" hidden> 242 <label for="cf-source-other">Where?</label> 243 <input id="cf-source-other" name="source_other" type="text" maxlength="120"> 244 </div> 245 </div> 246 <!-- Filled from the utm_* tags on the link that brought the visitor 247 here (page_overlay.js remembers them for the session), so a lead 248 from a tagged post arrives labelled with that post. --> 249 <input type="hidden" name="utm_source"> 250 <input type="hidden" name="utm_medium"> 251 <input type="hidden" name="utm_campaign"> 252 <div> 253 <label for="cf-message">What are you looking for?</label> 254 <textarea id="cf-message" name="message" required maxlength="5000" rows="5" placeholder="Crew size, what's eating your evenings, when you'd want to start â whatever's useful."></textarea> 255 </div> 256 <input class="form-honeypot" type="text" name="fax" tabindex="-1" autocomplete="off" aria-hidden="true"> 257 <div class="cf-turnstile" data-sitekey="0x4AAAAAAEjTC4mO6l9VYEFI" data-action="contact" data-theme="dark"></div> 258 <button class="btn-primary" type="submit">Send it</button> 259 <p class="form-error" hidden>That didn't go through â give it another try, or come back in a minute.</p> 260 </form> 261 <div class="contact-done" hidden> 262 <h2>Got it. We'll be in touch.</h2> 263 <p>A real person reads these â expect a reply within a business day or two.</p> 264 </div> 265 </section> 266 267 </main> 268 269 <footer class="site-footer"> 270 <div class="footer-links"> 271 <a href="/">Home</a> 272 <a href="/what-we-do">What we do</a> 273 <details class="nav-dropdown"> 274 <summary>Trades</summary> 275 <div class="nav-dropdown-panel"> 276 <a href="/for/sealcoating">Asphalt Maintenance</a> 277 <a href="/for/fencing">Fencing</a> 278 <a href="/for/roofing">Roofing</a> 279 <a href="/for/concrete">Concrete</a> 280 <a href="/for/landscaping">Landscaping</a> 281 </div> 282 </details> 283 <a href="/pricing">Pricing</a> 284 <a href="/contact" aria-current="page">Contact</a> 285 <a href="/status">Status</a> 286 <a href="/privacy">Privacy</a> 287 <a href="/eula">Terms</a> 288 </div> 289 <p>© 2026 Slateworks LLC. All rights reserved.</p> 290 </footer> 291 292 <!-- Live sky (progressive enhancement): the FULL homepage simulation 293 stack â same boot lapse (sunsetâ30min at 80Ãâ15Ã), satellites, 294 and secret panel â so every page runs the identical show. The 295 page stays fully usable with zero JS. page_overlay.js keeps 296 in-site navigation on this one running sky. --> 297 <div id="page-layer" class="page-shell" tabindex="-1" hidden></div> 298
298<script src="/js/solar.js?v=979ea9dc"></script>
298 299
299<script src="/js/sky_colors.js?v=979ea9dc"></script>
299 300
300<script src="/js/vendor/astronomy.browser.min.js?v=979ea9dc"></script>
300 301
301<script src="/js/vendor/satellite.min.js?v=979ea9dc"></script>
301 302
302<script src="/js/data/star_catalog.js?v=979ea9dc"></script>
302 303
303<script src="/js/data/constellation_data.js?v=979ea9dc"></script>
303 304
304<script src="/js/planets.js?v=979ea9dc"></script>
304 305
305<script src="/js/stars_gl.js?v=979ea9dc"></script>
305 306
306<script src="/js/brand_mix.js?v=979ea9dc"></script>
306 307
307<script src="/js/divider_halo.js?v=979ea9dc"></script>
307 308
308<script src="/js/logo_fade.js?v=979ea9dc"></script>
308 309
309<script src="/js/constellations.js?v=979ea9dc"></script>
309 310
310<script src="/js/satellites.js?v=979ea9dc"></script>
310 311
311<script src="/js/secret.js?v=979ea9dc"></script>
311 312
312<script src="/js/page_overlay.js?v=979ea9dc"></script>
312 313 314</body> 315</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.