PageSourceSearch

https://workflows.diy/

html workflows.diy collected 2026-10-05 02:39:53 UTC 120,919 bytes, 3,237 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en" data-beasties-container>
3  <head>
4    <meta charset="UTF-8" />
5    <link rel="icon" type="image/png" href="/assets/favicon-fi_uJybw.ico" />
6    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7    
7<script
8      type="module"
9      async
10      crossorigin
11      src="/assets/app-Dk7xcN3Y.js"
12    ></script>
12
13    <style>
14      .app-button--link .app-button__label[data-v-ef5ce0b1] {
15        border-bottom: 1px solid currentColor;
16        padding-bottom: 0.12em;
17      }
18      .app-button--link:hover .app-button__label[data-v-ef5ce0b1] {
19        border-bottom-width: 2px;
20      }
21      .app-button__arrow[data-v-ef5ce0b1] {
22        text-decoration: none;
23      }
24      @font-face {
25        font-family: Recursive Variable;
26        font-style: oblique 0deg 15deg;
27        font-display: swap;
28        font-weight: 300 1000;
29        src: url(/assets/recursive-cyrillic-ext-full-normal-DL48ug1z.woff2)
30          format("woff2-variations");
31        unicode-range:
32          U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F,
33          U+FE2E-FE2F;
34      }
35      @font-face {
36        font-family: Recursive Variable;
37        font-style: oblique 0deg 15deg;
38        font-display: swap;
39        font-weight: 300 1000;
40        src: url(/assets/recursive-vietnamese-full-normal-C9d0lu7G.woff2)
41          format("woff2-variations");
42        unicode-range:
43          U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
44          U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329,
45          U+1EA0-1EF9, U+20AB;
46      }
47      @font-face {
48        font-family: Recursive Variable;
49        font-style: oblique 0deg 15deg;
50        font-display: swap;
51        font-weight: 300 1000;
52        src: url(/assets/recursive-latin-ext-full-normal-Ced8ljaz.woff2)
53          format("woff2-variations");
54        unicode-range:
55          U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
56          U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
57          U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
58      }
59      @font-face {
60        font-family: Recursive Variable;
61        font-style: oblique 0deg 15deg;
62        font-display: swap;
63        font-weight: 300 1000;
64        src: url(/assets/recursive-latin-full-normal-Bbk0y8ID.woff2)
65          format("woff2-variations");
66        unicode-range:
67          U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
68          U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
69          U+2212, U+2215, U+FEFF, U+FFFD;
70      }
71      :root {
72        --accent-500: #3569e5;
73        --accent-600: #2457d6;
74        --accent-700: #1945b6;
75        --accent-soft: #dce6ff;
76        --signal: #f05a32;
77        --radius-sm: 2px;
78        --radius-md: 4px;
79        --radius-lg: 4px;
80        --radius-pill: 999px;
81        --shadow-sm: 0 1px 2px rgba(16, 24, 32, 0.06);
82        --shadow-md: 0 8px 24px rgba(16, 24, 32, 0.08);
83        --shadow-lg: 0 20px 44px -16px rgba(16, 24, 32, 0.2);
84        --dur-fast: 0.12s;
85        --dur-base: 0.2s;
86        --dur-slow: 0.4s;
87        --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
88        --text-xs: 0.75rem;
89        --text-sm: 0.875rem;
90        --text-base: 1rem;
91        --text-lg: 1.125rem;
92        --text-xl: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
93        --text-2xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);
94        --text-3xl: clamp(2rem, 1.6rem + 1.8vw, 2.75rem);
95        --text-4xl: clamp(2.5rem, 1.8rem + 3vw, 4rem);
96        --text-5xl: clamp(3rem, 2rem + 4.5vw, 5.5rem);
97        --font-sans:
98          "Recursive Variable", ui-sans-serif, system-ui, -apple-system,
99          sans-serif;
100        --font-serif: var(--font-sans);
101        --font-mono:
102          "Recursive Variable", ui-monospace, SFMono-Regular, Menlo, monospace;
103      }
104      [data-surface="editorial"] {
105        --bg: #f4f5f2;
106        --bg-elev: #ffffff;
107        --bg-sunken: #e9ecef;
108        --ink: #101820;
109        --ink-muted: #56616b;
110        --ink-faint: #76818a;
111        --rule: #c9d0d5;
112        --workflow-card-bg: #e7ebee;
113        --workflow-card-border: #c5cdd3;
114        --accent: var(--accent-600);
115        --accent-ink: #ffffff;
116        --link: var(--accent-600);
117        --display-font: var(--font-sans);
118        --display-weight: 700;
119        --body-font: var(--font-sans);
120        --mono-font: var(--font-mono);
121        --selection-bg: var(--accent-soft);
122        --selection-fg: var(--ink);
123      }
124      [data-surface] {
125        background: var(--bg);
126        color: var(--ink);
127        font-family: var(--body-font);
128        font-feature-settings: "ss01";
129        font-variation-settings:
130          "MONO" 0,
131          "CASL" 0,
132          "slnt" 0,
133          "CRSV" 0;
134      }
135      [data-surface] ::-moz-selection {
136        background: var(--selection-bg);
137        color: var(--selection-fg);
138      }
139      [data-surface] ::selection {
140        background: var(--selection-bg);
141        color: var(--selection-fg);
142      }
143      @media (prefers-reduced-motion: reduce) {
144        * {
145          animation-duration: 0.01ms !important;
146          transition-duration: 0.01ms !important;
147        }
148      }
149      *,
150      :before,
151      :after {
152        --tw-border-spacing-x: 0;
153        --tw-border-spacing-y: 0;
154        --tw-translate-x: 0;
155        --tw-translate-y: 0;
156        --tw-rotate: 0;
157        --tw-skew-x: 0;
158        --tw-skew-y: 0;
159        --tw-scale-x: 1;
160        --tw-scale-y: 1;
161        --tw-pan-x: ;
162        --tw-pan-y: ;
163        --tw-pinch-zoom: ;
164        --tw-scroll-snap-strictness: proximity;
165        --tw-gradient-from-position: ;
166        --tw-gradient-via-position: ;
167        --tw-gradient-to-position: ;
168        --tw-ordinal: ;
169        --tw-slashed-zero: ;
170        --tw-numeric-figure: ;
171        --tw-numeric-spacing: ;
172        --tw-numeric-fraction: ;
173        --tw-ring-inset: ;
174        --tw-ring-offset-width: 0px;
175        --tw-ring-offset-color: #fff;
176        --tw-ring-color: rgb(59 130 246 / 0.5);
177        --tw-ring-offset-shadow: 0 0 #0000;
178        --tw-ring-shadow: 0 0 #0000;
179        --tw-shadow: 0 0 #0000;
180        --tw-shadow-colored: 0 0 #0000;
181        --tw-blur: ;
182        --tw-brightness: ;
183        --tw-contrast: ;
184        --tw-grayscale: ;
185        --tw-hue-rotate: ;
186        --tw-invert: ;
187        --tw-saturate: ;
188        --tw-sepia: ;
189        --tw-drop-shadow: ;
190        --tw-backdrop-blur: ;
191        --tw-backdrop-brightness: ;
192        --tw-backdrop-contrast: ;
193        --tw-backdrop-grayscale: ;
194        --tw-backdrop-hue-rotate: ;
195        --tw-backdrop-invert: ;
196        --tw-backdrop-opacity: ;
197        --tw-backdrop-saturate: ;
198        --tw-backdrop-sepia: ;
199        --tw-contain-size: ;
200        --tw-contain-layout: ;
201        --tw-contain-paint: ;
202        --tw-contain-style: ;
203      }
204      *,
205      :before,
206      :after {
207        box-sizing: border-box;
208        border-width: 0;
209        border-style: solid;
210        border-color: #e5e7eb;
211      }
212      :before,
213      :after {
214        --tw-content: "";
215      }
216      html {
217        line-height: 1.5;
218        -webkit-text-size-adjust: 100%;
219        -moz-tab-size: 4;
220        -o-tab-size: 4;
221        tab-size: 4;
222        font-family:
223          Recursive Variable,
224          ui-sans-serif,
225          system-ui,
226          sans-serif;
227        font-feature-settings: normal;
228        font-variation-settings: normal;
229        -webkit-tap-highlight-color: transparent;
230      }
231      body {
232        margin: 0;
233        line-height: inherit;
234      }
235      h1,
236      h2,
237      h3 {
238        font-size: inherit;
239        font-weight: inherit;
240      }
241      a {
242        color: inherit;
243        text-decoration: inherit;
244      }
245      button,
246      input,
247      textarea {
248        font-family: inherit;
249        font-feature-settings: inherit;
250        font-variation-settings: inherit;
251        font-size: 100%;
252        font-weight: inherit;
253        line-height: inherit;
254        letter-spacing: inherit;
255        color: inherit;
256        margin: 0;
257        padding: 0;
258      }
259      button {
260        text-transform: none;
261      }
262      button,
263      input:where([type="button"]),
264      input:where([type="reset"]),
265      input:where([type="submit"]) {
266        -webkit-appearance: button;
267        background-color: transparent;
268        background-image: none;
269      }
270      h1,
271      h2,
272      h3,
273      p {
274        margin: 0;
275      }
276      ul {
277        list-style: none;
278        margin: 0;
279        padding: 0;
280      }
281      textarea {
282        resize: vertical;
283      }
284      input::-moz-placeholder,
285      textarea::-moz-placeholder {
286        opacity: 1;
287        color: #9ca3af;
288      }
289      input::placeholder,
290      textarea::placeholder {
291        opacity: 1;
292        color: #9ca3af;
293      }
294      button {
295        cursor: pointer;
296      }
297      img,
298      svg {
299        display: block;
300        vertical-align: middle;
301      }
302      img {
303        max-width: 100%;
304        height: auto;
305      }
306      [data-surface="editorial"] main :is(p, li, dd) a:not(.app-button) {
307        text-decoration-color: color-mix(
308          in srgb,
309          currentColor 58%,
310          transparent
311        );
312        text-decoration-line: underline;
313        text-decoration-thickness: 1px;
314        text-underline-offset: 0.24em;
315        -webkit-text-decoration-skip: ink;
316        text-decoration-skip-ink: auto;
317      }
318      [data-surface="editorial"] main :is(p, li, dd) a:not(.app-button):hover {
319        text-decoration-color: currentColor;
320        text-decoration-thickness: 2px;
321      }
322      .prose {
323        color: var(--tw-prose-body);
324        max-width: 65ch;
325      }
326      .prose
327        :where(p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
328        margin-top: 1.25em;
329        margin-bottom: 1.25em;
330        line-height: 1.75;
331      }
332      .prose
333        :where([class~="lead"]):not(
334          :where([class~="not-prose"], [class~="not-prose"] *)
335        ) {
336        color: var(--tw-prose-lead);
337        font-size: 1.25em;
338        line-height: 1.6;
339        margin-top: 1.2em;
340        margin-bottom: 1.2em;
341      }
342      .prose
343        :where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
344        color: var(--tw-prose-links);
345        text-decoration: underline;
346        font-weight: 500;
347      }
348      .prose
349        :where(strong):not(
350          :where([class~="not-prose"], [class~="not-prose"] *)
351        ) {
352        color: var(--tw-prose-bold);
353        font-weight: 600;
354      }
355      .prose
356        :where(a strong):not(
357          :where([class~="not-prose"], [class~="not-prose"] *)
358        ) {
359        color: inherit;
360      }
361      .prose
362        :where(blockquote strong):not(
363          :where([class~="not-prose"], [class~="not-prose"] *)
364        ) {
365        color: inherit;
366      }
367      .prose
368        :where(thead th strong):not(
369          :where([class~="not-prose"], [class~="not-prose"] *)
370        ) {
371        color: inherit;
372      }
373      .prose
374        :where(ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
375        list-style-type: decimal;
376        margin-top: 1.25em;
377        margin-bottom: 1.25em;
378        padding-inline-start: 1.625em;
379      }
380      .prose
381        :where(ol[type="A"]):not(
382          :where([class~="not-prose"], [class~="not-prose"] *)
383        ) {
384        list-style-type: upper-alpha;
385      }
386      .prose
387        :where(ol[type="a"]):not(
388          :where([class~="not-prose"], [class~="not-prose"] *)
389        ) {
390        list-style-type: lower-alpha;
391      }
392      .prose
393        :where(ol[type="A s"]):not(
394          :where([class~="not-prose"], [class~="not-prose"] *)
395        ) {
396        list-style-type: upper-alpha;
397      }
398      .prose
399        :where(ol[type="a s"]):not(
400          :where([class~="not-prose"], [class~="not-prose"] *)
401        ) {
402        list-style-type: lower-alpha;
403      }
404      .prose
405        :where(ol[type="I"]):not(
406          :where([class~="not-prose"], [class~="not-prose"] *)
407        ) {
408        list-style-type: upper-roman;
409      }
410      .prose
411        :where(ol[type="i"]):not(
412          :where([class~="not-prose"], [class~="not-prose"] *)
413        ) {
414        list-style-type: lower-roman;
415      }
416      .prose
417        :where(ol[type="I s"]):not(
418          :where([class~="not-prose"], [class~="not-prose"] *)
419        ) {
420        list-style-type: upper-roman;
421      }
422      .prose
423        :where(ol[type="i s"]):not(
424          :where([class~="not-prose"], [class~="not-prose"] *)
425        ) {
426        list-style-type: lower-roman;
427      }
428      .prose
429        :where(ol[type="1"]):not(
430          :where([class~="not-prose"], [class~="not-prose"] *)
431        ) {
432        list-style-type: decimal;
433      }
434      .prose
435        :where(ul):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
436        list-style-type: disc;
437        margin-top: 1.25em;
438        margin-bottom: 1.25em;
439        padding-inline-start: 1.625em;
440      }
441      .prose
442        :where(ol > li):not(
443          :where([class~="not-prose"], [class~="not-prose"] *)
444        )::marker {
445        font-weight: 400;
446        color: var(--tw-prose-counters);
447      }
448      .prose
449        :where(ul > li):not(
450          :where([class~="not-prose"], [class~="not-prose"] *)
451        )::marker {
452        color: var(--tw-prose-bullets);
453      }
454      .prose
455        :where(dt):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
456        color: var(--tw-prose-headings);
457        font-weight: 600;
458        margin-top: 1.25em;
459      }
460      .prose
461        :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
462        border-color: var(--tw-prose-hr);
463        border-top-width: 1px;
464        margin-top: 2em;
465        margin-bottom: 2em;
466      }
467      .prose
468        :where(blockquote):not(
469          :where([class~="not-prose"], [class~="not-prose"] *)
470        ) {
471        font-weight: 500;
472        font-style: italic;
473        color: var(--tw-prose-quotes);
474        border-inline-start-width: 0.25rem;
475        border-inline-start-color: var(--tw-prose-quote-borders);
476        quotes: "“" "”" "‘" "’";
477        padding-inline-start: 1em;
478        padding-left: 1em;
479        margin: 1.5em 0;
480      }
481      .prose
482        :where(blockquote p:first-of-type):not(
483          :where([class~="not-prose"], [class~="not-prose"] *)
484        ):before {
485        content: open-quote;
486      }
487      .prose
488        :where(blockquote p:last-of-type):not(
489          :where([class~="not-prose"], [class~="not-prose"] *)
490        ):after {
491        content: close-quote;
492      }
493      .prose
494        :where(h1):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
495        color: var(--tw-prose-headings);
496        font-weight: 800;
497        font-size: 2.25rem;
498        margin-top: 0;
499        margin-bottom: 0.8888889em;
500        line-height: 2.5rem;
501      }
502      .prose
503        :where(h1 strong):not(
504          :where([class~="not-prose"], [class~="not-prose"] *)
505        ) {
506        font-weight: 900;
507        color: inherit;
508      }
509      .prose
510        :where(h2):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
511        color: var(--tw-prose-headings);
512        font-weight: 700;
513        font-size: 1.875rem;
514        margin-top: 2em;
515        margin-bottom: 1em;
516        line-height: 2.25rem;
517      }
518      .prose
519        :where(h2 strong):not(
520          :where([class~="not-prose"], [class~="not-prose"] *)
521        ) {
522        font-weight: 800;
523        color: inherit;
524      }
525      .prose
526        :where(h3):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
527        color: var(--tw-prose-headings);
528        font-weight: 600;
529        font-size: 1.5rem;
530        margin-top: 1.6em;
531        margin-bottom: 0.6em;
532        line-height: 2rem;
533      }
534      .prose
535        :where(h3 strong):not(
536          :where([class~="not-prose"], [class~="not-prose"] *)
537        ) {
538        font-weight: 700;
539        color: inherit;
540      }
541      .prose
542        :where(h4):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
543        color: var(--tw-prose-headings);
544        font-weight: 600;
545        margin-top: 1.5em;
546        margin-bottom: 0.5em;
547        line-height: 1.5;
548      }
549      .prose
550        :where(h4 strong):not(
551          :where([class~="not-prose"], [class~="not-prose"] *)
552        ) {
553        font-weight: 700;
554        color: inherit;
555      }
556      .prose
557        :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
558        margin-top: 2em;
559        margin-bottom: 2em;
560        border-radius: 0.5rem;
561        box-shadow:
562          0 10px 15px -3px #0000001a,
563          0 4px 6px -2px #0000000d;
564      }
565      .prose
566        :where(picture):not(
567          :where([class~="not-prose"], [class~="not-prose"] *)
568        ) {
569        display: block;
570        margin-top: 2em;
571        margin-bottom: 2em;
572      }
573      .prose
574        :where(video):not(
575          :where([class~="not-prose"], [class~="not-prose"] *)
576        ) {
577        margin-top: 2em;
578        margin-bottom: 2em;
579      }
580      .prose
581        :where(kbd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
582        font-weight: 500;
583        font-family: inherit;
584        color: var(--tw-prose-kbd);
585        box-shadow:
586          0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),
587          0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);
588        font-size: 0.875em;
589        border-radius: 0.3125rem;
590        padding-top: 0.1875em;
591        padding-inline-end: 0.375em;
592        padding-bottom: 0.1875em;
593        padding-inline-start: 0.375em;
594      }
595      .prose
596        :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
597        color: #1f2937;
598        font-weight: 600;
599        font-size: 0.9em;
600        font-family:
601          Recursive Variable,
602          ui-monospace,
603          monospace;
604        background-color: #e5e7eb;
605        padding: 0.1em 0.3em;
606        border-radius: 0.25rem;
607      }
608      .prose
609        :where(code):not(
610          :where([class~="not-prose"], [class~="not-prose"] *)
611        ):before {
612        content: "`";
613      }
614      .prose
615        :where(code):not(
616          :where([class~="not-prose"], [class~="not-prose"] *)
617        ):after {
618        content: "`";
619      }
620      .prose
621        :where(a code):not(
622          :where([class~="not-prose"], [class~="not-prose"] *)
623        ) {
624        color: inherit;
625      }
626      .prose
627        :where(h1 code):not(
628          :where([class~="not-prose"], [class~="not-prose"] *)
629        ) {
630        color: inherit;
631      }
632      .prose
633        :where(h2 code):not(
634          :where([class~="not-prose"], [class~="not-prose"] *)
635        ) {
636        color: inherit;
637        font-size: 0.875em;
638      }
639      .prose
640        :where(h3 code):not(
641          :where([class~="not-prose"], [class~="not-prose"] *)
642        ) {
643        color: inherit;
644        font-size: 0.9em;
645      }
646      .prose
647        :where(h4 code):not(
648          :where([class~="not-prose"], [class~="not-prose"] *)
649        ) {
650        color: inherit;
651      }
652      .prose
653        :where(blockquote code):not(
654          :where([class~="not-prose"], [class~="not-prose"] *)
655        ) {
656        color: inherit;
657      }
658      .prose
659        :where(thead th code):not(
660          :where([class~="not-prose"], [class~="not-prose"] *)
661        ) {
662        color: inherit;
663      }
664      .prose
665        :where(pre):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
666        color: var(--tw-prose-pre-code);
667        background-color: var(--tw-prose-pre-bg);
668        overflow-x: auto;
669        font-weight: 400;
670        font-size: 0.9em;
671        line-height: 1.7142857;
672        margin-top: 1.7142857em;
673        margin-bottom: 1.7142857em;
674        border-radius: 0.375rem;
675        padding-inline-end: 1.1428571em;
676        padding-inline-start: 1.1428571em;
677        font-family:
678          Recursive Variable,
679          ui-monospace,
680          monospace;
681        border: 1px solid #d1d5db;
682        padding: 1em;
683      }
684      .prose
685        :where(pre code):not(
686          :where([class~="not-prose"], [class~="not-prose"] *)
687        ) {
688        background-color: transparent;
689        border-width: 0;
690        border-radius: 0;
691        padding: 0;
692        font-weight: inherit;
693        color: var(--tw-prose-pre-code);
694        font-size: 1em;
695        font-family: inherit;
696        line-height: inherit;
697        border: none;
698      }
699      .prose
700        :where(pre code):not(
701          :where([class~="not-prose"], [class~="not-prose"] *)
702        ):before {
703        content: none;
704      }
705      .prose
706        :where(pre code):not(
707          :where([class~="not-prose"], [class~="not-prose"] *)
708        ):after {
709        content: none;
710      }
711      .prose
712        :where(table):not(
713          :where([class~="not-prose"], [class~="not-prose"] *)
714        ) {
715        width: 100%;
716        table-layout: auto;
717        margin-top: 2em;
718        margin-bottom: 2em;
719        font-size: 0.875em;
720        line-height: 1.7142857;
721      }
722      .prose
723        :where(thead):not(
724          :where([class~="not-prose"], [class~="not-prose"] *)
725        ) {
726        border-bottom-width: 1px;
727        border-bottom-color: var(--tw-prose-th-borders);
728      }
729      .prose
730        :where(thead th):not(
731          :where([class~="not-prose"], [class~="not-prose"] *)
732        ) {
733        color: var(--tw-prose-headings);
734        font-weight: 600;
735        vertical-align: bottom;
736        padding-inline-end: 0.5714286em;
737        padding-bottom: 0.5714286em;
738        padding-inline-start: 0.5714286em;
739      }
740      .prose
741        :where(tbody tr):not(
742          :where([class~="not-prose"], [class~="not-prose"] *)
743        ) {
744        border-bottom-width: 1px;
745        border-bottom-color: var(--tw-prose-td-borders);
746      }
747      .prose
748        :where(tbody tr:last-child):not(
749          :where([class~="not-prose"], [class~="not-prose"] *)
750        ) {
751        border-bottom-width: 0;
752      }
753      .prose
754        :where(tbody td):not(
755          :where([class~="not-prose"], [class~="not-prose"] *)
756        ) {
757        vertical-align: baseline;
758      }
759      .prose
760        :where(tfoot):not(
761          :where([class~="not-prose"], [class~="not-prose"] *)
762        ) {
763        border-top-width: 1px;
764        border-top-color: var(--tw-prose-th-borders);
765      }
766      .prose
767        :where(tfoot td):not(
768          :where([class~="not-prose"], [class~="not-prose"] *)
769        ) {
770        vertical-align: top;
771      }
772      .prose
773        :where(th, td):not(
774          :where([class~="not-prose"], [class~="not-prose"] *)
775        ) {
776        text-align: start;
777      }
778      .prose
779        :where(figure > *):not(
780          :where([class~="not-prose"], [class~="not-prose"] *)
781        ) {
782        margin-top: 0;
783        margin-bottom: 0;
784      }
785      .prose
786        :where(figcaption):not(
787          :where([class~="not-prose"], [class~="not-prose"] *)
788        ) {
789        color: var(--tw-prose-captions);
790        font-size: 0.875em;
791        line-height: 1.4285714;
792        margin-top: 0.8571429em;
793      }
794      .prose {
795        --tw-prose-body: #374151;
796        --tw-prose-headings: #111827;
797        --tw-prose-lead: #4b5563;
798        --tw-prose-links: #4f46e5;
799        --tw-prose-bold: #111827;
800        --tw-prose-counters: #6b7280;
801        --tw-prose-bullets: #9ca3af;
802        --tw-prose-hr: #e5e7eb;
803        --tw-prose-quotes: #4b5563;
804        --tw-prose-quote-borders: #6366f1;
805        --tw-prose-captions: #6b7280;
806        --tw-prose-kbd: #111827;
807        --tw-prose-kbd-shadows: 17 24 39;
808        --tw-prose-code: #4f46e5;
809        --tw-prose-pre-code: #c7d2fe;
810        --tw-prose-pre-bg: #1f2937;
811        --tw-prose-th-borders: #d1d5db;
812        --tw-prose-td-borders: #e5e7eb;
813        --tw-prose-invert-body: #d1d5db;
814        --tw-prose-invert-headings: #fff;
815        --tw-prose-invert-lead: #9ca3af;
816        --tw-prose-invert-links: #fff;
817        --tw-prose-invert-bold: #fff;
818        --tw-prose-invert-counters: #9ca3af;
819        --tw-prose-invert-bullets: #4b5563;
820        --tw-prose-invert-hr: #374151;
821        --tw-prose-invert-quotes: #f3f4f6;
822        --tw-prose-invert-quote-borders: #374151;
823        --tw-prose-invert-captions: #9ca3af;
824        --tw-prose-invert-kbd: #fff;
825        --tw-prose-invert-kbd-shadows: 255 255 255;
826        --tw-prose-invert-code: #fff;
827        --tw-prose-invert-pre-code: #d1d5db;
828        --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
829        --tw-prose-invert-th-borders: #4b5563;
830        --tw-prose-invert-td-borders: #374151;
831        font-size: 1rem;
832        line-height: 1.75;
833      }
834      .prose
835        :where(picture > img):not(
836          :where([class~="not-prose"], [class~="not-prose"] *)
837        ) {
838        margin-top: 0;
839        margin-bottom: 0;
840      }
841      .prose
842        :where(li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
843        margin-top: 0.5em;
844        margin-bottom: 0.5em;
845        padding-left: 0.25em;
846        line-height: 1.75;
847      }
848      .prose
849        :where(ol > li):not(
850          :where([class~="not-prose"], [class~="not-prose"] *)
851        ) {
852        padding-inline-start: 0.375em;
853      }
854      .prose
855        :where(ul > li):not(
856          :where([class~="not-prose"], [class~="not-prose"] *)
857        ) {
858        padding-inline-start: 0.375em;
859      }
860      .prose
861        :where(.prose > ul > li p):not(
862          :where([class~="not-prose"], [class~="not-prose"] *)
863        ) {
864        margin-top: 0.75em;
865        margin-bottom: 0.75em;
866      }
867      .prose
868        :where(.prose > ul > li > p:first-child):not(
869          :where([class~="not-prose"], [class~="not-prose"] *)
870        ) {
871        margin-top: 1.25em;
872      }
873      .prose
874        :where(.prose > ul > li > p:last-child):not(
875          :where([class~="not-prose"], [class~="not-prose"] *)
876        ) {
877        margin-bottom: 1.25em;
878      }
879      .prose
880        :where(.prose > ol > li > p:first-child):not(
881          :where([class~="not-prose"], [class~="not-prose"] *)
882        ) {
883        margin-top: 1.25em;
884      }
885      .prose
886        :where(.prose > ol > li > p:last-child):not(
887          :where([class~="not-prose"], [class~="not-prose"] *)
888        ) {
889        margin-bottom: 1.25em;
890      }
891      .prose
892        :where(ul ul, ul ol, ol ul, ol ol):not(
893          :where([class~="not-prose"], [class~="not-prose"] *)
894        ) {
895        margin-top: 0.75em;
896        margin-bottom: 0.75em;
897      }
898      .prose
899        :where(dl):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
900        margin-top: 1.25em;
901        margin-bottom: 1.25em;
902      }
903      .prose
904        :where(dd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
905        margin-top: 0.5em;
906        padding-inline-start: 1.625em;
907      }
908      .prose
909        :where(hr + *):not(
910          :where([class~="not-prose"], [class~="not-prose"] *)
911        ) {
912        margin-top: 0;
913      }
914      .prose
915        :where(h2 + *):not(
916          :where([class~="not-prose"], [class~="not-prose"] *)
917        ) {
918        margin-top: 0;
919      }
920      .prose
921        :where(h3 + *):not(
922          :where([class~="not-prose"], [class~="not-prose"] *)
923        ) {
924        margin-top: 0;
925      }
926      .prose
927        :where(h4 + *):not(
928          :where([class~="not-prose"], [class~="not-prose"] *)
929        ) {
930        margin-top: 0;
931      }
932      .prose
933        :where(thead th:first-child):not(
934          :where([class~="not-prose"], [class~="not-prose"] *)
935        ) {
936        padding-inline-start: 0;
937      }
938      .prose
939        :where(thead th:last-child):not(
940          :where([class~="not-prose"], [class~="not-prose"] *)
941        ) {
942        padding-inline-end: 0;
943      }
944      .prose
945        :where(tbody td, tfoot td):not(
946          :where([class~="not-prose"], [class~="not-prose"] *)
947        ) {
948        padding-top: 0.5714286em;
949        padding-inline-end: 0.5714286em;
950        padding-bottom: 0.5714286em;
951        padding-inline-start: 0.5714286em;
952      }
953      .prose
954        :where(tbody td:first-child, tfoot td:first-child):not(
955          :where([class~="not-prose"], [class~="not-prose"] *)
956        ) {
957        padding-inline-start: 0;
958      }
959      .prose
960        :where(tbody td:last-child, tfoot td:last-child):not(
961          :where([class~="not-prose"], [class~="not-prose"] *)
962        ) {
963        padding-inline-end: 0;
964      }
965      .prose
966        :where(figure):not(
967          :where([class~="not-prose"], [class~="not-prose"] *)
968        ) {
969        margin-top: 2em;
970        margin-bottom: 2em;
971      }
972      .prose
973        :where(.prose > :first-child):not(
974          :where([class~="not-prose"], [class~="not-prose"] *)
975        ) {
976        margin-top: 0;
977      }
978      .prose
979        :where(.prose > :last-child):not(
980          :where([class~="not-prose"], [class~="not-prose"] *)
981        ) {
982        margin-bottom: 0;
983      }
984      .prose
985        :where(h1, h2, h3, h4, h5, h6):not(
986          :where([class~="not-prose"], [class~="not-prose"] *)
987        ) {
988        font-family:
989          Recursive Variable,
990          ui-sans-serif,
991          system-ui,
992          sans-serif;
993        font-weight: 700;
994        margin-top: 1.5em;
995        margin-bottom: 0.75em;
996      }
997      .prose
998        :where(ul, ol):not(
999          :where([class~="not-prose"], [class~="not-prose"] *)
1000        ) {
1001        margin-top: 1.25em;
1002        margin-bottom: 1.25em;
1003        padding-left: 1.75em;
1004      }
1005      .prose
1006        :where(li > p):not(
1007          :where([class~="not-prose"], [class~="not-prose"] *)
1008        ) {
1009        margin-top: 0.25em;
1010        margin-bottom: 0.25em;
1011      }
1012      .prose
1013        :where(li ul, li ol):not(
1014          :where([class~="not-prose"], [class~="not-prose"] *)
1015        ) {
1016        margin-top: 0.5em;
1017        margin-bottom: 0.5em;
1018        padding-left: 1.5em;
1019      }
1020      .fixed {
1021        position: fixed;
1022      }
1023      .sticky {
1024        position: sticky;
1025      }
1026      .left-0 {
1027        left: 0;
1028      }
1029      .top-0 {
1030        top: 0;
1031      }
1032      .z-40 {
1033        z-index: 40;
1034      }
1035      .z-50 {
1036        z-index: 50;
1037      }
1038      .col-span-2 {
1039        grid-column: span 2 / span 2;
1040      }
1041      .mx-2 {
1042        margin-left: 0.5rem;
1043        margin-right: 0.5rem;
1044      }
1045      .mx-auto {
1046        margin-left: auto;
1047        margin-right: auto;
1048      }
1049      .mb-2 {
1050        margin-bottom: 0.5rem;
1051      }
1052      .mb-4 {
1053        margin-bottom: 1rem;
1054      }
1055      .mb-6 {
1056        margin-bottom: 1.5rem;
1057      }
1058      .mt-10 {
1059        margin-top: 2.5rem;
1060      }
1061      .mt-16 {
1062        margin-top: 4rem;
1063      }
1064      .mt-4 {
1065        margin-top: 1rem;
1066      }
1067      .mt-6 {
1068        margin-top: 1.5rem;
1069      }
1070      .mt-8 {
1071        margin-top: 2rem;
1072      }
1073      .mt-auto {
1074        margin-top: auto;
1075      }
1076      .flex {
1077        display: flex;
1078      }
1079      .inline-flex {
1080        display: inline-flex;
1081      }
1082      .grid {
1083        display: grid;
1084      }
1085      .hidden {
1086        display: none;
1087      }
1088      .\!h-auto {
1089        height: auto !important;
1090      }
1091      .h-10 {
1092        height: 2.5rem;
1093      }
1094      .h-16 {
1095        height: 4rem;
1096      }
1097      .h-5 {
1098        height: 1.25rem;
1099      }
1100      .h-6 {
1101        height: 1.5rem;
1102      }
1103      .h-9 {
1104        height: 2.25rem;
1105      }
1106      .h-\[2px\] {
1107        height: 2px;
1108      }
1109      .h-auto {
1110        height: auto;
1111      }
1112      .min-h-screen {
1113        min-height: 100vh;
1114      }
1115      .w-10 {
1116        width: 2.5rem;
1117      }
1118      .w-6 {
1119        width: 1.5rem;
1120      }
1121      .w-full {
1122        width: 100%;
1123      }
1124      .w-px {
1125        width: 1px;
1126      }
1127      .max-w-3xl {
1128        max-width: 48rem;
1129      }
1130      .max-w-4xl {
1131        max-width: 56rem;
1132      }
1133      .max-w-5xl {
1134        max-width: 64rem;
1135      }
1136      .max-w-7xl {
1137        max-width: 80rem;
1138      }
1139      .max-w-\[680px\] {
1140        max-width: 680px;
1141      }
1142      .max-w-none {
1143        max-width: none;
1144      }
1145      .max-w-sm {
1146        max-width: 24rem;
1147      }
1148      .flex-grow {
1149        flex-grow: 1;
1150      }
1151      .select-none {
1152        -webkit-user-select: none;
1153        -moz-user-select: none;
1154        user-select: none;
1155      }
1156      .list-disc {
1157        list-style-type: disc;
1158      }
1159      .grid-cols-1 {
1160        grid-template-columns: repeat(1, minmax(0, 1fr));
1161      }
1162      .grid-cols-2 {
1163        grid-template-columns: repeat(2, minmax(0, 1fr));
1164      }
1165      .flex-col {
1166        flex-direction: column;
1167      }
1168      .items-start {
1169        align-items: flex-start;
1170      }
1171      .items-center {
1172        align-items: center;
1173      }
1174      .items-baseline {
1175        align-items: baseline;
1176      }
1177      .justify-center {
1178        justify-content: center;
1179      }
1180      .justify-between {
1181        justify-content: space-between;
1182      }
1183      .gap-1 {
1184        gap: 0.25rem;
1185      }
1186      .gap-10 {
1187        gap: 2.5rem;
1188      }
1189      .gap-2 {
1190        gap: 0.5rem;
1191      }
1192      .gap-3 {
1193        gap: 0.75rem;
1194      }
1195      .gap-6 {
1196        gap: 1.5rem;
1197      }
1198      .gap-x-10 {
1199        -moz-column-gap: 2.5rem;
1200        column-gap: 2.5rem;
1201      }
1202      .gap-y-6 {
1203        row-gap: 1.5rem;
1204      }
1205      .space-y-2 > :not([hidden]) ~ :not([hidden]) {
1206        --tw-space-y-reverse: 0;
1207        margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
1208        margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
1209      }
1210      .space-y-3 > :not([hidden]) ~ :not([hidden]) {
1211        --tw-space-y-reverse: 0;
1212        margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
1213        margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
1214      }
1215      .space-y-4 > :not([hidden]) ~ :not([hidden]) {
1216        --tw-space-y-reverse: 0;
1217        margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
1218        margin-bottom: calc(1rem * var(--tw-space-y-reverse));
1219      }
1220      .space-y-5 > :not([hidden]) ~ :not([hidden]) {
1221        --tw-space-y-reverse: 0;
1222        margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
1223        margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
1224      }
1225      .whitespace-nowrap {
1226        white-space: nowrap;
1227      }
1228      .\!rounded-none {
1229        border-radius: 0 !important;
1230      }
1231      .rounded-lg {
1232        border-radius: var(--radius-lg);
1233      }
1234      .rounded-md {
1235        border-radius: var(--radius-md);
1236      }
1237      .rounded-sm {
1238        border-radius: var(--radius-sm);
1239      }
1240      .border {
1241        border-width: 1px;
1242      }
1243      .border-b {
1244        border-bottom-width: 1px;
1245      }
1246      .border-t {
1247        border-top-width: 1px;
1248      }
1249      .border-accent {
1250        border-color: var(--accent);
1251      }
1252      .border-rule {
1253        border-color: var(--rule);
1254      }
1255      .border-transparent {
1256        border-color: transparent;
1257      }
1258      .bg-accent {
1259        background-color: var(--accent);
1260      }
1261      .bg-rule {
1262        background-color: var(--rule);
1263      }
1264      .bg-surface {
1265        background-color: var(--bg);
1266      }
1267      .bg-surface-elev {
1268        background-color: var(--bg-elev);
1269      }
1270      .bg-surface-sunken {
1271        background-color: var(--bg-sunken);
1272      }
1273      .bg-transparent {
1274        background-color: transparent;
1275      }
1276      .\!px-0 {
1277        padding-left: 0 !important;
1278        padding-right: 0 !important;
1279      }
1280      .px-3 {
1281        padding-left: 0.75rem;
1282        padding-right: 0.75rem;
1283      }
1284      .px-4 {
1285        padding-left: 1rem;
1286        padding-right: 1rem;
1287      }
1288      .px-6 {
1289        padding-left: 1.5rem;
1290        padding-right: 1.5rem;
1291      }
1292      .py-12 {
1293        padding-top: 3rem;
1294        padding-bottom: 3rem;
1295      }
1296      .py-16 {
1297        padding-top: 4rem;
1298        padding-bottom: 4rem;
1299      }
1300      .py-2 {
1301        padding-top: 0.5rem;
1302        padding-bottom: 0.5rem;
1303      }
1304      .pb-12 {
1305        padding-bottom: 3rem;
1306      }
1307      .pb-\[1px\] {
1308        padding-bottom: 1px;
1309      }
1310      .pt-28 {
1311        padding-top: 7rem;
1312      }
1313      .pt-8 {
1314        padding-top: 2rem;
1315      }
1316      .font-display {
1317        font-family: var(--display-font), sans-serif;
1318      }
1319      .font-mono {
1320        font-family:
1321          Recursive Variable,
1322          ui-monospace,
1323          monospace;
1324      }
1325      .font-sans,
1326      .font-serif {
1327        font-family:
1328          Recursive Variable,
1329          ui-sans-serif,
1330          system-ui,
1331          sans-serif;
1332      }
1333      .text-2xl {
1334        font-size: 1.5rem;
1335        line-height: 2rem;
1336      }
1337      .text-\[10px\] {
1338        font-size: 10px;
1339      }
1340      .text-\[11px\] {
1341        font-size: 11px;
1342      }
1343      .text-lg {
1344        font-size: 1.125rem;
1345        line-height: 1.75rem;
1346      }
1347      .text-sm {
1348        font-size: 0.875rem;
1349        line-height: 1.25rem;
1350      }
1351      .text-xl {
1352        font-size: 1.25rem;
1353        line-height: 1.75rem;
1354      }
1355      .font-extrabold {
1356        font-weight: 800;
1357      }
1358      .font-semibold {
1359        font-weight: 600;
1360      }
1361      .uppercase {
1362        text-transform: uppercase;
1363      }
1364      .leading-\[1\.02\] {
1365        line-height: 1.02;
1366      }
1367      .leading-none {
1368        line-height: 1;
1369      }
1370      .leading-relaxed {
1371        line-height: 1.625;
1372      }
1373      .tracking-\[-0\.04em\] {
1374        letter-spacing: -0.04em;
1375      }
1376      .tracking-\[0\.22em\] {
1377        letter-spacing: 0.22em;
1378      }
1379      .tracking-\[0\.2em\] {
1380        letter-spacing: 0.2em;
1381      }
1382      .text-\[color\:var\(--accent-ink\)\] {
1383        color: var(--accent-ink);
1384      }
1385      .text-accent {
1386        color: var(--accent);
1387      }
1388      .text-ink {
1389        color: var(--ink);
1390      }
1391      .text-ink-faint {
1392        color: var(--ink-faint);
1393      }
1394      .text-ink-muted {
1395        color: var(--ink-muted);
1396      }
1397      .transition-\[width\] {
1398        transition-property: width;
1399        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1400        transition-duration: 0.15s;
1401      }
1402      .transition-all {
1403        transition-property: all;
1404        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1405        transition-duration: 0.15s;
1406      }
1407      .transition-colors {
1408        transition-property:
1409          color, background-color, border-color, text-decoration-color, fill,
1410          stroke;
1411        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1412        transition-duration: 0.15s;
1413      }
1414      .transition-transform {
1415        transition-property: transform;
1416        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1417        transition-duration: 0.15s;
1418      }
1419      .duration-75 {
1420        transition-duration: 75ms;
1421      }
1422      .duration-\[var\(--dur-base\)\] {
1423        transition-duration: var(--dur-base);
1424      }
1425      .ease-out {
1426        transition-timing-function: var(--ease-out);
1427      }
1428      .font-display {
1429        font-family: var(--display-font);
1430        font-variation-settings:
1431          "MONO" 0,
1432          "CASL" 0,
1433          "slnt" 0,
1434          "CRSV" 0;
1435      }
1436      .font-mono {
1437        font-family: var(--mono-font);
1438        font-variation-settings:
1439          "MONO" 1,
1440          "CASL" 0,
1441          "slnt" 0,
1442          "CRSV" 0;
1443      }
1444      [data-surface="editorial"] :is(h1, h2, h3).font-display {
1445        font-weight: 700 !important;
1446        letter-spacing: -0.035em !important;
1447      }
1448      [data-surface="editorial"] :is(h1, h2, h3) :is(em, .italic) {
1449        color: var(--accent);
1450        font-family: var(--display-font) !important;
1451        font-style: normal !important;
1452        font-variation-settings:
1453          "MONO" 0,
1454          "CASL" 0,
1455          "slnt" 0,
1456          "CRSV" 0;
1457      }
1458      [data-surface="editorial"] .font-mono.uppercase {
1459        font-family: var(--body-font);
1460        font-variation-settings:
1461          "MONO" 0,
1462          "CASL" 0,
1463          "slnt" 0,
1464          "CRSV" 0;
1465        font-weight: 700;
1466        letter-spacing: 0.08em !important;
1467      }
1468      html {
1469        scroll-behavior: smooth;
1470      }
1471      body {
1472        display: flex;
1473        min-height: 100vh;
1474        flex-direction: column;
1475        -webkit-font-smoothing: antialiased;
1476        -moz-osx-font-smoothing: grayscale;
1477        background-color: #f4f5f2;
1478        color: #101820;
1479      }
1480      .hover\:border-accent:hover {
1481        border-color: var(--accent);
1482      }
1483      .hover\:border-accent-700:hover {
1484        border-color: var(--accent-700);
1485      }
1486      .hover\:border-current:hover {
1487        border-color: currentColor;
1488      }
1489      .hover\:bg-accent-700:hover {
1490        background-color: var(--accent-700);
1491      }
1492      .hover\:bg-surface-elev:hover {
1493        background-color: var(--bg-elev);
1494      }
1495      .hover\:text-\[color\:var\(--accent-700\)\]:hover {
1496        color: var(--accent-700);
1497      }
1498      .hover\:text-accent:hover {
1499        color: var(--accent);
1500      }
1501      .hover\:text-ink:hover {
1502        color: var(--ink);
1503      }
1504      .focus-visible\:outline-none:focus-visible {
1505        outline: 2px solid transparent;
1506        outline-offset: 2px;
1507      }
1508      .active\:translate-y-\[1px\]:active {
1509        --tw-translate-y: 1px;
1510        transform: translate(var(--tw-translate-x), var(--tw-translate-y))
1511          rotate(var(--tw-rotate)) skew(var(--tw-skew-x))
1512          skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x))
1513          scaleY(var(--tw-scale-y));
1514      }
1515      .group:hover .group-hover\:translate-x-0\.5 {
1516        --tw-translate-x: 0.125rem;
1517        transform: translate(var(--tw-translate-x), var(--tw-translate-y))
1518          rotate(var(--tw-rotate)) skew(var(--tw-skew-x))
1519          skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x))
1520          scaleY(var(--tw-scale-y));
1521      }
1522      .group:hover .group-hover\:translate-x-1 {
1523        --tw-translate-x: 0.25rem;
1524        transform: translate(var(--tw-translate-x), var(--tw-translate-y))
1525          rotate(var(--tw-rotate)) skew(var(--tw-skew-x))
1526          skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x))
1527          scaleY(var(--tw-scale-y));
1528      }
1529      @media (min-width: 640px) {
1530        .sm\:inline {
1531          display: inline;
1532        }
1533      }
1534      @media (min-width: 768px) {
1535        .md\:grid-cols-2 {
1536          grid-template-columns: repeat(2, minmax(0, 1fr));
1537        }
1538        .md\:grid-cols-5 {
1539          grid-template-columns: repeat(5, minmax(0, 1fr));
1540        }
1541        .md\:flex-row {
1542          flex-direction: row;
1543        }
1544        .md\:items-center {
1545          align-items: center;
1546        }
1547        .md\:gap-8 {
1548          gap: 2rem;
1549        }
1550        .md\:px-8 {
1551          padding-left: 2rem;
1552          padding-right: 2rem;
1553        }
1554        .md\:py-16 {
1555          padding-top: 4rem;
1556          padding-bottom: 4rem;
1557        }
1558        .md\:py-20 {
1559          padding-top: 5rem;
1560          padding-bottom: 5rem;
1561        }
1562        .md\:py-24 {
1563          padding-top: 6rem;
1564          padding-bottom: 6rem;
1565        }
1566        .md\:pb-16 {
1567          padding-bottom: 4rem;
1568        }
1569        .md\:pt-32 {
1570          padding-top: 8rem;
1571        }
1572        .md\:text-2xl {
1573          font-size: 1.5rem;
1574          line-height: 2rem;
1575        }
1576      }
1577      @media (min-width: 1024px) {
1578        .lg\:flex {
1579          display: flex;
1580        }
1581        .lg\:hidden {
1582          display: none;
1583        }
1584      }
1585    </style>
1586    <link
1587      rel="preload"
1588      crossorigin
1589      href="/assets/app-BOXp1MmS.css"
1590      as="style"
1591    />
1592    <link
1593      rel="sitemap"
1594      type="application/xml"
1595      title="Sitemap"
1596      href="/sitemap.xml"
1597    />
1598    <link rel="modulepreload" crossorigin href="/assets/HomePage-DY_xLc0B.js" />
1599    <link
1600      rel="modulepreload"
1601      crossorigin
1602      href="/assets/AccordionItem-CLNgxUMp.js"
1603    />
1604    <link rel="preload" href="/assets/AccordionItem-CU0z0BtU.css" as="style" />
1605    <title>AI Implementation Consulting | workflows.diy</title>
1606    
1606<script type="application/ld+json">
1607      {
1608        "@context": "https://schema.org",
1609        "@type": "Organization",
1610        "@id": "https://workflows.diy#org",
1611        "name": "workflows.diy",
1612        "url": "https://workflows.diy",
1613        "description": "1:1 AI implementation consulting. Build and deploy AI that your org actually uses.",
1614        "knowsAbout": [
1615          "AI implementation",
1616          "Fractional Chief AI Officer",
1617          "n8n workflow automation",
1618          "Agentic AI systems",
1619          "Model Context Protocol (MCP)",
1620          "AI-first software development",
1621          "Context engineering",
1622          "AI governance"
1623        ]
1624      }
1625    </script>
1625
1626    
1626<script type="application/ld+json">
1627      {
1628        "@context": "https://schema.org",
1629        "@type": "WebSite",
1630        "@id": "https://workflows.diy#website",
1631        "name": "workflows.diy",
1632        "url": "https://workflows.diy",
1633        "description": "1:1 AI implementation consulting. Build and deploy AI that your org actually uses.",
1634        "publisher": { "@id": "https://workflows.diy#org" },
1635        "inLanguage": "en-US"
1636      }
1637    </script>
1637
1638    <meta
1639      name="description"
1640      content="1:1 AI implementation consulting for leaders and builders. Map a business process, ship working software, and add evals and cost controls before rollout."
1641    />
1642    <meta property="og:site_name" content="workflows.diy" />
1643    <meta property="og:type" content="website" />
1644    <meta property="og:url" content="https://workflows.diy" />
1645    <meta
1646      property="og:image"
1647      content="https://workflows.diy/default-og-image.png"
1648    />
1649    <meta property="og:image:width" content="1200" />
1650    <meta property="og:image:height" content="630" />
1651    <meta property="og:locale" content="en_US" />
1652    <meta name="twitter:card" content="summary_large_image" />
1653    <meta name="author" content="workflows.diy" />
1654    <meta name="theme-color" content="#f4f5f2" />
1655    <meta name="msapplication-TileColor" content="#2457d6" />
1656    <link rel="canonical" href="https://workflows.diy" />
1657    <meta
1658      property="og:title"
1659      content="workflows.diy | 1:1 AI Implementation Consulting"
1660    />
1661    <meta
1662      property="og:description"
1663      content="Work directly with Cory LePage to move one AI workflow from a stalled pilot to working software in your stack."
1664    />
1665    
1665<script type="application/ld+json">
1666      {
1667        "@context": "https://schema.org",
1668        "@type": "FAQPage",
1669        "mainEntity": [
1670          {
1671            "@type": "Question",
1672            "name": "What's the refund policy?",
1673            "acceptedAnswer": {
1674              "@type": "Answer",
1675              "text": "If the work is not worth the price, tell me and I will refund 100%. Your judgment is the test."
1676            }
1677          },
1678          {
1679            "@type": "Question",
1680            "name": "What kind of AI work do you actually help with?",
1681            "acceptedAnswer": {
1682              "@type": "Answer",
1683              "text": "I help map business processes, build n8n workflows and agentic systems, connect tools through MCP, and add evals and monitoring. Most engagements start with one process and one measurable release, then iterate from real usage."
1684            }
1685          },
1686          {
1687            "@type": "Question",
1688            "name": "How do you help with AI strategy?",
1689            "acceptedAnswer": {
1690              "@type": "Answer",
1691              "text": "By refusing to separate strategy from implementation, and by pushing on what to kill, not just what to build. I build the roadmap against what's actually shippable this quarter, not what sounds visionary on a deck. Identify high-impact use cases, pick the right model and tool portfolio, sequence the rollout, and set the cost/eval discipline that keeps it honest."
1692            }
1693          },
1694          {
1695            "@type": "Question",
1696            "name": "Do you build the AI solutions for me?",
1697            "acceptedAnswer": {
1698              "@type": "Answer",
1699              "text": "My primary role is to guide and coach you and your team to build and implement AI solutions. I'll pair on technical work, but the goal is to leave your team with the skills and ownership to keep shipping after I'm gone. Dependency isn't the product."
1700            }
1701          },
1702          {
1703            "@type": "Question",
1704            "name": "How fast can we start?",
1705            "acceptedAnswer": {
1706              "@type": "Answer",
1707              "text": "One-off calls can usually be scheduled within a week. Monthly and premium retainers start with a short call to confirm the problem, scope, and fit."
1708            }
1709          }
1710        ]
1711      }
1712    </script>
1712
1713    <link
1714      rel="preload"
1715      as="font"
1716      crossorigin="anonymous"
1717      href="/assets/recursive-cyrillic-ext-full-normal-DL48ug1z.woff2"
1718    />
1719    <link
1720      rel="preload"
1721      as="font"
1722      crossorigin="anonymous"
1723      href="/assets/recursive-vietnamese-full-normal-C9d0lu7G.woff2"
1724    />
1725    <link
1726      rel="preload"
1727      as="font"
1728      crossorigin="anonymous"
1729      href="/assets/recursive-latin-ext-full-normal-Ced8ljaz.woff2"
1730    />
1731    <link
1732      rel="preload"
1733      as="font"
1734      crossorigin="anonymous"
1735      href="/assets/recursive-latin-full-normal-Bbk0y8ID.woff2"
1736    />
1737  </head>
1738  <body>
1739    <div id="app" data-server-rendered="true">
1740      <div
1741        data-surface="editorial"
1742        class="min-h-screen flex flex-col bg-surface text-ink"
1743      >
1744        <!--[-->
1745        <header
1746          class="sticky top-0 z-40 w-full transition-all duration-[var(--dur-base)] ease-out bg-transparent border-b border-transparent"
1747        >
1748          <div
1749            class="mx-auto max-w-7xl px-6 md:px-8 flex items-center justify-between h-16"
1750          >
1751            <a
1752              aria-current="page"
1753              href="/"
1754              class="router-link-active router-link-exact-active group inline-flex items-baseline gap-2"
1755              ><span
1756                class="font-sans text-xl font-extrabold tracking-[-0.04em] leading-none text-ink"
1757              >
1758                workflows<span class="text-accent">.</span>diy </span
1759              ><span
1760                class="hidden sm:inline text-[11px] font-semibold text-ink-faint pb-[1px]"
1761              >
1762                AI implementation
1763              </span></a
1764            >
1765            <nav class="hidden lg:flex items-center gap-1 font-sans text-sm">
1766              <!--[--><a
1767                href="/ai-for-ceos"
1768                class="px-3 py-2 rounded-sm text-ink-muted hover:text-ink hover:bg-surface-elev transition-colors"
1769                >For Leaders</a
1770              ><a
1771                href="/n8n-workflow-repository"
1772                class="px-3 py-2 rounded-sm text-ink-muted hover:text-ink hover:bg-surface-elev transition-colors"
1773                >For Builders</a
1774              ><a
1775                href="/ai-first-philosophy"
1776                class="px-3 py-2 rounded-sm text-ink-muted hover:text-ink hover:bg-surface-elev transition-colors"
1777                >Philosophy</a
1778              ><a
1779                href="/blog"
1780                class="px-3 py-2 rounded-sm text-ink-muted hover:text-ink hover:bg-surface-elev transition-colors"
1781                >Writing</a
1782              ><!--]--><span
1783                class="w-px h-5 bg-rule mx-2"
1784                aria-hidden="true"
1785              ></span
1786              ><a
1787                aria-current="page"
1788                href="/#contact"
1789                class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-9 px-4 text-sm rounded-md bg-accent border border-accent text-[color:var(--accent-ink)] hover:bg-accent-700 hover:border-accent-700 active:translate-y-[1px]"
1790                data-v-ef5ce0b1
1791                ><!--[--><!--]--><span class="app-button__label" data-v-ef5ce0b1
1792                  ><!--[-->Book a call<!--]--></span
1793                ><span
1794                  aria-hidden="true"
1795                  class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
1796                  data-v-ef5ce0b1
1797                  >→</span
1798                ><!--[--><!--]--></a
1799              >
1800            </nav>
1801            <button
1802              class="lg:hidden inline-flex items-center justify-center w-10 h-10 rounded-md text-ink hover:bg-surface-elev transition-colors"
1803              aria-expanded="false"
1804              aria-controls="mobile-menu-drawer"
1805              aria-label="Open menu"
1806            >
1807              <svg
1808                xmlns="http://www.w3.org/2000/svg"
1809                fill="none"
1810                viewBox="0 0 24 24"
1811                stroke-width="1.5"
1812                stroke="currentColor"
1813                class="w-6 h-6"
1814              >
1815                <path
1816                  stroke-linecap="round"
1817                  stroke-linejoin="round"
1818                  d="M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5"
1819                />
1820              </svg>
1821            </button>
1822          </div>
1823        </header>
1824        <!----><!--]-->
1825        <main class="flex-grow">
1826          <div data-surface="editorial" class="bg-surface text-ink">
1827            <section class="relative">
1828              <div
1829                class="mx-auto max-w-6xl px-6 md:px-8 pt-20 md:pt-28 pb-16 md:pb-20"
1830              >
1831                <p
1832                  class="text-[11px] font-mono uppercase tracking-[0.22em] text-ink-faint mb-8 inline-flex items-center gap-2"
1833                >
1834                  <span class="inline-block w-5 h-px bg-accent"></span> 1:1 AI
1835                  implementation consulting
1836                </p>
1837                <h1
1838                  class="font-display text-ink leading-[0.98]"
1839                  style="
1840                    font-weight: 400;
1841                    font-size: var(--text-5xl);
1842                    letter-spacing: -0.02em;
1843                  "
1844                >
1845                  Ship one AI workflow
1846                  <span
1847                    class="italic"
1848                    style="
1849                      font-family: var(--font-serif);
1850                      font-feature-settings: &quot;ss01&quot;;
1851                    "
1852                    >your team can own.</span
1853                  >
1854                </h1>
1855                <p
1856                  class="mt-8 text-lg md:text-xl text-ink-muted max-w-2xl leading-relaxed"
1857                >
1858                  Work with me 1:1 to map a business process, ship working
1859                  software in your stack, and add evals and cost controls before
1860                  rollout.
1861                </p>
1862                <div class="mt-10 flex flex-wrap items-center gap-4">
1863                  <a
1864                    aria-current="page"
1865                    href="/#contact"
1866                    class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-14 px-8 text-lg rounded-md bg-accent border border-accent text-[color:var(--accent-ink)] hover:bg-accent-700 hover:border-accent-700 active:translate-y-[1px]"
1867                    data-v-ef5ce0b1
1868                    ><!--[--><!--]--><span
1869                      class="app-button__label"
1870                      data-v-ef5ce0b1
1871                      ><!--[-->Tell me what needs to ship<!--]--></span
1872                    ><span
1873                      aria-hidden="true"
1874                      class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
1875                      data-v-ef5ce0b1
1876                      >→</span
1877                    ><!--[--><!--]--></a
1878                  ><a
1879                    aria-current="page"
1880                    href="/#pricing"
1881                    class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-14 px-8 text-lg rounded-md bg-surface-elev border border-rule text-ink hover:border-accent hover:text-accent"
1882                    data-v-ef5ce0b1
1883                    ><!--[--><!--]--><span
1884                      class="app-button__label"
1885                      data-v-ef5ce0b1
1886                      ><!--[-->See prices and scope<!--]--></span
1887                    ><span
1888                      aria-hidden="true"
1889                      class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
1890                      data-v-ef5ce0b1
1891                      >→</span
1892                    ><!--[--><!--]--></a
1893                  >
1894                </div>
1895                <div
1896                  class="mt-16 md:mt-24 grid grid-cols-2 md:grid-cols-4 gap-6 md:gap-8 pt-10 border-t border-rule"
1897                >
1898                  <div>
1899                    <p
1900                      class="font-display text-ink leading-none"
1901                      style="font-weight: 500; font-size: var(--text-3xl)"
1902                    >
1903                      10+
1904                    </p>
1905                    <p
1906                      class="mt-2 text-xs font-mono uppercase tracking-[0.16em] text-ink-faint"
1907                    >
1908                      Years shipping software
1909                    </p>
1910                  </div>
1911                  <div>
1912                    <p
1913                      class="font-display text-ink leading-none"
1914                      style="font-weight: 500; font-size: var(--text-3xl)"
1915                    >
1916                      3+ yr
1917                    </p>
1918                    <p
1919                      class="mt-2 text-xs font-mono uppercase tracking-[0.16em] text-ink-faint"
1920                    >
1921                      AI-exclusive workflow
1922                    </p>
1923                  </div>
1924                  <div>
1925                    <p
1926                      class="font-display text-ink leading-none"
1927                      style="font-weight: 500; font-size: var(--text-3xl)"
1928                    >
1929                      33
1930                    </p>
1931                    <p
1932                      class="mt-2 text-xs font-mono uppercase tracking-[0.16em] text-ink-faint"
1933                    >
1934                      Public n8n templates
1935                    </p>
1936                  </div>
1937                  <div>
1938                    <p
1939                      class="font-display text-ink leading-none"
1940                      style="font-weight: 500; font-size: var(--text-3xl)"
1941                    >
1942                      100%
1943                    </p>
1944                    <p
1945                      class="mt-2 text-xs font-mono uppercase tracking-[0.16em] text-ink-faint"
1946                    >
1947                      Money-back guarantee
1948                    </p>
1949                  </div>
1950                </div>
1951              </div>
1952            </section>
1953            <section
1954              id="fork"
1955              class="relative w-full bg-surface-sunken py-20 md:py-32"
1956            >
1957              <div class="mx-auto px-6 md:px-8 max-w-7xl">
1958                <header class="mb-10 md:mb-14 max-w-3xl">
1959                  <p
1960                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
1961                  >
1962                    Choose your path
1963                  </p>
1964                  <h2
1965                    class="font-display text-ink leading-[1.05] text-[var(--text-4xl)]"
1966                    style="font-weight: var(--display-weight)"
1967                  >
1968                    <!--[-->Start with the work you own.<!--]-->
1969                  </h2>
1970                  <p class="mt-5 text-lg text-ink-muted leading-relaxed">
1971                    Leaders need a roadmap and accountable delivery. Builders
1972                    need templates, implementation patterns, and a second set of
1973                    technical eyes.
1974                  </p>
1975                </header>
1976                <!--[-->
1977                <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mt-12">
1978                  <a
1979                    href="/ai-for-ceos"
1980                    class="group relative block p-8 md:p-10 rounded-lg bg-surface-elev border border-rule transition-colors duration-[var(--dur-base)] ease-out hover:border-accent"
1981                    ><p
1982                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
1983                    >
1984                      For leaders
1985                    </p>
1986                    <h3
1987                      class="mt-3 font-display text-ink leading-tight"
1988                      style="font-weight: 400; font-size: var(--text-3xl)"
1989                    >
1990                      I'm deploying AI
1991                      <em class="italic" style="font-family: var(--font-serif)"
1992                        >across my organization.</em
1993                      >
1994                    </h3>
1995                    <p class="mt-4 text-ink-muted leading-relaxed">
1996                      You own the budget and the outcome. You need a prioritized
1997                      roadmap, production criteria, and a team that can keep
1998                      shipping after the engagement.
1999                    </p>
2000                    <ul class="mt-6 space-y-2 text-sm text-ink-muted">
2001                      <li class="flex items-start gap-2">
2002                        <span class="text-accent mt-1">·</span>Fractional CAIO +
2003                        strategy for the board
2004                      </li>
2005                      <li class="flex items-start gap-2">
2006                        <span class="text-accent mt-1">·</span>The DRIVE AI
2007                        operations framework
2008                      </li>
2009                      <li class="flex items-start gap-2">
2010                        <span class="text-accent mt-1">·</span>Agent strategy,
2011                        model portfolio, cost governance
2012                      </li>
2013                    </ul>
2014                    <p
2015                      class="mt-8 inline-flex items-center gap-2 text-accent font-medium"
2016                    >
2017                      Enter the leaders path
2018                      <span
2019                        class="transition-transform group-hover:translate-x-1"
2020                        >→</span
2021                      >
2022                    </p></a
2023                  ><a
2024                    href="/n8n-workflow-repository"
2025                    class="group relative block p-8 md:p-10 rounded-lg bg-surface-elev border border-rule transition-colors duration-[var(--dur-base)] ease-out hover:border-accent"
2026                    ><p
2027                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2028                    >
2029                      For builders
2030                    </p>
2031                    <h3
2032                      class="mt-3 font-display text-ink leading-tight"
2033                      style="font-weight: 400; font-size: var(--text-3xl)"
2034                    >
2035                      I'm building with AI
2036                      <em class="italic" style="font-family: var(--font-serif)"
2037                        >myself.</em
2038                      >
2039                    </h3>
2040                    <p class="mt-4 text-ink-muted leading-relaxed">
2041                      You write code or ship workflows. You want public n8n
2042                      templates, AI-first implementation patterns, and practical
2043                      help with the work in front of you.
2044                    </p>
2045                    <ul class="mt-6 space-y-2 text-sm text-ink-muted">
2046                      <li class="flex items-start gap-2">
2047                        <span class="text-accent mt-1">›</span>33 public n8n
2048                        workflow templates
2049                      </li>
2050                      <li class="flex items-start gap-2">
2051                        <span class="text-accent mt-1">›</span>Context
2052                        engineering &amp; agentic patterns
2053                      </li>
2054                      <li class="flex items-start gap-2">
2055                        <span class="text-accent mt-1">›</span>MCP integrations
2056                        + workflow JSON for LLM analysis
2057                      </li>
2058                    </ul>
2059                    <p
2060                      class="mt-8 inline-flex items-center gap-2 text-accent font-medium"
2061                    >
2062                      Enter the builders path
2063                      <span
2064                        class="transition-transform group-hover:translate-x-1"
2065                        >→</span
2066                      >
2067                    </p></a
2068                  >
2069                </div>
2070                <p class="mt-8 text-sm text-ink-faint text-center font-mono">
2071                  Not sure which fits? The pricing and contact sections apply to
2072                  both.
2073                </p>
2074                <!--]-->
2075              </div>
2076            </section>
2077            <section
2078              id="about"
2079              class="relative w-full bg-surface py-20 md:py-32"
2080            >
2081              <div class="mx-auto px-6 md:px-8 max-w-5xl">
2082                <header class="mb-10 md:mb-14 max-w-3xl">
2083                  <p
2084                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
2085                  >
2086                    About
2087                  </p>
2088                  <!----><!---->
2089                </header>
2090                <!--[-->
2091                <div
2092                  class="grid grid-cols-1 md:grid-cols-12 gap-8 md:gap-12 items-start"
2093                >
2094                  <div class="md:col-span-3">
2095                    <div
2096                      class="relative overflow-hidden rounded-lg border border-rule shadow-card w-40 md:w-full md:max-w-[180px]"
2097                    >
2098                      <img
2099                        src="/assets/cory-COctTDOA.jpg"
2100                        alt="Cory LePage, workflows.diy"
2101                        class="w-full h-auto object-cover"
2102                      />
2103                    </div>
2104                    <p class="mt-4 text-sm font-mono text-ink-faint">
2105                      Cory LePage, founder of workflows.diy
2106                    </p>
2107                  </div>
2108                  <div class="md:col-span-9">
2109                    <h2
2110                      class="font-display text-ink leading-[1.05]"
2111                      style="font-weight: 400; font-size: var(--text-4xl)"
2112                    >
2113                      I don't consult
2114                      <em class="italic" style="font-family: var(--font-serif)"
2115                        >about</em
2116                      >
2117                      AI. I ship
2118                      <em class="italic" style="font-family: var(--font-serif)"
2119                        >with</em
2120                      >
2121                      it.
2122                    </h2>
2123                    <div
2124                      class="mt-8 space-y-5 text-lg text-ink leading-relaxed max-w-2xl"
2125                    >
2126                      <p>
2127                        I'm an AI-First software developer. For more than three
2128                        years, every line of production code I touch has been
2129                        written in collaboration with AI coding agents,
2130                        including Claude Code and Cursor.
2131                      </p>
2132                      <p class="text-ink-muted">
2133                        Before that, I spent ten years building across the
2134                        stack. That background helps me catch incorrect
2135                        assumptions, bad patterns, and regressions in
2136                        AI-generated code.
2137                      </p>
2138                      <p class="text-ink-muted">
2139                        The deliverable is working software in your stack with
2140                        evals, cost controls, and a path to production. A
2141                        roadmap or workshop only matters when it helps that
2142                        software ship.
2143                      </p>
2144                    </div>
2145                  </div>
2146                </div>
2147                <!--]-->
2148              </div>
2149            </section>
2150            <section
2151              id="services"
2152              class="relative w-full bg-surface-sunken py-20 md:py-32"
2153            >
2154              <div class="mx-auto px-6 md:px-8 max-w-5xl">
2155                <header class="mb-10 md:mb-14 max-w-3xl">
2156                  <p
2157                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
2158                  >
2159                    What you get
2160                  </p>
2161                  <h2
2162                    class="font-display text-ink leading-[1.05] text-[var(--text-4xl)]"
2163                    style="font-weight: var(--display-weight)"
2164                  >
2165                    <!--[-->Two ways to work together.<!--]-->
2166                  </h2>
2167                  <p class="mt-5 text-lg text-ink-muted leading-relaxed">
2168                    Short-loop chat for the questions you hit daily. Scheduled
2169                    calls for the decisions that need a whiteboard.
2170                  </p>
2171                </header>
2172                <!--[-->
2173                <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mt-10">
2174                  <div
2175                    class="block relative transition-all duration-[var(--dur-base)] ease-out bg-surface-elev border border-rule rounded-lg p-6 md:p-8"
2176                  >
2177                    <!--[-->
2178                    <p
2179                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2180                    >
2181                      Service 01
2182                    </p>
2183                    <h3
2184                      class="mt-3 font-display text-ink"
2185                      style="font-weight: 500; font-size: var(--text-2xl)"
2186                    >
2187                      Chat access
2188                    </h3>
2189                    <p class="mt-4 text-ink-muted leading-relaxed">
2190                      Message me on Telegram when you are stuck on code,
2191                      prompts, architecture, or sequencing. Use the thread to
2192                      keep daily decisions moving between calls.
2193                    </p>
2194                    <ul class="mt-6 space-y-2 text-sm text-ink-muted">
2195                      <li class="flex items-start gap-2">
2196                        <span class="text-accent mt-1">·</span>Same-timezone
2197                        response
2198                      </li>
2199                      <li class="flex items-start gap-2">
2200                        <span class="text-accent mt-1">·</span>Code, prompts,
2201                        architecture
2202                      </li>
2203                      <li class="flex items-start gap-2">
2204                        <span class="text-accent mt-1">·</span>No ticket queue
2205                      </li>
2206                    </ul>
2207                    <!--]-->
2208                  </div>
2209                  <div
2210                    class="block relative transition-all duration-[var(--dur-base)] ease-out bg-surface-elev border border-rule rounded-lg p-6 md:p-8"
2211                  >
2212                    <!--[-->
2213                    <p
2214                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2215                    >
2216                      Service 02
2217                    </p>
2218                    <h3
2219                      class="mt-3 font-display text-ink"
2220                      style="font-weight: 500; font-size: var(--text-2xl)"
2221                    >
2222                      One-to-one coaching calls
2223                    </h3>
2224                    <p class="mt-4 text-ink-muted leading-relaxed">
2225                      Three or four 60-minute calls per month for strategy,
2226                      sequencing, technical review, and decisions about what to
2227                      stop doing.
2228                    </p>
2229                    <ul class="mt-6 space-y-2 text-sm text-ink-muted">
2230                      <li class="flex items-start gap-2">
2231                        <span class="text-accent mt-1">·</span>60-min working
2232                        sessions
2233                      </li>
2234                      <li class="flex items-start gap-2">
2235                        <span class="text-accent mt-1">·</span>Roadmap &amp;
2236                        sequencing
2237                      </li>
2238                      <li class="flex items-start gap-2">
2239                        <span class="text-accent mt-1">·</span>Team coaching on
2240                        request
2241                      </li>
2242                    </ul>
2243                    <!--]-->
2244                  </div>
2245                </div>
2246                <div
2247                  class="mt-16 p-8 md:p-10 rounded-lg bg-surface border border-rule"
2248                >
2249                  <div class="flex items-start justify-between gap-6 flex-wrap">
2250                    <div>
2251                      <p
2252                        class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2253                      >
2254                        The method
2255                      </p>
2256                      <h3
2257                        class="mt-3 font-display text-ink"
2258                        style="font-weight: 400; font-size: var(--text-3xl)"
2259                      >
2260                        The DRIVE implementation framework
2261                      </h3>
2262                    </div>
2263                    <a
2264                      href="/ai-operations"
2265                      class="app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-11 px-6 text-base rounded-md app-button--link !h-auto !px-0 !rounded-none text-accent hover:text-[color:var(--accent-700)]"
2266                      data-v-ef5ce0b1
2267                      ><!--[--><!--]--><span
2268                        class="app-button__label"
2269                        data-v-ef5ce0b1
2270                        ><!--[-->Full breakdown<!--]--></span
2271                      ><span
2272                        aria-hidden="true"
2273                        class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
2274                        data-v-ef5ce0b1
2275                        >→</span
2276                      ><!--[--><!--]--></a
2277                    >
2278                  </div>
2279                  <div
2280                    class="mt-8 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-5 ga
2280p-4"
2281                  >
2282                    <div class="border-l-2 border-rule pl-4">
2283                      <p
2284                        class="font-display text-accent leading-none"
2285                        style="font-weight: 500; font-size: 2rem"
2286                      >
2287                        D
2288                      </p>
2289                      <p class="mt-2 font-medium text-ink">Define</p>
2290                      <p class="mt-1 text-sm text-ink-muted leading-relaxed">
2291                        Strategic goals &amp; current processes.
2292                      </p>
2293                    </div>
2294                    <div class="border-l-2 border-rule pl-4">
2295                      <p
2296                        class="font-display text-accent leading-none"
2297                        style="font-weight: 500; font-size: 2rem"
2298                      >
2299                        R
2300                      </p>
2301                      <p class="mt-2 font-medium text-ink">Roadmap</p>
2302                      <p class="mt-1 text-sm text-ink-muted leading-relaxed">
2303                        Select one measurable first release.
2304                      </p>
2305                    </div>
2306                    <div class="border-l-2 border-rule pl-4">
2307                      <p
2308                        class="font-display text-accent leading-none"
2309                        style="font-weight: 500; font-size: 2rem"
2310                      >
2311                        I
2312                      </p>
2313                      <p class="mt-2 font-medium text-ink">Implement</p>
2314                      <p class="mt-1 text-sm text-ink-muted leading-relaxed">
2315                        Ship with AI-assisted development.
2316                      </p>
2317                    </div>
2318                    <div class="border-l-2 border-rule pl-4">
2319                      <p
2320                        class="font-display text-accent leading-none"
2321                        style="font-weight: 500; font-size: 2rem"
2322                      >
2323                        V
2324                      </p>
2325                      <p class="mt-2 font-medium text-ink">Validate</p>
2326                      <p class="mt-1 text-sm text-ink-muted leading-relaxed">
2327                        Run evals and measure the result.
2328                      </p>
2329                    </div>
2330                    <div class="border-l-2 border-rule pl-4">
2331                      <p
2332                        class="font-display text-accent leading-none"
2333                        style="font-weight: 500; font-size: 2rem"
2334                      >
2335                        E
2336                      </p>
2337                      <p class="mt-2 font-medium text-ink">Evolve</p>
2338                      <p class="mt-1 text-sm text-ink-muted leading-relaxed">
2339                        Roll out, monitor, and revise.
2340                      </p>
2341                    </div>
2342                  </div>
2343                </div>
2344                <!--]-->
2345              </div>
2346            </section>
2347            <section
2348              id="pricing"
2349              class="relative w-full bg-surface py-20 md:py-32"
2350            >
2351              <div class="mx-auto px-6 md:px-8 max-w-7xl">
2352                <header class="mb-10 md:mb-14 text-center mx-auto max-w-3xl">
2353                  <p
2354                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
2355                  >
2356                    Pricing
2357                  </p>
2358                  <h2
2359                    class="font-display text-ink leading-[1.05] text-[var(--text-4xl)]"
2360                    style="font-weight: var(--display-weight)"
2361                  >
2362                    <!--[-->Three ways to start.<!--]-->
2363                  </h2>
2364                  <p class="mt-5 text-lg text-ink-muted leading-relaxed">
2365                    Plain numbers. No discovery-call tax before you see them.
2366                  </p>
2367                </header>
2368                <!--[-->
2369                <div class="grid grid-cols-1 md:grid-cols-3 gap-6 mt-14">
2370                  <div
2371                    class="relative flex flex-col p-8 md:p-10 rounded-lg transition-all duration-[var(--dur-base)] ease-out bg-surface-elev border border-rule hover:border-ink-faint"
2372                  >
2373                    <p
2374                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2375                    >
2376                      Try it
2377                    </p>
2378                    <h3
2379                      class="mt-4 font-display text-ink"
2380                      style="font-weight: 500; font-size: var(--text-2xl)"
2381                    >
2382                      One-off call
2383                    </h3>
2384                    <div
2385                      class="mt-4 flex flex-wrap items-baseline gap-x-2 gap-y-1"
2386                    >
2387                      <span
2388                        class="font-display text-ink"
2389                        style="
2390                          font-weight: 400;
2391                          font-size: var(--text-4xl);
2392                          letter-spacing: -0.01em;
2393                        "
2394                        >$350</span
2395                      ><span class="text-sm font-mono text-ink-faint"
2396                        >USD · one time</span
2397                      >
2398                    </div>
2399                    <ul class="mt-8 space-y-3 flex-grow">
2400                      <li class="flex items-start gap-3 text-ink-muted">
2401                        <span
2402                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2403                          aria-hidden="true"
2404                        ></span
2405                        ><span>1-hour working session</span>
2406                      </li>
2407                      <li class="flex items-start gap-3 text-ink-muted">
2408                        <span
2409                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2410                          aria-hidden="true"
2411                        ></span
2412                        ><span>Personalized to your specific situation</span>
2413                      </li>
2414                      <li class="flex items-start gap-3 text-ink-muted">
2415                        <span
2416                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2417                          aria-hidden="true"
2418                        ></span
2419                        ><span
2420                          >For a single stuck decision or direction check</span
2421                        >
2422                      </li>
2423                      <li class="flex items-start gap-3 text-ink-muted">
2424                        <span
2425                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2426                          aria-hidden="true"
2427                        ></span
2428                        ><span>No commitment</span>
2429                      </li>
2430                      <li class="flex items-start gap-3 text-ink-muted">
2431                        <span
2432                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2433                          aria-hidden="true"
2434                        ></span
2435                        ><span>100% refund if not worth it</span>
2436                      </li>
2437                    </ul>
2438                    <div class="mt-10">
2439                      <a
2440                        aria-current="page"
2441                        href="/#contact"
2442                        class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-11 px-6 text-base rounded-md bg-surface-elev border border-rule text-ink hover:border-accent hover:text-accent w-full"
2443                        data-v-ef5ce0b1
2444                        ><!--[--><!--]--><span
2445                          class="app-button__label"
2446                          data-v-ef5ce0b1
2447                          ><!--[-->Contact me<!--]--></span
2448                        ><span
2449                          aria-hidden="true"
2450                          class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
2451                          data-v-ef5ce0b1
2452                          >→</span
2453                        ><!--[--><!--]--></a
2454                      >
2455                    </div>
2456                  </div>
2457                  <div
2458                    class="relative flex flex-col p-8 md:p-10 rounded-lg transition-all duration-[var(--dur-base)] ease-out bg-surface-elev border-2 border-ink shadow-lift -mt-4 md:-mt-6"
2459                  >
2460                    <p
2461                      class="absolute -top-3 left-8 px-3 py-1 rounded-pill bg-ink text-[color:var(--bg)] text-[10px] font-mono uppercase tracking-[0.22em]"
2462                    >
2463                      Standard
2464                    </p>
2465                    <h3
2466                      class="mt-4 font-display text-ink"
2467                      style="font-weight: 500; font-size: var(--text-2xl)"
2468                    >
2469                      Monthly coaching
2470                    </h3>
2471                    <div
2472                      class="mt-4 flex flex-wrap items-baseline gap-x-2 gap-y-1"
2473                    >
2474                      <span
2475                        class="font-display text-ink"
2476                        style="
2477                          font-weight: 400;
2478                          font-size: var(--text-4xl);
2479                          letter-spacing: -0.01em;
2480                        "
2481                        >$6,000</span
2482                      ><span class="text-sm font-mono text-ink-faint"
2483                        >USD / month</span
2484                      >
2485                    </div>
2486                    <ul class="mt-8 space-y-3 flex-grow">
2487                      <li class="flex items-start gap-3 text-ink-muted">
2488                        <span
2489                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2490                          aria-hidden="true"
2491                        ></span
2492                        ><span>4 standing calls per month</span>
2493                      </li>
2494                      <li class="flex items-start gap-3 text-ink-muted">
2495                        <span
2496                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2497                          aria-hidden="true"
2498                        ></span
2499                        ><span>Unlimited chat access on Telegram</span>
2500                      </li>
2501                      <li class="flex items-start gap-3 text-ink-muted">
2502                        <span
2503                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2504                          aria-hidden="true"
2505                        ></span
2506                        ><span>Strategic + technical 1:1</span>
2507                      </li>
2508                      <li class="flex items-start gap-3 text-ink-muted">
2509                        <span
2510                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2511                          aria-hidden="true"
2512                        ></span
2513                        ><span>Month-to-month, cancel anytime</span>
2514                      </li>
2515                      <li class="flex items-start gap-3 text-ink-muted">
2516                        <span
2517                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2518                          aria-hidden="true"
2519                        ></span
2520                        ><span>100% refund if not worth it</span>
2521                      </li>
2522                    </ul>
2523                    <div class="mt-10">
2524                      <a
2525                        aria-current="page"
2526                        href="/#contact"
2527                        class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-11 px-6 text-base rounded-md bg-accent border border-accent text-[color:var(--accent-ink)] hover:bg-accent-700 hover:border-accent-700 active:translate-y-[1px] w-full"
2528                        data-v-ef5ce0b1
2529                        ><!--[--><!--]--><span
2530                          class="app-button__label"
2531                          data-v-ef5ce0b1
2532                          ><!--[-->Join the waitlist<!--]--></span
2533                        ><span
2534                          aria-hidden="true"
2535                          class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
2536                          data-v-ef5ce0b1
2537                          >→</span
2538                        ><!--[--><!--]--></a
2539                      >
2540                    </div>
2541                  </div>
2542                  <div
2543                    class="relative flex flex-col p-8 md:p-10 rounded-lg transition-all duration-[var(--dur-base)] ease-out bg-surface-elev border border-rule hover:border-ink-faint"
2544                  >
2545                    <p
2546                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2547                    >
2548                      High-touch
2549                    </p>
2550                    <h3
2551                      class="mt-4 font-display text-ink"
2552                      style="font-weight: 500; font-size: var(--text-2xl)"
2553                    >
2554                      Premium coaching
2555                    </h3>
2556                    <div
2557                      class="mt-4 flex flex-wrap items-baseline gap-x-2 gap-y-1"
2558                    >
2559                      <span
2560                        class="font-display text-ink"
2561                        style="
2562                          font-weight: 400;
2563                          font-size: var(--text-4xl);
2564                          letter-spacing: -0.01em;
2565                        "
2566                        >$18,000</span
2567                      ><span class="text-sm font-mono text-ink-faint"
2568                        >USD / month</span
2569                      >
2570                    </div>
2571                    <ul class="mt-8 space-y-3 flex-grow">
2572                      <li class="flex items-start gap-3 text-ink-muted">
2573                        <span
2574                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2575                          aria-hidden="true"
2576                        ></span
2577                        ><span>Daily chat plus weekly calls</span>
2578                      </li>
2579                      <li class="flex items-start gap-3 text-ink-muted">
2580                        <span
2581                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2582                          aria-hidden="true"
2583                        ></span
2584                        ><span>Team coaching included</span>
2585                      </li>
2586                      <li class="flex items-start gap-3 text-ink-muted">
2587                        <span
2588                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2589                          aria-hidden="true"
2590                        ></span
2591                        ><span>Hands-on implementation support</span>
2592                      </li>
2593                      <li class="flex items-start gap-3 text-ink-muted">
2594                        <span
2595                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2596                          aria-hidden="true"
2597                        ></span
2598                        ><span>Prioritized chat response</span>
2599                      </li>
2600                      <li class="flex items-start gap-3 text-ink-muted">
2601                        <span
2602                          class="text-accent mt-[7px] w-2 h-px bg-accent shrink-0"
2603                          aria-hidden="true"
2604                        ></span
2605                        ><span>100% refund if not worth it</span>
2606                      </li>
2607                    </ul>
2608                    <div class="mt-10">
2609                      <a
2610                        aria-current="page"
2611                        href="/#contact"
2612                        class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-11 px-6 text-base rounded-md bg-surface-elev border border-rule text-ink hover:border-accent hover:text-accent w-full"
2613                        data-v-ef5ce0b1
2614                        ><!--[--><!--]--><span
2615                          class="app-button__label"
2616                          data-v-ef5ce0b1
2617                          ><!--[-->Join the waitlist<!--]--></span
2618                        ><span
2619                          aria-hidden="true"
2620                          class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
2621                          data-v-ef5ce0b1
2622                          >→</span
2623                        ><!--[--><!--]--></a
2624                      >
2625                    </div>
2626                  </div>
2627                </div>
2628                <p class="mt-10 text-center text-sm text-ink-faint font-mono">
2629                  Every tier has the same promise. If the work is not worth the
2630                  price, tell me and I will refund 100%.
2631                </p>
2632                <!--]-->
2633              </div>
2634            </section>
2635            <section
2636              id="faq"
2637              class="relative w-full bg-surface-sunken py-20 md:py-32"
2638            >
2639              <div class="mx-auto px-6 md:px-8 max-w-5xl">
2640                <header class="mb-10 md:mb-14 max-w-3xl">
2641                  <p
2642                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
2643                  >
2644                    Reality check
2645                  </p>
2646                  <h2
2647                    class="font-display text-ink leading-[1.05] text-[var(--text-4xl)]"
2648                    style="font-weight: var(--display-weight)"
2649                  >
2650                    <!--[-->The honest FAQ.<!--]-->
2651                  </h2>
2652                  <p class="mt-5 text-lg text-ink-muted leading-relaxed">
2653                    Including the question you won't see on other consulting
2654                    sites.
2655                  </p>
2656                </header>
2657                <!--[-->
2658                <div class="grid grid-cols-1 md:grid-cols-12 gap-10 mt-10">
2659                  <aside class="md:col-span-4">
2660                    <p
2661                      class="text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint"
2662                    >
2663                      Should you buy?
2664                    </p>
2665                    <h3
2666                      class="mt-3 font-display text-ink leading-tight"
2667                      style="font-weight: 400; font-size: var(--text-2xl)"
2668                    >
2669                      Probably
2670                      <em class="italic" style="font-family: var(--font-serif)"
2671                        >not.</em
2672                      >
2673                    </h3>
2674                    <div class="mt-5 space-y-4 text-ink-muted leading-relaxed">
2675                      <p>
2676                        Most of what I know is already free. I write it, share
2677                        it, and link it. If you are still defining the problem,
2678                        start there.
2679                      </p>
2680                      <p>
2681                        Buy my time only when you want dedicated 1:1 help with a
2682                        specific problem. This is direct work with me, not a
2683                        course or community.
2684                      </p>
2685                      <p class="text-ink-faint font-mono text-sm">
2686                        If the work is not worth the price, tell me and I will
2687                        refund 100%. Your judgment is the test.
2688                      </p>
2689                    </div>
2690                  </aside>
2691                  <div class="md:col-span-8 space-y-3">
2692                    <!--[-->
2693                    <div
2694                      class="accordion-item rounded-lg border border-rule bg-surface-elev overflow-hidden"
2695                      data-v-ab907870
2696                    >
2697                      <button
2698                        class="w-full flex justify-between items-center gap-6 p-5 md:p-6 text-left font-display text-lg text-ink hover:bg-surface-sunken transition-colors"
2699                        style="font-weight: 500"
2700                        aria-expanded="true"
2701                        aria-controls="accordion-content-0"
2702                        data-v-ab907870
2703                      >
2704                        <span data-v-ab907870>What's the refund policy?</span
2705                        ><svg
2706                          class="rotate-180 w-5 h-5 text-ink-muted transform transition-transform duration-[var(--dur-base)]"
2707                          fill="none"
2708                          stroke="currentColor"
2709                          viewBox="0 0 24 24"
2710                          xmlns="http://www.w3.org/2000/svg"
2711                          data-v-ab907870=""
2712                        >
2713                          <path
2714                            stroke-linecap="round"
2715                            stroke-linejoin="round"
2716                            stroke-width="2"
2717                            d="M19 9l-7 7-7-7"
2718                            data-v-ab907870=""
2719                          />
2720                        </svg>
2721                      </button>
2722                      <div
2723                        id="accordion-content-0"
2724                        class="overflow-hidden transition-all duration-[var(--dur-base)] ease-out"
2725                        style="max-height: 0px"
2726                        data-v-ab907870
2727                      >
2728                        <div
2729                          class="px-5 md:px-6 pb-5 md:pb-6 text-ink-muted leading-relaxed border-t border-rule pt-5"
2730                          data-v-ab907870
2731                        >
2732                          <div data-v-ab907870>
2733                            If the work is not worth the price, tell me and I
2734                            will refund 100%. Your judgment is the test.
2735                          </div>
2736                        </div>
2737                      </div>
2738                    </div>
2739                    <div
2740                      class="accordion-item rounded-lg border border-rule bg-surface-elev overflow-hidden"
2741                      data-v-ab907870
2742                    >
2743                      <button
2744                        class="w-full flex justify-between items-center gap-6 p-5 md:p-6 text-left font-display text-lg text-ink hover:bg-surface-sunken transition-colors"
2745                        style="font-weight: 500"
2746                        aria-expanded="false"
2747                        aria-controls="accordion-content-1"
2748                        data-v-ab907870
2749                      >
2750                        <span data-v-ab907870
2751                          >What kind of AI work do you actually help with?</span
2752                        ><svg
2753                          class="w-5 h-5 text-ink-muted transform transition-transform duration-[var(--dur-base)]"
2754                          fill="none"
2755                          stroke="currentColor"
2756                          viewBox="0 0 24 24"
2757                          xmlns="http://www.w3.org/2000/svg"
2758                          data-v-ab907870=""
2759                        >
2760                          <path
2761                            stroke-linecap="round"
2762                            stroke-linejoin="round"
2763                            stroke-width="2"
2764                            d="M19 9l-7 7-7-7"
2765                            data-v-ab907870=""
2766                          />
2767                        </svg>
2768                      </button>
2769                      <div
2770                        id="accordion-content-1"
2771                        class="overflow-hidden transition-all duration-[var(--dur-base)] ease-out"
2772                        style="max-height: 0"
2773                        data-v-ab907870
2774                      >
2775                        <div
2776                          class="px-5 md:px-6 pb-5 md:pb-6 text-ink-muted leading-relaxed border-t border-rule pt-5"
2777                          data-v-ab907870
2778                        >
2779                          <div data-v-ab907870>
2780                            I help map business processes, build n8n workflows
2781                            and agentic systems, connect tools through MCP, and
2782                            add evals and monitoring. Most engagements start
2783                            with one process and one measurable release, then
2784                            iterate from real usage.
2785                          </div>
2786                        </div>
2787                      </div>
2788                    </div>
2789                    <div
2790                      class="accordion-item rounded-lg border border-rule bg-surface-elev overflow-hidden"
2791                      data-v-ab907870
2792                    >
2793                      <button
2794                        class="w-full flex justify-between items-center gap-6 p-5 md:p-6 text-left font-display text-lg text-ink hover:bg-surface-sunken transition-colors"
2795                        style="font-weight: 500"
2796                        aria-expanded="false"
2797                        aria-controls="accordion-content-2"
2798                        data-v-ab907870
2799                      >
2800                        <span data-v-ab907870
2801                          >How do you help with AI strategy?</span
2802                        ><svg
2803                          class="w-5 h-5 text-ink-muted transform transition-transform duration-[var(--dur-base)]"
2804                          fill="none"
2805                          stroke="currentColor"
2806                          viewBox="0 0 24 24"
2807                          xmlns="http://www.w3.org/2000/svg"
2808                          data-v-ab907870=""
2809                        >
2810                          <path
2811                            stroke-linecap="round"
2812                            stroke-linejoin="round"
2813                            stroke-width="2"
2814                            d="M19 9l-7 7-7-7"
2815                            data-v-ab907870=""
2816                          />
2817                        </svg>
2818                      </button>
2819                      <div
2820                        id="accordion-content-2"
2821                        class="overflow-hidden transition-all duration-[var(--dur-base)] ease-out"
2822                        style="max-height: 0"
2823                        data-v-ab907870
2824                      >
2825                        <div
2826                          class="px-5 md:px-6 pb-5 md:pb-6 text-ink-muted leading-relaxed border-t border-rule pt-5"
2827                          data-v-ab907870
2828                        >
2829                          <div data-v-ab907870>
2830                            By refusing to separate strategy from
2831                            implementation, and by pushing on what to kill, not
2832                            just what to build. I build the roadmap against
2833                            what's actually shippable this quarter, not what
2834                            sounds visionary on a deck. Identify high-impact use
2835                            cases, pick the right model and tool portfolio,
2836                            sequence the rollout, and set the cost/eval
2837                            discipline that keeps it honest.
2838                          </div>
2839                        </div>
2840                      </div>
2841                    </div>
2842                    <div
2843                      class="accordion-item rounded-lg border border-rule bg-surface-elev overflow-hidden"
2844                      data-v-ab907870
2845                    >
2846                      <button
2847                        class="w-full flex justify-between items-center gap-6 p-5 md:p-6 text-left font-display text-lg text-ink hover:bg-surface-sunken transition-colors"
2848                        style="font-weight: 500"
2849                        aria-expanded="false"
2850                        aria-controls="accordion-content-3"
2851                        data-v-ab907870
2852                      >
2853                        <span data-v-ab907870
2854                          >Do you build the AI solutions for me?</span
2855                        ><svg
2856                          class="w-5 h-5 text-ink-muted transform transition-transform duration-[var(--dur-base)]"
2857                          fill="none"
2858                          stroke="currentColor"
2859                          viewBox="0 0 24 24"
2860                          xmlns="http://www.w3.org/2000/svg"
2861                          data-v-ab907870=""
2862                        >
2863                          <path
2864                            stroke-linecap="round"
2865                            stroke-linejoin="round"
2866                            stroke-width="2"
2867                            d="M19 9l-7 7-7-7"
2868                            data-v-ab907870=""
2869                          />
2870                        </svg>
2871                      </button>
2872                      <div
2873                        id="accordion-content-3"
2874                        class="overflow-hidden transition-all duration-[var(--dur-base)] ease-out"
2875                        style="max-height: 0"
2876                        data-v-ab907870
2877                      >
2878                        <div
2879                          class="px-5 md:px-6 pb-5 md:pb-6 text-ink-muted leading-relaxed border-t border-rule pt-5"
2880                          data-v-ab907870
2881                        >
2882                          <div data-v-ab907870>
2883                            My primary role is to guide and coach you and your
2884                            team to build and implement AI solutions. I'll pair
2885                            on technical work, but the goal is to leave your
2886                            team with the skills and ownership to keep shipping
2887                            after I'm gone. Dependency isn't the product.
2888                          </div>
2889                        </div>
2890                      </div>
2891                    </div>
2892                    <div
2893                      class="accordion-item rounded-lg border border-rule bg-surface-elev overflow-hidden"
2894                      data-v-ab907870
2895                    >
2896                      <button
2897                        class="w-full flex justify-between items-center gap-6 p-5 md:p-6 text-left font-display text-lg text-ink hover:bg-surface-sunken transition-colors"
2898                        style="font-weight: 500"
2899                        aria-expanded="false"
2900                        aria-controls="accordion-content-4"
2901                        data-v-ab907870
2902                      >
2903                        <span data-v-ab907870>How fast can we start?</span
2904                        ><svg
2905                          class="w-5 h-5 text-ink-muted transform transition-transform duration-[var(--dur-base)]"
2906                          fill="none"
2907                          stroke="currentColor"
2908                          viewBox="0 0 24 24"
2909                          xmlns="http://www.w3.org/2000/svg"
2910                          data-v-ab907870=""
2911                        >
2912                          <path
2913                            stroke-linecap="round"
2914                            stroke-linejoin="round"
2915                            stroke-width="2"
2916                            d="M19 9l-7 7-7-7"
2917                            data-v-ab907870=""
2918                          />
2919                        </svg>
2920                      </button>
2921                      <div
2922                        id="accordion-content-4"
2923                        class="overflow-hidden transition-all duration-[var(--dur-base)] ease-out"
2924                        style="max-height: 0"
2925                        data-v-ab907870
2926                      >
2927                        <div
2928                          class="px-5 md:px-6 pb-5 md:pb-6 text-ink-muted leading-relaxed border-t border-rule pt-5"
2929                          data-v-ab907870
2930                        >
2931                          <div data-v-ab907870>
2932                            One-off calls can usually be scheduled within a
2933                            week. Monthly and premium retainers start with a
2934                            short call to confirm the problem, scope, and fit.
2935                          </div>
2936                        </div>
2937                      </div>
2938                    </div>
2939                    <!--]-->
2940                  </div>
2941                </div>
2942                <!--]-->
2943              </div>
2944            </section>
2945            <section
2946              id="contact"
2947              class="relative w-full bg-surface py-20 md:py-32"
2948            >
2949              <div class="mx-auto px-6 md:px-8 max-w-5xl">
2950                <header class="mb-10 md:mb-14 max-w-3xl">
2951                  <p
2952                    class="text-xs uppercase tracking-[0.18em] text-ink-faint font-mono mb-4"
2953                  >
2954                    Get in touch
2955                  </p>
2956                  <!----><!---->
2957                </header>
2958                <!--[-->
2959                <div class="grid grid-cols-1 md:grid-cols-12 gap-10 md:gap-16">
2960                  <div class="md:col-span-5">
2961                    <h2
2962                      class="font-display text-ink leading-[1.05]"
2963                      style="font-weight: 400; font-size: var(--text-4xl)"
2964                    >
2965                      Tell me what you're trying to
2966                      <em class="italic" style="font-family: var(--font-serif)"
2967                        >actually</em
2968                      >
2969                      build.
2970                    </h2>
2971                    <p class="mt-6 text-lg text-ink-muted leading-relaxed">
2972                      I read every message myself and reply within two business
2973                      days.
2974                    </p>
2975                    <p
2976                      class="mt-6 text-sm text-ink-faint font-mono leading-relaxed"
2977                    >
2978                      The form is the only way to reach me. Keeps the signal
2979                      high, the noise out.
2980                    </p>
2981                  </div>
2982                  <form
2983                    class="md:col-span-7 space-y-5 bg-surface-elev border border-rule rounded-lg p-6 md:p-8"
2984                  >
2985                    <div
2986                      class="absolute -left-[10000px] h-px w-px overflow-hidden"
2987                      aria-hidden="true"
2988                    >
2989                      <label for="company-website">Company website</label
2990                      ><input
2991                        id="company-website"
2992                        value
2993                        name="_gotcha"
2994                        type="text"
2995                        tabindex="-1"
2996                        autocomplete="off"
2997                      />
2998                    </div>
2999                    <div>
3000                      <label
3001                        for="name"
3002                        class="block text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint mb-2"
3003                        >Your name</label
3004                      ><input
3005                        type="text"
3006                        name="name"
3007                        id="name"
3008                        value
3009                        required
3010                        class="w-full px-4 py-3 bg-surface border border-rule text-ink rounded-md outline-none focus:border-accent focus:ring-2 focus:ring-[color:var(--accent)]/20 transition-colors placeholder:text-ink-faint disabled:opacity-50"
3011                        placeholder="Jane Doe"
3012                      />
3013                    </div>
3014                    <div>
3015                      <label
3016                        for="email"
3017                        class="block text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint mb-2"
3018                        >Email</label
3019                      ><input
3020                        type="email"
3021                        name="email"
3022                        id="email"
3023                        value
3024                        required
3025                        class="w-full px-4 py-3 bg-surface border border-rule text-ink rounded-md outline-none focus:border-accent focus:ring-2 focus:ring-[color:var(--accent)]/20 transition-colors placeholder:text-ink-faint disabled:opacity-50"
3026                        placeholder="[email protected]"
3027                      />
3028                    </div>
3029                    <div>
3030                      <label
3031                        for="message"
3032                        class="block text-[10px] font-mono uppercase tracking-[0.22em] text-ink-faint mb-2"
3033                        >Message</label
3034                      ><textarea
3035                        name="message"
3036                        id="message"
3037                        rows="6"
3038                        required
3039                        class="w-full px-4 py-3 bg-surface border border-rule text-ink rounded-md outline-none focus:border-accent focus:ring-2 focus:ring-[color:var(--accent)]/20 transition-colors placeholder:text-ink-faint resize-y disabled:opacity-50"
3040                        placeholder="What are you trying to build? What's in the way?"
3041                      ></textarea>
3042                    </div>
3043                    <div class="pt-2">
3044                      <button
3045                        type="submit"
3046                        class="app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-14 px-8 text-lg rounded-md bg-accent border border-accent text-[color:var(--accent-ink)] hover:bg-accent-700 hover:border-accent-700 active:translate-y-[1px] w-full"
3047                        data-v-ef5ce0b1
3048                      >
3049                        <!--[--><!--]--><span
3050                          class="app-button__label"
3051                          data-v-ef5ce0b1
3052                          ><!--[-->Send<!--]--></span
3053                        ><span
3054                          aria-hidden="true"
3055                          class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
3056                          data-v-ef5ce0b1
3057                          >→</span
3058                        ><!--[--><!--]-->
3059                      </button>
3060                    </div>
3061                    <!---->
3062                  </form>
3063                </div>
3064                <!--]-->
3065              </div>
3066            </section>
3067          </div>
3068        </main>
3069        <footer class="mt-auto bg-surface-sunken border-t border-rule">
3070          <div class="mx-auto max-w-7xl px-6 md:px-8 py-16 md:py-20">
3071            <div class="grid grid-cols-2 md:grid-cols-5 gap-10 md:gap-8">
3072              <div class="col-span-2">
3073                <a
3074                  aria-current="page"
3075                  href="/"
3076                  class="router-link-active router-link-exact-active inline-flex items-baseline gap-2"
3077                  ><span
3078                    class="font-sans text-2xl font-extrabold tracking-[-0.04em] text-ink"
3079                  >
3080                    workflows<span class="text-accent">.</span>diy
3081                  </span></a
3082                >
3083                <p class="mt-4 text-ink-muted max-w-sm leading-relaxed">
3084                  1:1 AI implementation consulting. Build and deploy AI that
3085                  your org actually uses.
3086                </p>
3087                <div class="mt-6 flex items-center gap-3">
3088                  <a
3089                    aria-current="page"
3090                    href="/#contact"
3091                    class="router-link-active router-link-exact-active app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-9 px-4 text-sm rounded-md bg-accent border border-accent text-[color:var(--accent-ink)] hover:bg-accent-700 hover:border-accent-700 active:translate-y-[1px]"
3092                    data-v-ef5ce0b1
3093                    ><!--[--><!--]--><span
3094                      class="app-button__label"
3095                      data-v-ef5ce0b1
3096                      ><!--[-->Book a call<!--]--></span
3097                    ><span
3098                      aria-hidden="true"
3099                      class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
3100                      data-v-ef5ce0b1
3101                      >→</span
3102                    ><!--[--><!--]--></a
3103                  ><a
3104                    href="https://github.com/workflowsdiy/n8n-workflows"
3105                    class="app-button group inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all duration-[var(--dur-base)] ease-out select-none focus-visible:outline-none h-9 px-4 text-sm rounded-md bg-surface-elev border border-rule text-ink hover:border-accent hover:text-accent"
3106                    data-v-ef5ce0b1
3107                    ><!--[--><!--]--><span
3108                      class="app-button__label"
3109                      data-v-ef5ce0b1
3110                      ><!--[-->n8n on GitHub<!--]--></span
3111                    ><span
3112                      aria-hidden="true"
3113                      class="app-button__arrow transition-transform duration-[var(--dur-base)] ease-out group-hover:translate-x-0.5"
3114                      data-v-ef5ce0b1
3115                      >→</span
3116                    ><!--[--><!--]--></a
3117                  >
3118                </div>
3119              </div>
3120              <div>
3121                <p
3122                  class="text-[10px] font-mono uppercase tracking-[0.2em] text-ink-faint mb-4"
3123                >
3124                  For Leaders
3125                </p>
3126                <ul class="space-y-3">
3127                  <li>
3128                    <a
3129                      href="/ai-for-ceos"
3130                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3131                      >AI for CEOs</a
3132                    >
3133                  </li>
3134                  <li>
3135                    <a
3136                      href="/ai-operations"
3137                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3138                      >AI Operations</a
3139                    >
3140                  </li>
3141                  <li>
3142                    <a
3143                      href="/ai-first-philosophy"
3144                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3145                      >AI-First Philosophy</a
3146                    >
3147                  </li>
3148                  <li>
3149                    <a
3150                      aria-current="page"
3151                      href="/#pricing"
3152                      class="router-link-active router-link-exact-active text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3153                      >Services &amp; Pricing</a
3154                    >
3155                  </li>
3156                </ul>
3157              </div>
3158              <div>
3159                <p
3160                  class="text-[10px] font-mono uppercase tracking-[0.2em] text-ink-faint mb-4"
3161                >
3162                  For Builders
3163                </p>
3164                <ul class="space-y-3">
3165                  <li>
3166                    <a
3167                      href="/n8n-workflow-repository"
3168                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3169                      >n8n Workflow Repository</a
3170                    >
3171                  </li>
3172                  <li>
3173                    <a
3174                      href="/n8n-workflows/all"
3175                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3176                      >Featured n8n Workflows</a
3177                    >
3178                  </li>
3179                  <li>
3180                    <a
3181                      href="/n8n-workflows"
3182                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3183                      >Creator Profile</a
3184                    >
3185                  </li>
3186                </ul>
3187              </div>
3188              <div>
3189                <p
3190                  class="text-[10px] font-mono uppercase tracking-[0.2em] text-ink-faint mb-4"
3191                >
3192                  More
3193                </p>
3194                <ul class="space-y-3">
3195                  <li>
3196                    <a
3197                      href="/blog"
3198                      class="text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3199                      >Writing</a
3200                    >
3201                  </li>
3202                  <li>
3203                    <a
3204                      aria-current="page"
3205                      href="/#faq"
3206                      class="router-link-active router-link-exact-active text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3207                      >FAQ</a
3208                    >
3209                  </li>
3210                  <li>
3211                    <a
3212                      aria-current="page"
3213                      href="/#contact"
3214                      class="router-link-active router-link-exact-active text-ink-muted border-b border-transparent hover:text-ink hover:border-current transition-colors"
3215                      >Contact</a
3216                    >
3217                  </li>
3218                </ul>
3219              </div>
3220            </div>
3221            <div class="mt-16 pt-8 border-t border-rule text-sm">
3222              <p class="text-ink-faint font-mono">
3223                © 2026 workflows.diy · made in the open · hand-built, not
3224                templated
3225              </p>
3226            </div>
3227          </div>
3228        </footer>
3229      </div>
3230    </div>
3231
3232    <link rel="stylesheet" crossorigin href="/assets/app-BOXp1MmS.css" /><link
3233      rel="stylesheet"
3234      href="/assets/AccordionItem-CU0z0BtU.css"
3235    />
3236  </body>
3237</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.