@affinda/wc 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (470) hide show
  1. package/dist/affinda/af-card.entry.esm.js.map +1 -1
  2. package/dist/affinda/af-client-carousel.entry.esm.js.map +1 -1
  3. package/dist/affinda/af-divider.entry.esm.js.map +1 -1
  4. package/dist/affinda/af-feature-card.entry.esm.js.map +1 -1
  5. package/dist/affinda/af-grid.entry.esm.js.map +1 -1
  6. package/dist/affinda/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.esm.js.map +1 -1
  7. package/dist/affinda/af-hero.entry.esm.js.map +1 -0
  8. package/dist/affinda/af-illustrated-card.entry.esm.js.map +1 -1
  9. package/dist/affinda/af-in-page-banner.entry.esm.js.map +1 -1
  10. package/dist/affinda/af-inline.entry.esm.js.map +1 -1
  11. package/dist/affinda/af-numbered-stepper-item.entry.esm.js.map +1 -0
  12. package/dist/affinda/af-numbered-stepper.entry.esm.js.map +1 -0
  13. package/dist/affinda/af-section.entry.esm.js.map +1 -1
  14. package/dist/affinda/af-split-section.entry.esm.js.map +1 -1
  15. package/dist/affinda/af-stack.entry.esm.js.map +1 -1
  16. package/dist/affinda/af-stat.entry.esm.js.map +1 -0
  17. package/dist/affinda/af-stats-row.entry.esm.js.map +1 -0
  18. package/dist/affinda/af-theme-override.entry.esm.js.map +1 -1
  19. package/dist/affinda/af-typography-lockup.entry.esm.js.map +1 -1
  20. package/dist/affinda/affinda.esm.js +1 -1
  21. package/dist/affinda/index.esm.js +1 -1
  22. package/dist/affinda/index.esm.js.map +1 -1
  23. package/dist/affinda/{p-4cf65950.entry.js → p-068ac2fb.entry.js} +2 -2
  24. package/dist/affinda/{p-4b154e23.entry.js → p-09dfcd40.entry.js} +2 -2
  25. package/dist/affinda/{p-f10a31cb.entry.js → p-0acadf6f.entry.js} +2 -2
  26. package/dist/affinda/{p-e1e98cd6.entry.js → p-1b4b0c88.entry.js} +2 -2
  27. package/dist/affinda/p-2237e652.entry.js +2 -0
  28. package/dist/affinda/{p-56fe6e6e.entry.js.map → p-2237e652.entry.js.map} +1 -1
  29. package/dist/affinda/p-2526604b.entry.js +2 -0
  30. package/dist/affinda/p-2526604b.entry.js.map +1 -0
  31. package/dist/affinda/{p-8c4e3047.entry.js → p-256970e3.entry.js} +2 -2
  32. package/dist/affinda/p-32d62fbb.entry.js +2 -0
  33. package/dist/affinda/{p-3ee906de.entry.js → p-342b08e5.entry.js} +2 -2
  34. package/dist/affinda/{p-a84ae4a5.entry.js → p-365a75e2.entry.js} +2 -2
  35. package/dist/affinda/p-3ed408f6.entry.js +2 -0
  36. package/dist/affinda/{p-edb1a010.entry.js → p-4058a1eb.entry.js} +2 -2
  37. package/dist/affinda/{p-94f51238.entry.js → p-41bbb218.entry.js} +2 -2
  38. package/dist/affinda/p-436673bb.entry.js +2 -0
  39. package/dist/affinda/p-436673bb.entry.js.map +1 -0
  40. package/dist/affinda/{p-c8c4783c.entry.js → p-44d960ca.entry.js} +2 -2
  41. package/dist/affinda/{p-e1cbe95a.entry.js → p-4a9b192b.entry.js} +2 -2
  42. package/dist/affinda/p-4eeeb8a1.entry.js +2 -0
  43. package/dist/affinda/{p-49521f2e.entry.js.map → p-4eeeb8a1.entry.js.map} +1 -1
  44. package/dist/affinda/{p-b2633acb.entry.js → p-5c163c5b.entry.js} +2 -2
  45. package/dist/affinda/{p-48aadea9.entry.js → p-5e5e7d75.entry.js} +2 -2
  46. package/dist/affinda/{p-da2d84f7.entry.js → p-61a6b43d.entry.js} +2 -2
  47. package/dist/affinda/{p-ea42c40b.entry.js → p-631d141c.entry.js} +2 -2
  48. package/dist/affinda/{p-6038a213.entry.js → p-6475796d.entry.js} +2 -2
  49. package/dist/affinda/p-6756aa66.entry.js +2 -0
  50. package/dist/affinda/p-6e181b2b.entry.js +2 -0
  51. package/dist/affinda/{p-0201c8bd.entry.js → p-6ea474a3.entry.js} +2 -2
  52. package/dist/affinda/{p-a71d528d.entry.js → p-7111051c.entry.js} +2 -2
  53. package/dist/affinda/p-7d3cdda1.entry.js +2 -0
  54. package/dist/affinda/p-7d3cdda1.entry.js.map +1 -0
  55. package/dist/affinda/{p-0137e7a5.entry.js → p-827f3050.entry.js} +2 -2
  56. package/dist/affinda/{p-78518e6c.entry.js → p-83bb96cc.entry.js} +2 -2
  57. package/dist/affinda/p-85cc55bb.entry.js +2 -0
  58. package/dist/affinda/p-85cc55bb.entry.js.map +1 -0
  59. package/dist/affinda/{p-2e6192eb.entry.js → p-9480f00d.entry.js} +2 -2
  60. package/dist/affinda/{p-e055407b.entry.js → p-9ce0adc2.entry.js} +2 -2
  61. package/dist/affinda/{p-81706709.entry.js → p-a02d6192.entry.js} +2 -2
  62. package/dist/affinda/p-a1e80460.entry.js +2 -0
  63. package/dist/affinda/{p-ef5857cf.entry.js.map → p-a1e80460.entry.js.map} +1 -1
  64. package/dist/affinda/{p-ad41f905.entry.js → p-a25d3257.entry.js} +2 -2
  65. package/dist/affinda/{p-50a67fb6.entry.js → p-a7a8f18c.entry.js} +2 -2
  66. package/dist/affinda/{p-5f6a5741.entry.js → p-a8d75eb1.entry.js} +2 -2
  67. package/dist/affinda/{p-5265e82e.entry.js → p-ae430873.entry.js} +2 -2
  68. package/dist/affinda/{p-081cc890.entry.js → p-b39eea31.entry.js} +2 -2
  69. package/dist/affinda/{p-4c4406bf.entry.js → p-b9ec0e75.entry.js} +2 -2
  70. package/dist/affinda/{p-feb3d03f.entry.js → p-bbfc9df6.entry.js} +2 -2
  71. package/dist/affinda/{p-6c58b283.entry.js → p-bed7d9a1.entry.js} +2 -2
  72. package/dist/affinda/{p-3a0e45c3.entry.js → p-d7d82986.entry.js} +2 -2
  73. package/dist/affinda/p-dabd389a.entry.js +2 -0
  74. package/dist/affinda/p-dabd389a.entry.js.map +1 -0
  75. package/dist/affinda/{p-a35029eb.entry.js → p-dcc89b4c.entry.js} +2 -2
  76. package/dist/affinda/{p-6e40dbdf.entry.js → p-de75cb4f.entry.js} +2 -2
  77. package/dist/affinda/{p-f9315f9e.entry.js → p-e07e27f1.entry.js} +2 -2
  78. package/dist/affinda/{p-dbe7ab88.entry.js → p-eeda78ea.entry.js} +2 -2
  79. package/dist/affinda/{p-b2b28366.entry.js → p-f19cb091.entry.js} +2 -2
  80. package/dist/cjs/af-accordion-item.cjs.entry.js +1 -1
  81. package/dist/cjs/af-accordion.cjs.entry.js +1 -1
  82. package/dist/cjs/af-card.cjs.entry.js +1 -1
  83. package/dist/cjs/af-card.entry.cjs.js.map +1 -1
  84. package/dist/cjs/af-center.cjs.entry.js +1 -1
  85. package/dist/cjs/af-client-carousel.cjs.entry.js +1 -1
  86. package/dist/cjs/af-client-carousel.entry.cjs.js.map +1 -1
  87. package/dist/cjs/af-contact-item.cjs.entry.js +1 -1
  88. package/dist/cjs/af-divider.cjs.entry.js +1 -1
  89. package/dist/cjs/af-divider.entry.cjs.js.map +1 -1
  90. package/dist/cjs/af-feature-accordion.cjs.entry.js +2 -2
  91. package/dist/cjs/af-feature-card.entry.cjs.js.map +1 -1
  92. package/dist/cjs/af-feature-grid.cjs.entry.js +1 -1
  93. package/dist/cjs/af-footer-column.cjs.entry.js +1 -1
  94. package/dist/cjs/af-footer-link.cjs.entry.js +1 -1
  95. package/dist/cjs/af-footer.cjs.entry.js +1 -1
  96. package/dist/cjs/af-grid.cjs.entry.js +2 -2
  97. package/dist/cjs/af-grid.entry.cjs.js.map +1 -1
  98. package/dist/cjs/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js.map +1 -1
  99. package/dist/cjs/af-heading_5.cjs.entry.js +1 -1
  100. package/dist/cjs/af-hero.cjs.entry.js +94 -0
  101. package/dist/cjs/af-hero.entry.cjs.js.map +1 -0
  102. package/dist/cjs/af-icon-box.cjs.entry.js +1 -1
  103. package/dist/cjs/af-icon-text.cjs.entry.js +1 -1
  104. package/dist/cjs/af-illustrated-card.cjs.entry.js +1 -1
  105. package/dist/cjs/af-illustrated-card.entry.cjs.js.map +1 -1
  106. package/dist/cjs/af-image.cjs.entry.js +1 -1
  107. package/dist/cjs/af-in-page-banner.cjs.entry.js +1 -1
  108. package/dist/cjs/af-in-page-banner.entry.cjs.js.map +1 -1
  109. package/dist/cjs/af-inline.cjs.entry.js +1 -1
  110. package/dist/cjs/af-inline.entry.cjs.js.map +1 -1
  111. package/dist/cjs/af-logo-well.cjs.entry.js +1 -1
  112. package/dist/cjs/af-nav-accordion-item.cjs.entry.js +2 -2
  113. package/dist/cjs/af-nav-accordion.cjs.entry.js +1 -1
  114. package/dist/cjs/af-nav-menu-nest.cjs.entry.js +1 -1
  115. package/dist/cjs/af-nav-menu.cjs.entry.js +1 -1
  116. package/dist/cjs/af-number-badge.cjs.entry.js +1 -1
  117. package/dist/cjs/af-numbered-stepper-item.cjs.entry.js +25 -0
  118. package/dist/cjs/af-numbered-stepper-item.entry.cjs.js.map +1 -0
  119. package/dist/cjs/af-numbered-stepper.cjs.entry.js +36 -0
  120. package/dist/cjs/af-numbered-stepper.entry.cjs.js.map +1 -0
  121. package/dist/cjs/af-paperclip-decoration.cjs.entry.js +1 -1
  122. package/dist/cjs/af-progress-line.cjs.entry.js +2 -2
  123. package/dist/cjs/af-section.cjs.entry.js +2 -2
  124. package/dist/cjs/af-section.entry.cjs.js.map +1 -1
  125. package/dist/cjs/af-show.cjs.entry.js +1 -1
  126. package/dist/cjs/af-social-link.cjs.entry.js +1 -1
  127. package/dist/cjs/af-spacer.cjs.entry.js +1 -1
  128. package/dist/cjs/af-split-section.cjs.entry.js +2 -2
  129. package/dist/cjs/af-split-section.entry.cjs.js.map +1 -1
  130. package/dist/cjs/af-stack.cjs.entry.js +1 -1
  131. package/dist/cjs/af-stack.entry.cjs.js.map +1 -1
  132. package/dist/cjs/af-stat.cjs.entry.js +18 -0
  133. package/dist/cjs/af-stat.entry.cjs.js.map +1 -0
  134. package/dist/cjs/af-stats-row.cjs.entry.js +18 -0
  135. package/dist/cjs/af-stats-row.entry.cjs.js.map +1 -0
  136. package/dist/cjs/af-stepper-step.cjs.entry.js +1 -1
  137. package/dist/cjs/af-stepper.cjs.entry.js +1 -1
  138. package/dist/cjs/af-testimonial-carousel.cjs.entry.js +1 -1
  139. package/dist/cjs/af-testimonial-stat.cjs.entry.js +1 -1
  140. package/dist/cjs/af-testimonial.cjs.entry.js +2 -2
  141. package/dist/cjs/af-text-image-nest.cjs.entry.js +1 -1
  142. package/dist/cjs/af-theme-override.cjs.entry.js +1 -1
  143. package/dist/cjs/af-theme-override.entry.cjs.js.map +1 -1
  144. package/dist/cjs/af-typography-lockup.cjs.entry.js +1 -1
  145. package/dist/cjs/af-typography-lockup.entry.cjs.js.map +1 -1
  146. package/dist/cjs/af-video-container.cjs.entry.js +1 -1
  147. package/dist/cjs/af-visually-hidden.cjs.entry.js +1 -1
  148. package/dist/cjs/affinda.cjs.js +1 -1
  149. package/dist/cjs/index.cjs.js +2 -0
  150. package/dist/cjs/index.cjs.js.map +1 -1
  151. package/dist/cjs/loader.cjs.js +1 -1
  152. package/dist/collection/collection-manifest.json +5 -0
  153. package/dist/collection/components/af-accordion/af-accordion.js +1 -1
  154. package/dist/collection/components/af-accordion-item/af-accordion-item.js +1 -1
  155. package/dist/collection/components/af-card/af-card.js +9 -3
  156. package/dist/collection/components/af-card/af-card.js.map +1 -1
  157. package/dist/collection/components/af-center/af-center.js +1 -1
  158. package/dist/collection/components/af-client-carousel/af-client-carousel.js +4 -3
  159. package/dist/collection/components/af-client-carousel/af-client-carousel.js.map +1 -1
  160. package/dist/collection/components/af-contact-item/af-contact-item.js +1 -1
  161. package/dist/collection/components/af-divider/af-divider.js +1 -1
  162. package/dist/collection/components/af-divider/af-divider.js.map +1 -1
  163. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +2 -2
  164. package/dist/collection/components/af-feature-card/af-feature-card.js +8 -2
  165. package/dist/collection/components/af-feature-card/af-feature-card.js.map +1 -1
  166. package/dist/collection/components/af-feature-grid/af-feature-grid.js +1 -1
  167. package/dist/collection/components/af-footer/af-footer.js +1 -1
  168. package/dist/collection/components/af-footer-column/af-footer-column.js +1 -1
  169. package/dist/collection/components/af-footer-link/af-footer-link.js +1 -1
  170. package/dist/collection/components/af-grid/af-grid.js +5 -4
  171. package/dist/collection/components/af-grid/af-grid.js.map +1 -1
  172. package/dist/collection/components/af-hero/af-hero.css +282 -0
  173. package/dist/collection/components/af-hero/af-hero.js +314 -0
  174. package/dist/collection/components/af-hero/af-hero.js.map +1 -0
  175. package/dist/collection/components/af-icon-box/af-icon-box.js +1 -1
  176. package/dist/collection/components/af-icon-text/af-icon-text.js +1 -1
  177. package/dist/collection/components/af-illustrated-card/af-illustrated-card.js +9 -3
  178. package/dist/collection/components/af-illustrated-card/af-illustrated-card.js.map +1 -1
  179. package/dist/collection/components/af-image/af-image.js +1 -1
  180. package/dist/collection/components/af-in-page-banner/af-in-page-banner.js +7 -6
  181. package/dist/collection/components/af-in-page-banner/af-in-page-banner.js.map +1 -1
  182. package/dist/collection/components/af-inline/af-inline.js +4 -3
  183. package/dist/collection/components/af-inline/af-inline.js.map +1 -1
  184. package/dist/collection/components/af-logo-well/af-logo-well.js +1 -1
  185. package/dist/collection/components/af-nav-accordion/af-nav-accordion.js +1 -1
  186. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.js +2 -2
  187. package/dist/collection/components/af-nav-menu/af-nav-menu.js +1 -1
  188. package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.js +1 -1
  189. package/dist/collection/components/af-navbar/af-navbar.js +10 -4
  190. package/dist/collection/components/af-navbar/af-navbar.js.map +1 -1
  191. package/dist/collection/components/af-number-badge/af-number-badge.js +1 -1
  192. package/dist/collection/components/af-numbered-stepper/af-numbered-stepper.css +30 -0
  193. package/dist/collection/components/af-numbered-stepper/af-numbered-stepper.js +92 -0
  194. package/dist/collection/components/af-numbered-stepper/af-numbered-stepper.js.map +1 -0
  195. package/dist/collection/components/af-numbered-stepper-item/af-numbered-stepper-item.css +113 -0
  196. package/dist/collection/components/af-numbered-stepper-item/af-numbered-stepper-item.js +66 -0
  197. package/dist/collection/components/af-numbered-stepper-item/af-numbered-stepper-item.js.map +1 -0
  198. package/dist/collection/components/af-paperclip-decoration/af-paperclip-decoration.js +1 -1
  199. package/dist/collection/components/af-progress-line/af-progress-line.js +2 -2
  200. package/dist/collection/components/af-section/af-section.js +18 -6
  201. package/dist/collection/components/af-section/af-section.js.map +1 -1
  202. package/dist/collection/components/af-show/af-show.js +1 -1
  203. package/dist/collection/components/af-social-link/af-social-link.js +1 -1
  204. package/dist/collection/components/af-spacer/af-spacer.js +1 -1
  205. package/dist/collection/components/af-split-section/af-split-section.js +16 -8
  206. package/dist/collection/components/af-split-section/af-split-section.js.map +1 -1
  207. package/dist/collection/components/af-stack/af-stack.js +4 -3
  208. package/dist/collection/components/af-stack/af-stack.js.map +1 -1
  209. package/dist/collection/components/af-stat/af-stat.css +25 -0
  210. package/dist/collection/components/af-stat/af-stat.js +69 -0
  211. package/dist/collection/components/af-stat/af-stat.js.map +1 -0
  212. package/dist/collection/components/af-stats-row/af-stats-row.css +32 -0
  213. package/dist/collection/components/af-stats-row/af-stats-row.js +33 -0
  214. package/dist/collection/components/af-stats-row/af-stats-row.js.map +1 -0
  215. package/dist/collection/components/af-stepper/af-stepper.js +1 -1
  216. package/dist/collection/components/af-stepper-step/af-stepper-step.js +1 -1
  217. package/dist/collection/components/af-testimonial/af-testimonial.js +2 -2
  218. package/dist/collection/components/af-testimonial-carousel/af-testimonial-carousel.js +1 -1
  219. package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.js +1 -1
  220. package/dist/collection/components/af-text-image-nest/af-text-image-nest.js +1 -1
  221. package/dist/collection/components/af-theme-override/af-theme-override.js +9 -3
  222. package/dist/collection/components/af-theme-override/af-theme-override.js.map +1 -1
  223. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js +9 -3
  224. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js.map +1 -1
  225. package/dist/collection/components/af-video-container/af-video-container.js +1 -1
  226. package/dist/collection/components/af-visually-hidden/af-visually-hidden.js +1 -1
  227. package/dist/collection/components.js +1 -0
  228. package/dist/collection/components.js.map +1 -1
  229. package/dist/collection/types.js +2 -0
  230. package/dist/collection/types.js.map +1 -0
  231. package/dist/components/af-accordion-item.js +1 -1
  232. package/dist/components/af-accordion.js +1 -1
  233. package/dist/components/af-card.js +1 -1
  234. package/dist/components/af-center.js +1 -1
  235. package/dist/components/af-client-carousel.js +1 -1
  236. package/dist/components/af-client-carousel.js.map +1 -1
  237. package/dist/components/af-contact-item.js +1 -1
  238. package/dist/components/af-divider.js +1 -1
  239. package/dist/components/af-divider.js.map +1 -1
  240. package/dist/components/af-feature-accordion.js +2 -2
  241. package/dist/components/af-feature-card.js +1 -1
  242. package/dist/components/af-feature-grid.js +2 -2
  243. package/dist/components/af-footer-column.js +1 -1
  244. package/dist/components/af-footer-link.js +1 -1
  245. package/dist/components/af-footer.js +1 -1
  246. package/dist/components/af-grid-callout.js +1 -1
  247. package/dist/components/af-grid.js +2 -2
  248. package/dist/components/af-grid.js.map +1 -1
  249. package/dist/components/af-hero.d.ts +11 -0
  250. package/dist/components/af-hero.js +9 -0
  251. package/dist/components/af-hero.js.map +1 -0
  252. package/dist/components/af-icon-box.js +1 -1
  253. package/dist/components/af-icon-text.js +3 -3
  254. package/dist/components/af-illustrated-card.js +1 -1
  255. package/dist/components/af-image.js +1 -1
  256. package/dist/components/af-in-page-banner.js +1 -1
  257. package/dist/components/af-in-page-banner.js.map +1 -1
  258. package/dist/components/af-inline.js +1 -1
  259. package/dist/components/af-inline.js.map +1 -1
  260. package/dist/components/af-logo-well.js +1 -1
  261. package/dist/components/af-nav-accordion-item.js +2 -2
  262. package/dist/components/af-nav-accordion.js +1 -1
  263. package/dist/components/af-nav-menu-nest.js +1 -1
  264. package/dist/components/af-nav-menu.js +1 -1
  265. package/dist/components/af-navbar.js +1 -1
  266. package/dist/components/af-number-badge.js +1 -58
  267. package/dist/components/af-number-badge.js.map +1 -1
  268. package/dist/components/af-numbered-stepper-item.d.ts +11 -0
  269. package/dist/components/af-numbered-stepper-item.js +58 -0
  270. package/dist/components/af-numbered-stepper-item.js.map +1 -0
  271. package/dist/components/af-numbered-stepper.d.ts +11 -0
  272. package/dist/components/af-numbered-stepper.js +57 -0
  273. package/dist/components/af-numbered-stepper.js.map +1 -0
  274. package/dist/components/af-paperclip-decoration.js +1 -1
  275. package/dist/components/af-progress-line.js +1 -1
  276. package/dist/components/af-section.js +1 -46
  277. package/dist/components/af-section.js.map +1 -1
  278. package/dist/components/af-show.js +1 -1
  279. package/dist/components/af-social-link.js +1 -1
  280. package/dist/components/af-spacer.js +1 -1
  281. package/dist/components/af-split-section.js +2 -2
  282. package/dist/components/af-split-section.js.map +1 -1
  283. package/dist/components/af-stack.js +1 -1
  284. package/dist/components/af-stack.js.map +1 -1
  285. package/dist/components/af-stat.d.ts +11 -0
  286. package/dist/components/af-stat.js +53 -0
  287. package/dist/components/af-stat.js.map +1 -0
  288. package/dist/components/af-stats-row.d.ts +11 -0
  289. package/dist/components/af-stats-row.js +37 -0
  290. package/dist/components/af-stats-row.js.map +1 -0
  291. package/dist/components/af-stepper-step.js +1 -1
  292. package/dist/components/af-stepper.js +1 -1
  293. package/dist/components/af-testimonial-carousel.js +2 -2
  294. package/dist/components/af-testimonial-stat.js +1 -1
  295. package/dist/components/af-testimonial.js +2 -2
  296. package/dist/components/af-text-image-nest.js +1 -1
  297. package/dist/components/af-text-image.js +1 -1
  298. package/dist/components/af-theme-override.js +1 -1
  299. package/dist/components/af-theme-override.js.map +1 -1
  300. package/dist/components/af-typography-lockup.js +1 -1
  301. package/dist/components/af-video-container.js +1 -1
  302. package/dist/components/af-visually-hidden.js +1 -1
  303. package/dist/components/index.js +5 -4
  304. package/dist/components/index.js.map +1 -1
  305. package/dist/components/{p-C6-JATRR.js → p-3Gzh4deR.js} +5 -5
  306. package/dist/components/p-3Gzh4deR.js.map +1 -0
  307. package/dist/components/{p-DO9J0XTo.js → p-BXmiPS9x.js} +4 -4
  308. package/dist/components/{p-DO9J0XTo.js.map → p-BXmiPS9x.js.map} +1 -1
  309. package/dist/components/{p-CKLkuSI3.js → p-CJxqw006.js} +3 -3
  310. package/dist/components/{p-CKLkuSI3.js.map → p-CJxqw006.js.map} +1 -1
  311. package/dist/components/p-CRnEuh5f.js +136 -0
  312. package/dist/components/p-CRnEuh5f.js.map +1 -0
  313. package/dist/components/{p-DNeNJhuM.js → p-ClZAZSzR.js} +3 -3
  314. package/dist/components/{p-DNeNJhuM.js.map → p-ClZAZSzR.js.map} +1 -1
  315. package/dist/components/{p-HMlLQQwp.js → p-DqJRvNOl.js} +3 -3
  316. package/dist/components/{p-HMlLQQwp.js.map → p-DqJRvNOl.js.map} +1 -1
  317. package/dist/components/{p-Bh6Cfgtj.js → p-LRPXnaSx.js} +3 -3
  318. package/dist/components/{p-Bh6Cfgtj.js.map → p-LRPXnaSx.js.map} +1 -1
  319. package/dist/components/p-O26uYJSV.js +51 -0
  320. package/dist/components/p-O26uYJSV.js.map +1 -0
  321. package/dist/components/p-QoDae21y.js +63 -0
  322. package/dist/components/p-QoDae21y.js.map +1 -0
  323. package/dist/components/{p-CNzQtskW.js → p-mbl86-w6.js} +4 -4
  324. package/dist/components/p-mbl86-w6.js.map +1 -0
  325. package/dist/components/{p-i_6TLQJ5.js → p-nA3Uvhwb.js} +3 -3
  326. package/dist/components/{p-i_6TLQJ5.js.map → p-nA3Uvhwb.js.map} +1 -1
  327. package/dist/esm/af-accordion-item.entry.js +1 -1
  328. package/dist/esm/af-accordion.entry.js +1 -1
  329. package/dist/esm/af-card.entry.js +1 -1
  330. package/dist/esm/af-card.entry.js.map +1 -1
  331. package/dist/esm/af-center.entry.js +1 -1
  332. package/dist/esm/af-client-carousel.entry.js +1 -1
  333. package/dist/esm/af-client-carousel.entry.js.map +1 -1
  334. package/dist/esm/af-contact-item.entry.js +1 -1
  335. package/dist/esm/af-divider.entry.js +1 -1
  336. package/dist/esm/af-divider.entry.js.map +1 -1
  337. package/dist/esm/af-feature-accordion.entry.js +2 -2
  338. package/dist/esm/af-feature-card.entry.js.map +1 -1
  339. package/dist/esm/af-feature-grid.entry.js +1 -1
  340. package/dist/esm/af-footer-column.entry.js +1 -1
  341. package/dist/esm/af-footer-link.entry.js +1 -1
  342. package/dist/esm/af-footer.entry.js +1 -1
  343. package/dist/esm/af-grid.entry.js +2 -2
  344. package/dist/esm/af-grid.entry.js.map +1 -1
  345. package/dist/esm/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js.map +1 -1
  346. package/dist/esm/af-heading_5.entry.js +1 -1
  347. package/dist/esm/af-hero.entry.js +92 -0
  348. package/dist/esm/af-hero.entry.js.map +1 -0
  349. package/dist/esm/af-icon-box.entry.js +1 -1
  350. package/dist/esm/af-icon-text.entry.js +1 -1
  351. package/dist/esm/af-illustrated-card.entry.js +1 -1
  352. package/dist/esm/af-illustrated-card.entry.js.map +1 -1
  353. package/dist/esm/af-image.entry.js +1 -1
  354. package/dist/esm/af-in-page-banner.entry.js +1 -1
  355. package/dist/esm/af-in-page-banner.entry.js.map +1 -1
  356. package/dist/esm/af-inline.entry.js +1 -1
  357. package/dist/esm/af-inline.entry.js.map +1 -1
  358. package/dist/esm/af-logo-well.entry.js +1 -1
  359. package/dist/esm/af-nav-accordion-item.entry.js +2 -2
  360. package/dist/esm/af-nav-accordion.entry.js +1 -1
  361. package/dist/esm/af-nav-menu-nest.entry.js +1 -1
  362. package/dist/esm/af-nav-menu.entry.js +1 -1
  363. package/dist/esm/af-number-badge.entry.js +1 -1
  364. package/dist/esm/af-numbered-stepper-item.entry.js +23 -0
  365. package/dist/esm/af-numbered-stepper-item.entry.js.map +1 -0
  366. package/dist/esm/af-numbered-stepper.entry.js +34 -0
  367. package/dist/esm/af-numbered-stepper.entry.js.map +1 -0
  368. package/dist/esm/af-paperclip-decoration.entry.js +1 -1
  369. package/dist/esm/af-progress-line.entry.js +2 -2
  370. package/dist/esm/af-section.entry.js +2 -2
  371. package/dist/esm/af-section.entry.js.map +1 -1
  372. package/dist/esm/af-show.entry.js +1 -1
  373. package/dist/esm/af-social-link.entry.js +1 -1
  374. package/dist/esm/af-spacer.entry.js +1 -1
  375. package/dist/esm/af-split-section.entry.js +2 -2
  376. package/dist/esm/af-split-section.entry.js.map +1 -1
  377. package/dist/esm/af-stack.entry.js +1 -1
  378. package/dist/esm/af-stack.entry.js.map +1 -1
  379. package/dist/esm/af-stat.entry.js +16 -0
  380. package/dist/esm/af-stat.entry.js.map +1 -0
  381. package/dist/esm/af-stats-row.entry.js +16 -0
  382. package/dist/esm/af-stats-row.entry.js.map +1 -0
  383. package/dist/esm/af-stepper-step.entry.js +1 -1
  384. package/dist/esm/af-stepper.entry.js +1 -1
  385. package/dist/esm/af-testimonial-carousel.entry.js +1 -1
  386. package/dist/esm/af-testimonial-stat.entry.js +1 -1
  387. package/dist/esm/af-testimonial.entry.js +2 -2
  388. package/dist/esm/af-text-image-nest.entry.js +1 -1
  389. package/dist/esm/af-theme-override.entry.js +1 -1
  390. package/dist/esm/af-theme-override.entry.js.map +1 -1
  391. package/dist/esm/af-typography-lockup.entry.js +1 -1
  392. package/dist/esm/af-typography-lockup.entry.js.map +1 -1
  393. package/dist/esm/af-video-container.entry.js +1 -1
  394. package/dist/esm/af-visually-hidden.entry.js +1 -1
  395. package/dist/esm/affinda.js +1 -1
  396. package/dist/esm/index.js +1 -0
  397. package/dist/esm/index.js.map +1 -1
  398. package/dist/esm/loader.js +1 -1
  399. package/dist/types/components/af-card/af-card.d.ts +2 -1
  400. package/dist/types/components/af-client-carousel/af-client-carousel.d.ts +1 -1
  401. package/dist/types/components/af-divider/af-divider.d.ts +2 -1
  402. package/dist/types/components/af-feature-card/af-feature-card.d.ts +2 -1
  403. package/dist/types/components/af-grid/af-grid.d.ts +1 -1
  404. package/dist/types/components/af-hero/af-hero.d.ts +93 -0
  405. package/dist/types/components/af-illustrated-card/af-illustrated-card.d.ts +2 -1
  406. package/dist/types/components/af-in-page-banner/af-in-page-banner.d.ts +2 -3
  407. package/dist/types/components/af-inline/af-inline.d.ts +1 -1
  408. package/dist/types/components/af-navbar/af-navbar.d.ts +2 -1
  409. package/dist/types/components/af-numbered-stepper/af-numbered-stepper.d.ts +38 -0
  410. package/dist/types/components/af-numbered-stepper-item/af-numbered-stepper-item.d.ts +22 -0
  411. package/dist/types/components/af-section/af-section.d.ts +3 -2
  412. package/dist/types/components/af-split-section/af-split-section.d.ts +2 -3
  413. package/dist/types/components/af-stack/af-stack.d.ts +1 -1
  414. package/dist/types/components/af-stat/af-stat.d.ts +15 -0
  415. package/dist/types/components/af-stats-row/af-stats-row.d.ts +17 -0
  416. package/dist/types/components/af-theme-override/af-theme-override.d.ts +2 -1
  417. package/dist/types/components/af-typography-lockup/af-typography-lockup.d.ts +2 -1
  418. package/dist/types/components.d.ts +569 -20
  419. package/dist/types/types.d.ts +57 -0
  420. package/package.json +2 -2
  421. package/dist/affinda/p-083fc528.entry.js +0 -2
  422. package/dist/affinda/p-0e469ad2.entry.js +0 -2
  423. package/dist/affinda/p-41643147.entry.js +0 -2
  424. package/dist/affinda/p-49521f2e.entry.js +0 -2
  425. package/dist/affinda/p-56fe6e6e.entry.js +0 -2
  426. package/dist/affinda/p-a6eda8af.entry.js +0 -2
  427. package/dist/affinda/p-ef5857cf.entry.js +0 -2
  428. package/dist/components/p-C6-JATRR.js.map +0 -1
  429. package/dist/components/p-CNzQtskW.js.map +0 -1
  430. /package/dist/affinda/{p-4cf65950.entry.js.map → p-068ac2fb.entry.js.map} +0 -0
  431. /package/dist/affinda/{p-4b154e23.entry.js.map → p-09dfcd40.entry.js.map} +0 -0
  432. /package/dist/affinda/{p-f10a31cb.entry.js.map → p-0acadf6f.entry.js.map} +0 -0
  433. /package/dist/affinda/{p-e1e98cd6.entry.js.map → p-1b4b0c88.entry.js.map} +0 -0
  434. /package/dist/affinda/{p-8c4e3047.entry.js.map → p-256970e3.entry.js.map} +0 -0
  435. /package/dist/affinda/{p-a6eda8af.entry.js.map → p-32d62fbb.entry.js.map} +0 -0
  436. /package/dist/affinda/{p-3ee906de.entry.js.map → p-342b08e5.entry.js.map} +0 -0
  437. /package/dist/affinda/{p-a84ae4a5.entry.js.map → p-365a75e2.entry.js.map} +0 -0
  438. /package/dist/affinda/{p-41643147.entry.js.map → p-3ed408f6.entry.js.map} +0 -0
  439. /package/dist/affinda/{p-edb1a010.entry.js.map → p-4058a1eb.entry.js.map} +0 -0
  440. /package/dist/affinda/{p-94f51238.entry.js.map → p-41bbb218.entry.js.map} +0 -0
  441. /package/dist/affinda/{p-c8c4783c.entry.js.map → p-44d960ca.entry.js.map} +0 -0
  442. /package/dist/affinda/{p-e1cbe95a.entry.js.map → p-4a9b192b.entry.js.map} +0 -0
  443. /package/dist/affinda/{p-b2633acb.entry.js.map → p-5c163c5b.entry.js.map} +0 -0
  444. /package/dist/affinda/{p-48aadea9.entry.js.map → p-5e5e7d75.entry.js.map} +0 -0
  445. /package/dist/affinda/{p-da2d84f7.entry.js.map → p-61a6b43d.entry.js.map} +0 -0
  446. /package/dist/affinda/{p-ea42c40b.entry.js.map → p-631d141c.entry.js.map} +0 -0
  447. /package/dist/affinda/{p-6038a213.entry.js.map → p-6475796d.entry.js.map} +0 -0
  448. /package/dist/affinda/{p-083fc528.entry.js.map → p-6756aa66.entry.js.map} +0 -0
  449. /package/dist/affinda/{p-0e469ad2.entry.js.map → p-6e181b2b.entry.js.map} +0 -0
  450. /package/dist/affinda/{p-0201c8bd.entry.js.map → p-6ea474a3.entry.js.map} +0 -0
  451. /package/dist/affinda/{p-a71d528d.entry.js.map → p-7111051c.entry.js.map} +0 -0
  452. /package/dist/affinda/{p-0137e7a5.entry.js.map → p-827f3050.entry.js.map} +0 -0
  453. /package/dist/affinda/{p-78518e6c.entry.js.map → p-83bb96cc.entry.js.map} +0 -0
  454. /package/dist/affinda/{p-2e6192eb.entry.js.map → p-9480f00d.entry.js.map} +0 -0
  455. /package/dist/affinda/{p-e055407b.entry.js.map → p-9ce0adc2.entry.js.map} +0 -0
  456. /package/dist/affinda/{p-81706709.entry.js.map → p-a02d6192.entry.js.map} +0 -0
  457. /package/dist/affinda/{p-ad41f905.entry.js.map → p-a25d3257.entry.js.map} +0 -0
  458. /package/dist/affinda/{p-50a67fb6.entry.js.map → p-a7a8f18c.entry.js.map} +0 -0
  459. /package/dist/affinda/{p-5f6a5741.entry.js.map → p-a8d75eb1.entry.js.map} +0 -0
  460. /package/dist/affinda/{p-5265e82e.entry.js.map → p-ae430873.entry.js.map} +0 -0
  461. /package/dist/affinda/{p-081cc890.entry.js.map → p-b39eea31.entry.js.map} +0 -0
  462. /package/dist/affinda/{p-4c4406bf.entry.js.map → p-b9ec0e75.entry.js.map} +0 -0
  463. /package/dist/affinda/{p-feb3d03f.entry.js.map → p-bbfc9df6.entry.js.map} +0 -0
  464. /package/dist/affinda/{p-6c58b283.entry.js.map → p-bed7d9a1.entry.js.map} +0 -0
  465. /package/dist/affinda/{p-3a0e45c3.entry.js.map → p-d7d82986.entry.js.map} +0 -0
  466. /package/dist/affinda/{p-a35029eb.entry.js.map → p-dcc89b4c.entry.js.map} +0 -0
  467. /package/dist/affinda/{p-6e40dbdf.entry.js.map → p-de75cb4f.entry.js.map} +0 -0
  468. /package/dist/affinda/{p-f9315f9e.entry.js.map → p-e07e27f1.entry.js.map} +0 -0
  469. /package/dist/affinda/{p-dbe7ab88.entry.js.map → p-eeda78ea.entry.js.map} +0 -0
  470. /package/dist/affinda/{p-b2b28366.entry.js.map → p-f19cb091.entry.js.map} +0 -0
@@ -5,11 +5,15 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { Gap, HeadingSize, Padding, Theme } from "./types";
9
+ import { HeroTopPad, HeroVariant } from "./components/af-hero/af-hero";
8
10
  import { IconName } from "@affinda/icons";
9
11
  import { NumberBadgeNumber, NumberBadgeVariant } from "./components/af-number-badge/af-number-badge";
10
12
  import { TabShape } from "./components/af-tab/af-tab";
11
13
  import { TabBarBreakpoint, TabBarShape } from "./components/af-tab-bar/af-tab-bar";
12
14
  import { TagSize, TagVariant } from "./components/af-tag/af-tag";
15
+ export { Gap, HeadingSize, Padding, Theme } from "./types";
16
+ export { HeroTopPad, HeroVariant } from "./components/af-hero/af-hero";
13
17
  export { IconName } from "@affinda/icons";
14
18
  export { NumberBadgeNumber, NumberBadgeVariant } from "./components/af-number-badge/af-number-badge";
15
19
  export { TabShape } from "./components/af-tab/af-tab";
@@ -130,7 +134,7 @@ export namespace Components {
130
134
  * Theme - sets background color and provides theme context to children. Defaults to 'mist-green' if not specified.
131
135
  * @default 'mist-green'
132
136
  */
133
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
137
+ "theme"?: Theme;
134
138
  }
135
139
  /**
136
140
  * Center layout component for quickly centering content.
@@ -345,7 +349,7 @@ export namespace Components {
345
349
  * Theme variant - sets background color and provides theme context. Only applies to 'standard' layout mode. Defaults to 'mist-green'.
346
350
  * @default 'mist-green'
347
351
  */
348
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
352
+ "theme"?: Theme;
349
353
  }
350
354
  /**
351
355
  * Feature Grid component - CSS Grid container for feature cards.
@@ -544,6 +548,87 @@ export namespace Components {
544
548
  */
545
549
  "level": 'xl' | '1' | '2' | '3' | '4' | '5';
546
550
  }
551
+ /**
552
+ * Unified top-of-page hero — replaces the 7+ hand-rolled hero implementations
553
+ * the Affinda marketing site (and sibling apps) currently ship. Covers five
554
+ * canonical patterns via the `variant` prop:
555
+ * - `inkwell-photo` — inkwell background, blob-masked photo on the right.
556
+ * Use for: listing / archive pages (blog, case-studies, whitepapers,
557
+ * value-creation, about-us) and industry landing pages that carry a
558
+ * photograph instead of an illustration.
559
+ * - `inkwell-illustration` — inkwell background, illustration on the right.
560
+ * Use for: industry landing pages, /industries, /integrations, /platform
561
+ * with bespoke art.
562
+ * - `inkwell-centered` — inkwell background, centred typography lockup.
563
+ * Slot `<af-paperclip-decoration />` into the `paperclip` slot for the
564
+ * watermark treatment. Use for: `/`, `/au`, `/platform`.
565
+ * - `soft-clay-illustration` — soft-clay background, illustration on the
566
+ * right. Use for: /news, /industries overview, /security, /compare.
567
+ * - `mist-green-illustration` — same layout as soft-clay-illustration but on
568
+ * the mist-green theme. Reserved for future pages.
569
+ * ## Slots
570
+ * - default — heading content (use when richer markup than the `heading`
571
+ * prop can express is needed; e.g. coloured spans or line breaks).
572
+ * - `description` — supporting copy under the heading.
573
+ * - `badge` — optional pre-heading label (pill, version tag).
574
+ * - `buttons` — hero CTAs (usually an `<af-button-group>`).
575
+ * - `image` — the photograph for the `inkwell-photo` variant. Wrapped in
576
+ * the blob mask automatically.
577
+ * - `illustration` — the illustration SVG for `-illustration` variants.
578
+ * - `paperclip` — watermark for `inkwell-centered`. Consumers typically
579
+ * slot `<af-paperclip-decoration />` here.
580
+ * - `logos-below` — overlap row at the bottom gutter (logo carousel etc.).
581
+ * Painted with the theme's background so it cleanly overlaps the image's
582
+ * lower edge on the photo variant.
583
+ * ## Float-navbar handling
584
+ * When `floatNavbar` is true (the default for the inkwell variants) the
585
+ * component sets `data-af-hero-float-navbar="true"` on `<body>` via a
586
+ * lifecycle hook, and a companion rule in `@affinda/css/base.css` applies
587
+ * the `body > header { position: absolute }` / `main { padding-top: 0 }`
588
+ * / navbar-spacer-transparent treatment. Consumers already import
589
+ * `@affinda/css` so no extra import is required. The rule deactivates
590
+ * when the hero is removed from the DOM.
591
+ * ## Image lift
592
+ * The `inkwell-photo` variant renders the photo column with
593
+ * `margin-top: var(--af-hero-image-lift, -260px)`. Override per-page by
594
+ * setting `--af-hero-image-lift` on the `<af-hero>` element.
595
+ */
596
+ interface AfHero {
597
+ /**
598
+ * Description text (use the `description` slot for richer markup).
599
+ * @default ''
600
+ */
601
+ "description": string;
602
+ /**
603
+ * Float the site header over the hero and paint the navbar-spacer transparent so the hero background flows to the top of the viewport. Defaults to true for the three inkwell variants, false for the soft-clay / mist-green illustration variants (whose consumers don't always want a full-bleed crown).
604
+ */
605
+ "floatNavbar"?: boolean;
606
+ /**
607
+ * Heading text (use the default slot for richer markup).
608
+ * @default ''
609
+ */
610
+ "heading": string;
611
+ /**
612
+ * Whether to apply the blob mask to the slotted `image`. Defaults to `true` for `inkwell-photo`. Set `false` if you want to slot in a pre-masked raster or a custom wrapper.
613
+ * @default true
614
+ */
615
+ "maskImage": boolean;
616
+ /**
617
+ * Typography lockup max-width (px). Defaults to 620, matching the live site.
618
+ * @default 620
619
+ */
620
+ "maxWidth": number;
621
+ /**
622
+ * Top padding preset. `default` = 124px (matches IndustryHero / IllustrationHero). `loose` = 164px (matches ListingHero — gives the image a touch more breathing room above the lockup on archive pages).
623
+ * @default 'default'
624
+ */
625
+ "topPad": HeroTopPad;
626
+ /**
627
+ * Layout / theme preset. See variant docs in the component header.
628
+ * @default 'inkwell-photo'
629
+ */
630
+ "variant": HeroVariant;
631
+ }
547
632
  /**
548
633
  * Icon component that displays SVG icons from the Affinda icon library.
549
634
  * Icons inherit color from their parent via currentColor.
@@ -676,7 +761,7 @@ export namespace Components {
676
761
  * Theme variant - sets background color and provides theme context. Defaults to 'mist-green'.
677
762
  * @default 'mist-green'
678
763
  */
679
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
764
+ "theme"?: Theme;
680
765
  }
681
766
  /**
682
767
  * A styled image container with rounded corners and a subtle inset border.
@@ -769,7 +854,7 @@ export namespace Components {
769
854
  * Theme - sets the banner background color and typography colors
770
855
  * @default 'mist-green'
771
856
  */
772
- "theme": BannerTheme;
857
+ "theme": Theme;
773
858
  }
774
859
  /**
775
860
  * Inline layout component for horizontal inline-flex layouts with gap and optional wrapping.
@@ -1102,7 +1187,7 @@ export namespace Components {
1102
1187
  /**
1103
1188
  * Theme for the spacer background - should match the section below the navbar
1104
1189
  */
1105
- "theme"?: 'white' | 'inkwell' | 'mist-green' | 'soft-clay';
1190
+ "theme"?: Theme;
1106
1191
  }
1107
1192
  /**
1108
1193
  * NumberBadge displays numbers 1-10 in either a filled circle or text-only style.
@@ -1129,6 +1214,52 @@ export namespace Components {
1129
1214
  */
1130
1215
  "variant": NumberBadgeVariant;
1131
1216
  }
1217
+ /**
1218
+ * Numbered stepper — filled soft-clay circle badges (1/2/3) paired with a
1219
+ * heading + body description per step. Sibling to `af-stepper` (which uses
1220
+ * outlined badges on a single spine connector); the numbered variant uses
1221
+ * filled badges with per-step connector segments, matching the Webflow
1222
+ * "How it works" marketing pattern.
1223
+ * Renders children `af-numbered-stepper-item` elements horizontally on
1224
+ * desktop (auto-stacks on mobile) or vertically when `orientation="vertical"`.
1225
+ * The parent auto-assigns badge numbers based on DOM order, so consumers
1226
+ * don't hand-number the steps.
1227
+ * Headings use the shared `heading-size="card"` scale from
1228
+ * `af-typography-lockup` (22/20px) — no bespoke font-size tokens.
1229
+ * @example ```html
1230
+ * <af-numbered-stepper>
1231
+ * <af-numbered-stepper-item>
1232
+ * <h3 slot="heading">Connect your ATS</h3>
1233
+ * <p slot="body">OAuth-based hook into the tools you already use.</p>
1234
+ * </af-numbered-stepper-item>
1235
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
1236
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
1237
+ * </af-numbered-stepper>
1238
+ * ```
1239
+ */
1240
+ interface AfNumberedStepper {
1241
+ /**
1242
+ * Layout orientation. Horizontal auto-stacks to vertical on mobile.
1243
+ * @default 'horizontal'
1244
+ */
1245
+ "orientation": 'horizontal' | 'vertical';
1246
+ }
1247
+ /**
1248
+ * A single step within an `af-numbered-stepper`. Renders a filled soft-clay
1249
+ * circle badge (via `af-number-badge`) alongside a heading + body lockup.
1250
+ * The parent `af-numbered-stepper` auto-assigns the `index` prop based on
1251
+ * DOM order. Pass `index` explicitly to override.
1252
+ * Heading scale is the shared `card` variant from `af-typography-lockup`
1253
+ * (22/20px) — the same ladder step used by diff-card, related-card, and
1254
+ * other card-title uses across the design system.
1255
+ */
1256
+ interface AfNumberedStepperItem {
1257
+ /**
1258
+ * Step number shown in the badge. Auto-assigned by the parent stepper if not explicitly set.
1259
+ * @default 1
1260
+ */
1261
+ "index": number;
1262
+ }
1132
1263
  /**
1133
1264
  * Decorative paperclip vector graphic. Renders the left-half paperclip
1134
1265
  * silhouette (viewBox `0 0 655 754`) that the marketing site bleeds off
@@ -1228,12 +1359,12 @@ export namespace Components {
1228
1359
  * Padding variant
1229
1360
  * @default 'default'
1230
1361
  */
1231
- "padding": 'none' | 'tight' | 'default' | 'loose';
1362
+ "padding": Padding;
1232
1363
  /**
1233
1364
  * Theme - sets background color and provides theme context to children
1234
1365
  * @default 'white'
1235
1366
  */
1236
- "theme": 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';
1367
+ "theme": Theme;
1237
1368
  }
1238
1369
  /**
1239
1370
  * Show component for responsive visibility control.
@@ -1316,7 +1447,7 @@ export namespace Components {
1316
1447
  * Padding variant
1317
1448
  * @default 'default'
1318
1449
  */
1319
- "padding": 'none' | 'tight' | 'default' | 'loose';
1450
+ "padding": Padding;
1320
1451
  /**
1321
1452
  * Theme for the top half of the section
1322
1453
  * @default 'mist-green'
@@ -1354,6 +1485,35 @@ export namespace Components {
1354
1485
  */
1355
1486
  "wrap": boolean;
1356
1487
  }
1488
+ /**
1489
+ * Individual stat — a large value (e.g. "1B+") paired with a descriptive label.
1490
+ * Intended as a slotted child of `af-stats-row`, but renders standalone too.
1491
+ * Colour is inherited from the ancestor theme context (`af-section` /
1492
+ * `af-card` / `af-theme-override`) via the `--af-typography-*` tokens that
1493
+ * `af-heading` and `af-text` already consume — no theme prop needed here.
1494
+ */
1495
+ interface AfStat {
1496
+ /**
1497
+ * Description / caption rendered beneath the value.
1498
+ */
1499
+ "label": string;
1500
+ /**
1501
+ * The statistic headline value (e.g. "1B+", "95%", "10+").
1502
+ */
1503
+ "value": string;
1504
+ }
1505
+ /**
1506
+ * Layout container for a horizontal row of `af-stat` children.
1507
+ * Flex row that wraps to a grid on narrow viewports. Uses `scoped: true`
1508
+ * so slotted `<af-stat>` children stay in the light DOM and inherit the
1509
+ * ancestor theme (`af-section`) via the cascaded `.theme-*` class.
1510
+ * Intentionally has **no `theme` prop** — a stats row is always flush
1511
+ * against its section background, so a local theme would fight the
1512
+ * ancestor. If you need a different background for the row, wrap it in
1513
+ * its own `af-section` or `af-theme-override`.
1514
+ */
1515
+ interface AfStatsRow {
1516
+ }
1357
1517
  /**
1358
1518
  * Stepper composite for "Sign up / Upload / See results"-style marketing
1359
1519
  * flows. Renders children `af-stepper-step` elements in a horizontal row
@@ -1723,7 +1883,7 @@ export namespace Components {
1723
1883
  * The theme to apply to child components. Overrides any inherited theme from parent containers.
1724
1884
  * @default 'white'
1725
1885
  */
1726
- "theme": 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';
1886
+ "theme": Theme;
1727
1887
  }
1728
1888
  /**
1729
1889
  * Marketing-style composition of heading + description + buttons with
@@ -1785,7 +1945,7 @@ export namespace Components {
1785
1945
  * The heading size (1-5, or "card"; 1 is largest). Controls visual scale only — pair with a matching <h1>-<h5> slotted element for correct document outline (see component docblock). The `card` variant sits between 4 and 5 at 22/20px and is meant for card titles.
1786
1946
  * @default 2
1787
1947
  */
1788
- "headingSize": 1 | 2 | 3 | 4 | 5 | 'card';
1948
+ "headingSize": HeadingSize;
1789
1949
  /**
1790
1950
  * Maximum width for the copy section (in pixels)
1791
1951
  */
@@ -2200,6 +2360,57 @@ declare global {
2200
2360
  prototype: HTMLAfHeadingElement;
2201
2361
  new (): HTMLAfHeadingElement;
2202
2362
  };
2363
+ /**
2364
+ * Unified top-of-page hero — replaces the 7+ hand-rolled hero implementations
2365
+ * the Affinda marketing site (and sibling apps) currently ship. Covers five
2366
+ * canonical patterns via the `variant` prop:
2367
+ * - `inkwell-photo` — inkwell background, blob-masked photo on the right.
2368
+ * Use for: listing / archive pages (blog, case-studies, whitepapers,
2369
+ * value-creation, about-us) and industry landing pages that carry a
2370
+ * photograph instead of an illustration.
2371
+ * - `inkwell-illustration` — inkwell background, illustration on the right.
2372
+ * Use for: industry landing pages, /industries, /integrations, /platform
2373
+ * with bespoke art.
2374
+ * - `inkwell-centered` — inkwell background, centred typography lockup.
2375
+ * Slot `<af-paperclip-decoration />` into the `paperclip` slot for the
2376
+ * watermark treatment. Use for: `/`, `/au`, `/platform`.
2377
+ * - `soft-clay-illustration` — soft-clay background, illustration on the
2378
+ * right. Use for: /news, /industries overview, /security, /compare.
2379
+ * - `mist-green-illustration` — same layout as soft-clay-illustration but on
2380
+ * the mist-green theme. Reserved for future pages.
2381
+ * ## Slots
2382
+ * - default — heading content (use when richer markup than the `heading`
2383
+ * prop can express is needed; e.g. coloured spans or line breaks).
2384
+ * - `description` — supporting copy under the heading.
2385
+ * - `badge` — optional pre-heading label (pill, version tag).
2386
+ * - `buttons` — hero CTAs (usually an `<af-button-group>`).
2387
+ * - `image` — the photograph for the `inkwell-photo` variant. Wrapped in
2388
+ * the blob mask automatically.
2389
+ * - `illustration` — the illustration SVG for `-illustration` variants.
2390
+ * - `paperclip` — watermark for `inkwell-centered`. Consumers typically
2391
+ * slot `<af-paperclip-decoration />` here.
2392
+ * - `logos-below` — overlap row at the bottom gutter (logo carousel etc.).
2393
+ * Painted with the theme's background so it cleanly overlaps the image's
2394
+ * lower edge on the photo variant.
2395
+ * ## Float-navbar handling
2396
+ * When `floatNavbar` is true (the default for the inkwell variants) the
2397
+ * component sets `data-af-hero-float-navbar="true"` on `<body>` via a
2398
+ * lifecycle hook, and a companion rule in `@affinda/css/base.css` applies
2399
+ * the `body > header { position: absolute }` / `main { padding-top: 0 }`
2400
+ * / navbar-spacer-transparent treatment. Consumers already import
2401
+ * `@affinda/css` so no extra import is required. The rule deactivates
2402
+ * when the hero is removed from the DOM.
2403
+ * ## Image lift
2404
+ * The `inkwell-photo` variant renders the photo column with
2405
+ * `margin-top: var(--af-hero-image-lift, -260px)`. Override per-page by
2406
+ * setting `--af-hero-image-lift` on the `<af-hero>` element.
2407
+ */
2408
+ interface HTMLAfHeroElement extends Components.AfHero, HTMLStencilElement {
2409
+ }
2410
+ var HTMLAfHeroElement: {
2411
+ prototype: HTMLAfHeroElement;
2412
+ new (): HTMLAfHeroElement;
2413
+ };
2203
2414
  /**
2204
2415
  * Icon component that displays SVG icons from the Affinda icon library.
2205
2416
  * Icons inherit color from their parent via currentColor.
@@ -2509,6 +2720,50 @@ declare global {
2509
2720
  prototype: HTMLAfNumberBadgeElement;
2510
2721
  new (): HTMLAfNumberBadgeElement;
2511
2722
  };
2723
+ /**
2724
+ * Numbered stepper — filled soft-clay circle badges (1/2/3) paired with a
2725
+ * heading + body description per step. Sibling to `af-stepper` (which uses
2726
+ * outlined badges on a single spine connector); the numbered variant uses
2727
+ * filled badges with per-step connector segments, matching the Webflow
2728
+ * "How it works" marketing pattern.
2729
+ * Renders children `af-numbered-stepper-item` elements horizontally on
2730
+ * desktop (auto-stacks on mobile) or vertically when `orientation="vertical"`.
2731
+ * The parent auto-assigns badge numbers based on DOM order, so consumers
2732
+ * don't hand-number the steps.
2733
+ * Headings use the shared `heading-size="card"` scale from
2734
+ * `af-typography-lockup` (22/20px) — no bespoke font-size tokens.
2735
+ * @example ```html
2736
+ * <af-numbered-stepper>
2737
+ * <af-numbered-stepper-item>
2738
+ * <h3 slot="heading">Connect your ATS</h3>
2739
+ * <p slot="body">OAuth-based hook into the tools you already use.</p>
2740
+ * </af-numbered-stepper-item>
2741
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
2742
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
2743
+ * </af-numbered-stepper>
2744
+ * ```
2745
+ */
2746
+ interface HTMLAfNumberedStepperElement extends Components.AfNumberedStepper, HTMLStencilElement {
2747
+ }
2748
+ var HTMLAfNumberedStepperElement: {
2749
+ prototype: HTMLAfNumberedStepperElement;
2750
+ new (): HTMLAfNumberedStepperElement;
2751
+ };
2752
+ /**
2753
+ * A single step within an `af-numbered-stepper`. Renders a filled soft-clay
2754
+ * circle badge (via `af-number-badge`) alongside a heading + body lockup.
2755
+ * The parent `af-numbered-stepper` auto-assigns the `index` prop based on
2756
+ * DOM order. Pass `index` explicitly to override.
2757
+ * Heading scale is the shared `card` variant from `af-typography-lockup`
2758
+ * (22/20px) — the same ladder step used by diff-card, related-card, and
2759
+ * other card-title uses across the design system.
2760
+ */
2761
+ interface HTMLAfNumberedStepperItemElement extends Components.AfNumberedStepperItem, HTMLStencilElement {
2762
+ }
2763
+ var HTMLAfNumberedStepperItemElement: {
2764
+ prototype: HTMLAfNumberedStepperItemElement;
2765
+ new (): HTMLAfNumberedStepperItemElement;
2766
+ };
2512
2767
  /**
2513
2768
  * Decorative paperclip vector graphic. Renders the left-half paperclip
2514
2769
  * silhouette (viewBox `0 0 655 754`) that the marketing site bleeds off
@@ -2636,6 +2891,35 @@ declare global {
2636
2891
  prototype: HTMLAfStackElement;
2637
2892
  new (): HTMLAfStackElement;
2638
2893
  };
2894
+ /**
2895
+ * Individual stat — a large value (e.g. "1B+") paired with a descriptive label.
2896
+ * Intended as a slotted child of `af-stats-row`, but renders standalone too.
2897
+ * Colour is inherited from the ancestor theme context (`af-section` /
2898
+ * `af-card` / `af-theme-override`) via the `--af-typography-*` tokens that
2899
+ * `af-heading` and `af-text` already consume — no theme prop needed here.
2900
+ */
2901
+ interface HTMLAfStatElement extends Components.AfStat, HTMLStencilElement {
2902
+ }
2903
+ var HTMLAfStatElement: {
2904
+ prototype: HTMLAfStatElement;
2905
+ new (): HTMLAfStatElement;
2906
+ };
2907
+ /**
2908
+ * Layout container for a horizontal row of `af-stat` children.
2909
+ * Flex row that wraps to a grid on narrow viewports. Uses `scoped: true`
2910
+ * so slotted `<af-stat>` children stay in the light DOM and inherit the
2911
+ * ancestor theme (`af-section`) via the cascaded `.theme-*` class.
2912
+ * Intentionally has **no `theme` prop** — a stats row is always flush
2913
+ * against its section background, so a local theme would fight the
2914
+ * ancestor. If you need a different background for the row, wrap it in
2915
+ * its own `af-section` or `af-theme-override`.
2916
+ */
2917
+ interface HTMLAfStatsRowElement extends Components.AfStatsRow, HTMLStencilElement {
2918
+ }
2919
+ var HTMLAfStatsRowElement: {
2920
+ prototype: HTMLAfStatsRowElement;
2921
+ new (): HTMLAfStatsRowElement;
2922
+ };
2639
2923
  /**
2640
2924
  * Stepper composite for "Sign up / Upload / See results"-style marketing
2641
2925
  * flows. Renders children `af-stepper-step` elements in a horizontal row
@@ -2964,6 +3248,7 @@ declare global {
2964
3248
  "af-grid": HTMLAfGridElement;
2965
3249
  "af-grid-callout": HTMLAfGridCalloutElement;
2966
3250
  "af-heading": HTMLAfHeadingElement;
3251
+ "af-hero": HTMLAfHeroElement;
2967
3252
  "af-icon": HTMLAfIconElement;
2968
3253
  "af-icon-box": HTMLAfIconBoxElement;
2969
3254
  "af-icon-button": HTMLAfIconButtonElement;
@@ -2983,6 +3268,8 @@ declare global {
2983
3268
  "af-nav-menu-nest": HTMLAfNavMenuNestElement;
2984
3269
  "af-navbar": HTMLAfNavbarElement;
2985
3270
  "af-number-badge": HTMLAfNumberBadgeElement;
3271
+ "af-numbered-stepper": HTMLAfNumberedStepperElement;
3272
+ "af-numbered-stepper-item": HTMLAfNumberedStepperItemElement;
2986
3273
  "af-paperclip-decoration": HTMLAfPaperclipDecorationElement;
2987
3274
  "af-progress-line": HTMLAfProgressLineElement;
2988
3275
  "af-radio": HTMLAfRadioElement;
@@ -2992,6 +3279,8 @@ declare global {
2992
3279
  "af-spacer": HTMLAfSpacerElement;
2993
3280
  "af-split-section": HTMLAfSplitSectionElement;
2994
3281
  "af-stack": HTMLAfStackElement;
3282
+ "af-stat": HTMLAfStatElement;
3283
+ "af-stats-row": HTMLAfStatsRowElement;
2995
3284
  "af-stepper": HTMLAfStepperElement;
2996
3285
  "af-stepper-step": HTMLAfStepperStepElement;
2997
3286
  "af-switch": HTMLAfSwitchElement;
@@ -3130,7 +3419,7 @@ declare namespace LocalJSX {
3130
3419
  * Theme - sets background color and provides theme context to children. Defaults to 'mist-green' if not specified.
3131
3420
  * @default 'mist-green'
3132
3421
  */
3133
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
3422
+ "theme"?: Theme;
3134
3423
  }
3135
3424
  /**
3136
3425
  * Center layout component for quickly centering content.
@@ -3349,7 +3638,7 @@ declare namespace LocalJSX {
3349
3638
  * Theme variant - sets background color and provides theme context. Only applies to 'standard' layout mode. Defaults to 'mist-green'.
3350
3639
  * @default 'mist-green'
3351
3640
  */
3352
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
3641
+ "theme"?: Theme;
3353
3642
  }
3354
3643
  /**
3355
3644
  * Feature Grid component - CSS Grid container for feature cards.
@@ -3548,6 +3837,87 @@ declare namespace LocalJSX {
3548
3837
  */
3549
3838
  "level"?: 'xl' | '1' | '2' | '3' | '4' | '5';
3550
3839
  }
3840
+ /**
3841
+ * Unified top-of-page hero — replaces the 7+ hand-rolled hero implementations
3842
+ * the Affinda marketing site (and sibling apps) currently ship. Covers five
3843
+ * canonical patterns via the `variant` prop:
3844
+ * - `inkwell-photo` — inkwell background, blob-masked photo on the right.
3845
+ * Use for: listing / archive pages (blog, case-studies, whitepapers,
3846
+ * value-creation, about-us) and industry landing pages that carry a
3847
+ * photograph instead of an illustration.
3848
+ * - `inkwell-illustration` — inkwell background, illustration on the right.
3849
+ * Use for: industry landing pages, /industries, /integrations, /platform
3850
+ * with bespoke art.
3851
+ * - `inkwell-centered` — inkwell background, centred typography lockup.
3852
+ * Slot `<af-paperclip-decoration />` into the `paperclip` slot for the
3853
+ * watermark treatment. Use for: `/`, `/au`, `/platform`.
3854
+ * - `soft-clay-illustration` — soft-clay background, illustration on the
3855
+ * right. Use for: /news, /industries overview, /security, /compare.
3856
+ * - `mist-green-illustration` — same layout as soft-clay-illustration but on
3857
+ * the mist-green theme. Reserved for future pages.
3858
+ * ## Slots
3859
+ * - default — heading content (use when richer markup than the `heading`
3860
+ * prop can express is needed; e.g. coloured spans or line breaks).
3861
+ * - `description` — supporting copy under the heading.
3862
+ * - `badge` — optional pre-heading label (pill, version tag).
3863
+ * - `buttons` — hero CTAs (usually an `<af-button-group>`).
3864
+ * - `image` — the photograph for the `inkwell-photo` variant. Wrapped in
3865
+ * the blob mask automatically.
3866
+ * - `illustration` — the illustration SVG for `-illustration` variants.
3867
+ * - `paperclip` — watermark for `inkwell-centered`. Consumers typically
3868
+ * slot `<af-paperclip-decoration />` here.
3869
+ * - `logos-below` — overlap row at the bottom gutter (logo carousel etc.).
3870
+ * Painted with the theme's background so it cleanly overlaps the image's
3871
+ * lower edge on the photo variant.
3872
+ * ## Float-navbar handling
3873
+ * When `floatNavbar` is true (the default for the inkwell variants) the
3874
+ * component sets `data-af-hero-float-navbar="true"` on `<body>` via a
3875
+ * lifecycle hook, and a companion rule in `@affinda/css/base.css` applies
3876
+ * the `body > header { position: absolute }` / `main { padding-top: 0 }`
3877
+ * / navbar-spacer-transparent treatment. Consumers already import
3878
+ * `@affinda/css` so no extra import is required. The rule deactivates
3879
+ * when the hero is removed from the DOM.
3880
+ * ## Image lift
3881
+ * The `inkwell-photo` variant renders the photo column with
3882
+ * `margin-top: var(--af-hero-image-lift, -260px)`. Override per-page by
3883
+ * setting `--af-hero-image-lift` on the `<af-hero>` element.
3884
+ */
3885
+ interface AfHero {
3886
+ /**
3887
+ * Description text (use the `description` slot for richer markup).
3888
+ * @default ''
3889
+ */
3890
+ "description"?: string;
3891
+ /**
3892
+ * Float the site header over the hero and paint the navbar-spacer transparent so the hero background flows to the top of the viewport. Defaults to true for the three inkwell variants, false for the soft-clay / mist-green illustration variants (whose consumers don't always want a full-bleed crown).
3893
+ */
3894
+ "floatNavbar"?: boolean;
3895
+ /**
3896
+ * Heading text (use the default slot for richer markup).
3897
+ * @default ''
3898
+ */
3899
+ "heading"?: string;
3900
+ /**
3901
+ * Whether to apply the blob mask to the slotted `image`. Defaults to `true` for `inkwell-photo`. Set `false` if you want to slot in a pre-masked raster or a custom wrapper.
3902
+ * @default true
3903
+ */
3904
+ "maskImage"?: boolean;
3905
+ /**
3906
+ * Typography lockup max-width (px). Defaults to 620, matching the live site.
3907
+ * @default 620
3908
+ */
3909
+ "maxWidth"?: number;
3910
+ /**
3911
+ * Top padding preset. `default` = 124px (matches IndustryHero / IllustrationHero). `loose` = 164px (matches ListingHero — gives the image a touch more breathing room above the lockup on archive pages).
3912
+ * @default 'default'
3913
+ */
3914
+ "topPad"?: HeroTopPad;
3915
+ /**
3916
+ * Layout / theme preset. See variant docs in the component header.
3917
+ * @default 'inkwell-photo'
3918
+ */
3919
+ "variant"?: HeroVariant;
3920
+ }
3551
3921
  /**
3552
3922
  * Icon component that displays SVG icons from the Affinda icon library.
3553
3923
  * Icons inherit color from their parent via currentColor.
@@ -3680,7 +4050,7 @@ declare namespace LocalJSX {
3680
4050
  * Theme variant - sets background color and provides theme context. Defaults to 'mist-green'.
3681
4051
  * @default 'mist-green'
3682
4052
  */
3683
- "theme"?: 'white' | 'white-ivory' | 'inkwell' | 'mist-green' | 'soft-clay';
4053
+ "theme"?: Theme;
3684
4054
  }
3685
4055
  /**
3686
4056
  * A styled image container with rounded corners and a subtle inset border.
@@ -3773,7 +4143,7 @@ declare namespace LocalJSX {
3773
4143
  * Theme - sets the banner background color and typography colors
3774
4144
  * @default 'mist-green'
3775
4145
  */
3776
- "theme"?: BannerTheme;
4146
+ "theme"?: Theme;
3777
4147
  }
3778
4148
  /**
3779
4149
  * Inline layout component for horizontal inline-flex layouts with gap and optional wrapping.
@@ -4130,7 +4500,7 @@ declare namespace LocalJSX {
4130
4500
  /**
4131
4501
  * Theme for the spacer background - should match the section below the navbar
4132
4502
  */
4133
- "theme"?: 'white' | 'inkwell' | 'mist-green' | 'soft-clay';
4503
+ "theme"?: Theme;
4134
4504
  }
4135
4505
  /**
4136
4506
  * NumberBadge displays numbers 1-10 in either a filled circle or text-only style.
@@ -4157,6 +4527,52 @@ declare namespace LocalJSX {
4157
4527
  */
4158
4528
  "variant"?: NumberBadgeVariant;
4159
4529
  }
4530
+ /**
4531
+ * Numbered stepper — filled soft-clay circle badges (1/2/3) paired with a
4532
+ * heading + body description per step. Sibling to `af-stepper` (which uses
4533
+ * outlined badges on a single spine connector); the numbered variant uses
4534
+ * filled badges with per-step connector segments, matching the Webflow
4535
+ * "How it works" marketing pattern.
4536
+ * Renders children `af-numbered-stepper-item` elements horizontally on
4537
+ * desktop (auto-stacks on mobile) or vertically when `orientation="vertical"`.
4538
+ * The parent auto-assigns badge numbers based on DOM order, so consumers
4539
+ * don't hand-number the steps.
4540
+ * Headings use the shared `heading-size="card"` scale from
4541
+ * `af-typography-lockup` (22/20px) — no bespoke font-size tokens.
4542
+ * @example ```html
4543
+ * <af-numbered-stepper>
4544
+ * <af-numbered-stepper-item>
4545
+ * <h3 slot="heading">Connect your ATS</h3>
4546
+ * <p slot="body">OAuth-based hook into the tools you already use.</p>
4547
+ * </af-numbered-stepper-item>
4548
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
4549
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
4550
+ * </af-numbered-stepper>
4551
+ * ```
4552
+ */
4553
+ interface AfNumberedStepper {
4554
+ /**
4555
+ * Layout orientation. Horizontal auto-stacks to vertical on mobile.
4556
+ * @default 'horizontal'
4557
+ */
4558
+ "orientation"?: 'horizontal' | 'vertical';
4559
+ }
4560
+ /**
4561
+ * A single step within an `af-numbered-stepper`. Renders a filled soft-clay
4562
+ * circle badge (via `af-number-badge`) alongside a heading + body lockup.
4563
+ * The parent `af-numbered-stepper` auto-assigns the `index` prop based on
4564
+ * DOM order. Pass `index` explicitly to override.
4565
+ * Heading scale is the shared `card` variant from `af-typography-lockup`
4566
+ * (22/20px) — the same ladder step used by diff-card, related-card, and
4567
+ * other card-title uses across the design system.
4568
+ */
4569
+ interface AfNumberedStepperItem {
4570
+ /**
4571
+ * Step number shown in the badge. Auto-assigned by the parent stepper if not explicitly set.
4572
+ * @default 1
4573
+ */
4574
+ "index"?: number;
4575
+ }
4160
4576
  /**
4161
4577
  * Decorative paperclip vector graphic. Renders the left-half paperclip
4162
4578
  * silhouette (viewBox `0 0 655 754`) that the marketing site bleeds off
@@ -4260,12 +4676,12 @@ declare namespace LocalJSX {
4260
4676
  * Padding variant
4261
4677
  * @default 'default'
4262
4678
  */
4263
- "padding"?: 'none' | 'tight' | 'default' | 'loose';
4679
+ "padding"?: Padding;
4264
4680
  /**
4265
4681
  * Theme - sets background color and provides theme context to children
4266
4682
  * @default 'white'
4267
4683
  */
4268
- "theme"?: 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';
4684
+ "theme"?: Theme;
4269
4685
  }
4270
4686
  /**
4271
4687
  * Show component for responsive visibility control.
@@ -4348,7 +4764,7 @@ declare namespace LocalJSX {
4348
4764
  * Padding variant
4349
4765
  * @default 'default'
4350
4766
  */
4351
- "padding"?: 'none' | 'tight' | 'default' | 'loose';
4767
+ "padding"?: Padding;
4352
4768
  /**
4353
4769
  * Theme for the top half of the section
4354
4770
  * @default 'mist-green'
@@ -4386,6 +4802,35 @@ declare namespace LocalJSX {
4386
4802
  */
4387
4803
  "wrap"?: boolean;
4388
4804
  }
4805
+ /**
4806
+ * Individual stat — a large value (e.g. "1B+") paired with a descriptive label.
4807
+ * Intended as a slotted child of `af-stats-row`, but renders standalone too.
4808
+ * Colour is inherited from the ancestor theme context (`af-section` /
4809
+ * `af-card` / `af-theme-override`) via the `--af-typography-*` tokens that
4810
+ * `af-heading` and `af-text` already consume — no theme prop needed here.
4811
+ */
4812
+ interface AfStat {
4813
+ /**
4814
+ * Description / caption rendered beneath the value.
4815
+ */
4816
+ "label": string;
4817
+ /**
4818
+ * The statistic headline value (e.g. "1B+", "95%", "10+").
4819
+ */
4820
+ "value": string;
4821
+ }
4822
+ /**
4823
+ * Layout container for a horizontal row of `af-stat` children.
4824
+ * Flex row that wraps to a grid on narrow viewports. Uses `scoped: true`
4825
+ * so slotted `<af-stat>` children stay in the light DOM and inherit the
4826
+ * ancestor theme (`af-section`) via the cascaded `.theme-*` class.
4827
+ * Intentionally has **no `theme` prop** — a stats row is always flush
4828
+ * against its section background, so a local theme would fight the
4829
+ * ancestor. If you need a different background for the row, wrap it in
4830
+ * its own `af-section` or `af-theme-override`.
4831
+ */
4832
+ interface AfStatsRow {
4833
+ }
4389
4834
  /**
4390
4835
  * Stepper composite for "Sign up / Upload / See results"-style marketing
4391
4836
  * flows. Renders children `af-stepper-step` elements in a horizontal row
@@ -4787,7 +5232,7 @@ declare namespace LocalJSX {
4787
5232
  * The theme to apply to child components. Overrides any inherited theme from parent containers.
4788
5233
  * @default 'white'
4789
5234
  */
4790
- "theme"?: 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';
5235
+ "theme"?: Theme;
4791
5236
  }
4792
5237
  /**
4793
5238
  * Marketing-style composition of heading + description + buttons with
@@ -4849,7 +5294,7 @@ declare namespace LocalJSX {
4849
5294
  * The heading size (1-5, or "card"; 1 is largest). Controls visual scale only — pair with a matching <h1>-<h5> slotted element for correct document outline (see component docblock). The `card` variant sits between 4 and 5 at 22/20px and is meant for card titles.
4850
5295
  * @default 2
4851
5296
  */
4852
- "headingSize"?: 1 | 2 | 3 | 4 | 5 | 'card';
5297
+ "headingSize"?: HeadingSize;
4853
5298
  /**
4854
5299
  * Maximum width for the copy section (in pixels)
4855
5300
  */
@@ -4934,6 +5379,7 @@ declare namespace LocalJSX {
4934
5379
  "af-grid": AfGrid;
4935
5380
  "af-grid-callout": AfGridCallout;
4936
5381
  "af-heading": AfHeading;
5382
+ "af-hero": AfHero;
4937
5383
  "af-icon": AfIcon;
4938
5384
  "af-icon-box": AfIconBox;
4939
5385
  "af-icon-button": AfIconButton;
@@ -4953,6 +5399,8 @@ declare namespace LocalJSX {
4953
5399
  "af-nav-menu-nest": AfNavMenuNest;
4954
5400
  "af-navbar": AfNavbar;
4955
5401
  "af-number-badge": AfNumberBadge;
5402
+ "af-numbered-stepper": AfNumberedStepper;
5403
+ "af-numbered-stepper-item": AfNumberedStepperItem;
4956
5404
  "af-paperclip-decoration": AfPaperclipDecoration;
4957
5405
  "af-progress-line": AfProgressLine;
4958
5406
  "af-radio": AfRadio;
@@ -4962,6 +5410,8 @@ declare namespace LocalJSX {
4962
5410
  "af-spacer": AfSpacer;
4963
5411
  "af-split-section": AfSplitSection;
4964
5412
  "af-stack": AfStack;
5413
+ "af-stat": AfStat;
5414
+ "af-stats-row": AfStatsRow;
4965
5415
  "af-stepper": AfStepper;
4966
5416
  "af-stepper-step": AfStepperStep;
4967
5417
  "af-switch": AfSwitch;
@@ -5145,6 +5595,52 @@ declare module "@stencil/core" {
5145
5595
  * via CSS custom properties.
5146
5596
  */
5147
5597
  "af-heading": LocalJSX.AfHeading & JSXBase.HTMLAttributes<HTMLAfHeadingElement>;
5598
+ /**
5599
+ * Unified top-of-page hero — replaces the 7+ hand-rolled hero implementations
5600
+ * the Affinda marketing site (and sibling apps) currently ship. Covers five
5601
+ * canonical patterns via the `variant` prop:
5602
+ * - `inkwell-photo` — inkwell background, blob-masked photo on the right.
5603
+ * Use for: listing / archive pages (blog, case-studies, whitepapers,
5604
+ * value-creation, about-us) and industry landing pages that carry a
5605
+ * photograph instead of an illustration.
5606
+ * - `inkwell-illustration` — inkwell background, illustration on the right.
5607
+ * Use for: industry landing pages, /industries, /integrations, /platform
5608
+ * with bespoke art.
5609
+ * - `inkwell-centered` — inkwell background, centred typography lockup.
5610
+ * Slot `<af-paperclip-decoration />` into the `paperclip` slot for the
5611
+ * watermark treatment. Use for: `/`, `/au`, `/platform`.
5612
+ * - `soft-clay-illustration` — soft-clay background, illustration on the
5613
+ * right. Use for: /news, /industries overview, /security, /compare.
5614
+ * - `mist-green-illustration` — same layout as soft-clay-illustration but on
5615
+ * the mist-green theme. Reserved for future pages.
5616
+ * ## Slots
5617
+ * - default — heading content (use when richer markup than the `heading`
5618
+ * prop can express is needed; e.g. coloured spans or line breaks).
5619
+ * - `description` — supporting copy under the heading.
5620
+ * - `badge` — optional pre-heading label (pill, version tag).
5621
+ * - `buttons` — hero CTAs (usually an `<af-button-group>`).
5622
+ * - `image` — the photograph for the `inkwell-photo` variant. Wrapped in
5623
+ * the blob mask automatically.
5624
+ * - `illustration` — the illustration SVG for `-illustration` variants.
5625
+ * - `paperclip` — watermark for `inkwell-centered`. Consumers typically
5626
+ * slot `<af-paperclip-decoration />` here.
5627
+ * - `logos-below` — overlap row at the bottom gutter (logo carousel etc.).
5628
+ * Painted with the theme's background so it cleanly overlaps the image's
5629
+ * lower edge on the photo variant.
5630
+ * ## Float-navbar handling
5631
+ * When `floatNavbar` is true (the default for the inkwell variants) the
5632
+ * component sets `data-af-hero-float-navbar="true"` on `<body>` via a
5633
+ * lifecycle hook, and a companion rule in `@affinda/css/base.css` applies
5634
+ * the `body > header { position: absolute }` / `main { padding-top: 0 }`
5635
+ * / navbar-spacer-transparent treatment. Consumers already import
5636
+ * `@affinda/css` so no extra import is required. The rule deactivates
5637
+ * when the hero is removed from the DOM.
5638
+ * ## Image lift
5639
+ * The `inkwell-photo` variant renders the photo column with
5640
+ * `margin-top: var(--af-hero-image-lift, -260px)`. Override per-page by
5641
+ * setting `--af-hero-image-lift` on the `<af-hero>` element.
5642
+ */
5643
+ "af-hero": LocalJSX.AfHero & JSXBase.HTMLAttributes<HTMLAfHeroElement>;
5148
5644
  /**
5149
5645
  * Icon component that displays SVG icons from the Affinda icon library.
5150
5646
  * Icons inherit color from their parent via currentColor.
@@ -5322,6 +5818,40 @@ declare module "@stencil/core" {
5322
5818
  * ```
5323
5819
  */
5324
5820
  "af-number-badge": LocalJSX.AfNumberBadge & JSXBase.HTMLAttributes<HTMLAfNumberBadgeElement>;
5821
+ /**
5822
+ * Numbered stepper — filled soft-clay circle badges (1/2/3) paired with a
5823
+ * heading + body description per step. Sibling to `af-stepper` (which uses
5824
+ * outlined badges on a single spine connector); the numbered variant uses
5825
+ * filled badges with per-step connector segments, matching the Webflow
5826
+ * "How it works" marketing pattern.
5827
+ * Renders children `af-numbered-stepper-item` elements horizontally on
5828
+ * desktop (auto-stacks on mobile) or vertically when `orientation="vertical"`.
5829
+ * The parent auto-assigns badge numbers based on DOM order, so consumers
5830
+ * don't hand-number the steps.
5831
+ * Headings use the shared `heading-size="card"` scale from
5832
+ * `af-typography-lockup` (22/20px) — no bespoke font-size tokens.
5833
+ * @example ```html
5834
+ * <af-numbered-stepper>
5835
+ * <af-numbered-stepper-item>
5836
+ * <h3 slot="heading">Connect your ATS</h3>
5837
+ * <p slot="body">OAuth-based hook into the tools you already use.</p>
5838
+ * </af-numbered-stepper-item>
5839
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
5840
+ * <af-numbered-stepper-item>...</af-numbered-stepper-item>
5841
+ * </af-numbered-stepper>
5842
+ * ```
5843
+ */
5844
+ "af-numbered-stepper": LocalJSX.AfNumberedStepper & JSXBase.HTMLAttributes<HTMLAfNumberedStepperElement>;
5845
+ /**
5846
+ * A single step within an `af-numbered-stepper`. Renders a filled soft-clay
5847
+ * circle badge (via `af-number-badge`) alongside a heading + body lockup.
5848
+ * The parent `af-numbered-stepper` auto-assigns the `index` prop based on
5849
+ * DOM order. Pass `index` explicitly to override.
5850
+ * Heading scale is the shared `card` variant from `af-typography-lockup`
5851
+ * (22/20px) — the same ladder step used by diff-card, related-card, and
5852
+ * other card-title uses across the design system.
5853
+ */
5854
+ "af-numbered-stepper-item": LocalJSX.AfNumberedStepperItem & JSXBase.HTMLAttributes<HTMLAfNumberedStepperItemElement>;
5325
5855
  /**
5326
5856
  * Decorative paperclip vector graphic. Renders the left-half paperclip
5327
5857
  * silhouette (viewBox `0 0 655 754`) that the marketing site bleeds off
@@ -5393,6 +5923,25 @@ declare module "@stencil/core" {
5393
5923
  * Uses design tokens for gap values.
5394
5924
  */
5395
5925
  "af-stack": LocalJSX.AfStack & JSXBase.HTMLAttributes<HTMLAfStackElement>;
5926
+ /**
5927
+ * Individual stat — a large value (e.g. "1B+") paired with a descriptive label.
5928
+ * Intended as a slotted child of `af-stats-row`, but renders standalone too.
5929
+ * Colour is inherited from the ancestor theme context (`af-section` /
5930
+ * `af-card` / `af-theme-override`) via the `--af-typography-*` tokens that
5931
+ * `af-heading` and `af-text` already consume — no theme prop needed here.
5932
+ */
5933
+ "af-stat": LocalJSX.AfStat & JSXBase.HTMLAttributes<HTMLAfStatElement>;
5934
+ /**
5935
+ * Layout container for a horizontal row of `af-stat` children.
5936
+ * Flex row that wraps to a grid on narrow viewports. Uses `scoped: true`
5937
+ * so slotted `<af-stat>` children stay in the light DOM and inherit the
5938
+ * ancestor theme (`af-section`) via the cascaded `.theme-*` class.
5939
+ * Intentionally has **no `theme` prop** — a stats row is always flush
5940
+ * against its section background, so a local theme would fight the
5941
+ * ancestor. If you need a different background for the row, wrap it in
5942
+ * its own `af-section` or `af-theme-override`.
5943
+ */
5944
+ "af-stats-row": LocalJSX.AfStatsRow & JSXBase.HTMLAttributes<HTMLAfStatsRowElement>;
5396
5945
  /**
5397
5946
  * Stepper composite for "Sign up / Upload / See results"-style marketing
5398
5947
  * flows. Renders children `af-stepper-step` elements in a horizontal row