PageSourceSearch

https://slateworks.ai/contact

html slateworks.ai collected 2026-10-05 15:04:52 UTC 15,605 bytes, 315 lines download raw bytes

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>&copy; 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.