@affinda/wc 0.0.20 → 0.0.21

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 (442) hide show
  1. package/dist/affinda/af-accordion-item.entry.esm.js.map +1 -1
  2. package/dist/affinda/af-button.entry.esm.js.map +1 -1
  3. package/dist/affinda/af-card.entry.esm.js.map +1 -1
  4. package/dist/affinda/af-client-carousel.entry.esm.js.map +1 -1
  5. package/dist/affinda/af-icon-button.entry.esm.js.map +1 -1
  6. package/dist/affinda/af-icon-text.entry.esm.js.map +1 -1
  7. package/dist/affinda/af-illustrated-card.entry.esm.js.map +1 -1
  8. package/dist/affinda/af-image.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-section.entry.esm.js.map +1 -1
  11. package/dist/affinda/af-stepper-step.entry.esm.js.map +1 -0
  12. package/dist/affinda/af-stepper.entry.esm.js.map +1 -0
  13. package/dist/affinda/af-tag.entry.esm.js.map +1 -1
  14. package/dist/affinda/af-testimonial.entry.esm.js.map +1 -1
  15. package/dist/affinda/af-text-image.entry.esm.js.map +1 -1
  16. package/dist/affinda/af-theme-override.entry.esm.js.map +1 -1
  17. package/dist/affinda/af-typography-lockup.entry.esm.js.map +1 -1
  18. package/dist/affinda/affinda.esm.js +1 -1
  19. package/dist/affinda/index.esm.js +1 -1
  20. package/dist/affinda/p-07efc7a0.entry.js +2 -0
  21. package/dist/affinda/{p-8f24dfe3.entry.js.map → p-07efc7a0.entry.js.map} +1 -1
  22. package/dist/affinda/p-08143c7e.entry.js +2 -0
  23. package/dist/affinda/{p-63314e14.entry.js.map → p-08143c7e.entry.js.map} +1 -1
  24. package/dist/affinda/{p-01993cc8.entry.js → p-0fb16377.entry.js} +2 -2
  25. package/dist/affinda/p-122b6e96.entry.js +2 -0
  26. package/dist/affinda/p-122b6e96.entry.js.map +1 -0
  27. package/dist/affinda/{p-3d2fb635.entry.js → p-1a87dd1c.entry.js} +2 -2
  28. package/dist/affinda/p-202bac33.entry.js +2 -0
  29. package/dist/affinda/p-2e50c27d.entry.js +2 -0
  30. package/dist/affinda/{p-920e6d30.entry.js.map → p-2e50c27d.entry.js.map} +1 -1
  31. package/dist/affinda/{p-adacb8c4.entry.js → p-2e8682a0.entry.js} +2 -2
  32. package/dist/affinda/{p-266af3e1.entry.js → p-3642589b.entry.js} +2 -2
  33. package/dist/affinda/{p-4c5f92a9.entry.js → p-391bb085.entry.js} +2 -2
  34. package/dist/affinda/{p-d51c4b1b.entry.js → p-3fc2a3dc.entry.js} +2 -2
  35. package/dist/affinda/{p-f9e7cf8f.entry.js → p-45f76ad4.entry.js} +2 -2
  36. package/dist/affinda/p-4fcb61d1.entry.js +2 -0
  37. package/dist/affinda/{p-2e5e4960.entry.js.map → p-4fcb61d1.entry.js.map} +1 -1
  38. package/dist/affinda/p-517543bd.entry.js +2 -0
  39. package/dist/affinda/{p-96df0106.entry.js.map → p-517543bd.entry.js.map} +1 -1
  40. package/dist/affinda/{p-c72cfcbd.entry.js → p-5591bc79.entry.js} +2 -2
  41. package/dist/affinda/{p-c74481bd.entry.js → p-6179957e.entry.js} +2 -2
  42. package/dist/affinda/{p-9e21b6c1.entry.js → p-62699653.entry.js} +2 -2
  43. package/dist/affinda/p-6a5fa86a.entry.js +2 -0
  44. package/dist/affinda/{p-68f1f661.entry.js.map → p-6a5fa86a.entry.js.map} +1 -1
  45. package/dist/affinda/p-76475b41.entry.js +2 -0
  46. package/dist/affinda/{p-331f9627.entry.js.map → p-76475b41.entry.js.map} +1 -1
  47. package/dist/affinda/p-78ff69a4.entry.js +2 -0
  48. package/dist/affinda/p-78ff69a4.entry.js.map +1 -0
  49. package/dist/affinda/{p-0b5bc045.entry.js → p-79e6fc73.entry.js} +2 -2
  50. package/dist/affinda/p-79e6fc73.entry.js.map +1 -0
  51. package/dist/affinda/{p-db9249e4.entry.js → p-7da3a28f.entry.js} +2 -2
  52. package/dist/affinda/{p-e7d8d909.entry.js → p-86a9ff3e.entry.js} +2 -2
  53. package/dist/affinda/p-9242c8d1.entry.js +2 -0
  54. package/dist/affinda/p-9242c8d1.entry.js.map +1 -0
  55. package/dist/affinda/p-933560e0.entry.js +2 -0
  56. package/dist/affinda/{p-16f808d5.entry.js.map → p-933560e0.entry.js.map} +1 -1
  57. package/dist/affinda/{p-e9bc1739.entry.js → p-a53d5549.entry.js} +2 -2
  58. package/dist/affinda/{p-02830771.entry.js → p-accd917e.entry.js} +2 -2
  59. package/dist/affinda/{p-cc4e73dc.entry.js → p-ad9b0eec.entry.js} +2 -2
  60. package/dist/affinda/p-b18767cf.entry.js +2 -0
  61. package/dist/affinda/{p-57eae3cd.entry.js.map → p-b18767cf.entry.js.map} +1 -1
  62. package/dist/affinda/p-b85e2bff.entry.js +2 -0
  63. package/dist/affinda/{p-1c32cfcb.entry.js.map → p-b85e2bff.entry.js.map} +1 -1
  64. package/dist/affinda/{p-d90366f6.entry.js → p-bb67cf12.entry.js} +2 -2
  65. package/dist/affinda/p-bb67cf12.entry.js.map +1 -0
  66. package/dist/affinda/{p-b10103f4.entry.js → p-c01eaa85.entry.js} +2 -2
  67. package/dist/affinda/p-c225ac8c.entry.js +2 -0
  68. package/dist/affinda/p-c225ac8c.entry.js.map +1 -0
  69. package/dist/affinda/{p-288c2656.entry.js → p-c3d7872c.entry.js} +2 -2
  70. package/dist/affinda/{p-af25dad7.entry.js → p-c51a2687.entry.js} +2 -2
  71. package/dist/affinda/{p-9de05d1d.entry.js → p-d28b0860.entry.js} +2 -2
  72. package/dist/affinda/p-d74a7ae9.entry.js +2 -0
  73. package/dist/affinda/{p-d47a77e2.entry.js → p-e2f555fc.entry.js} +2 -2
  74. package/dist/affinda/{p-e156a8bb.entry.js → p-e37fea2f.entry.js} +2 -2
  75. package/dist/affinda/{p-b56e9e2d.entry.js → p-ea02610f.entry.js} +2 -2
  76. package/dist/affinda/p-ea0ccbce.entry.js +2 -0
  77. package/dist/affinda/p-eebb5101.entry.js +2 -0
  78. package/dist/affinda/{p-8f528f9d.entry.js.map → p-eebb5101.entry.js.map} +1 -1
  79. package/dist/affinda/p-f1dd31bd.entry.js +2 -0
  80. package/dist/affinda/p-f1dd31bd.entry.js.map +1 -0
  81. package/dist/affinda/{p-080cf84f.entry.js → p-f4d2a07d.entry.js} +2 -2
  82. package/dist/affinda/{p-f7a13cd3.entry.js → p-f78dd237.entry.js} +2 -2
  83. package/dist/affinda/p-f8bdddf5.entry.js +2 -0
  84. package/dist/affinda/{p-b2338fab.entry.js.map → p-f8bdddf5.entry.js.map} +1 -1
  85. package/dist/cjs/af-accordion-item.cjs.entry.js +1 -27
  86. package/dist/cjs/af-accordion-item.entry.cjs.js.map +1 -1
  87. package/dist/cjs/af-accordion.cjs.entry.js +1 -1
  88. package/dist/cjs/af-button.cjs.entry.js +5 -4
  89. package/dist/cjs/af-button.entry.cjs.js.map +1 -1
  90. package/dist/cjs/af-card.cjs.entry.js +2 -2
  91. package/dist/cjs/af-card.entry.cjs.js.map +1 -1
  92. package/dist/cjs/af-center.cjs.entry.js +1 -1
  93. package/dist/cjs/af-client-carousel.cjs.entry.js +11 -1
  94. package/dist/cjs/af-client-carousel.entry.cjs.js.map +1 -1
  95. package/dist/cjs/af-contact-item.cjs.entry.js +1 -1
  96. package/dist/cjs/af-divider.cjs.entry.js +1 -1
  97. package/dist/cjs/af-feature-accordion.cjs.entry.js +2 -2
  98. package/dist/cjs/af-feature-grid.cjs.entry.js +1 -1
  99. package/dist/cjs/af-footer-column.cjs.entry.js +1 -1
  100. package/dist/cjs/af-footer-link.cjs.entry.js +1 -1
  101. package/dist/cjs/af-footer.cjs.entry.js +1 -1
  102. package/dist/cjs/af-grid.cjs.entry.js +2 -2
  103. package/dist/cjs/af-icon-box.cjs.entry.js +1 -1
  104. package/dist/cjs/af-icon-button.cjs.entry.js +1 -1
  105. package/dist/cjs/af-icon-button.entry.cjs.js.map +1 -1
  106. package/dist/cjs/af-icon-text.cjs.entry.js +1 -1
  107. package/dist/cjs/af-icon-text.entry.cjs.js.map +1 -1
  108. package/dist/cjs/af-illustrated-card.cjs.entry.js +1 -1
  109. package/dist/cjs/af-illustrated-card.entry.cjs.js.map +1 -1
  110. package/dist/cjs/af-image.cjs.entry.js +12 -2
  111. package/dist/cjs/af-image.entry.cjs.js.map +1 -1
  112. package/dist/cjs/af-in-page-banner.cjs.entry.js +2 -2
  113. package/dist/cjs/af-in-page-banner.entry.cjs.js.map +1 -1
  114. package/dist/cjs/af-inline.cjs.entry.js +1 -1
  115. package/dist/cjs/af-logo-well.cjs.entry.js +1 -1
  116. package/dist/cjs/af-nav-accordion-item.cjs.entry.js +2 -2
  117. package/dist/cjs/af-nav-accordion.cjs.entry.js +1 -1
  118. package/dist/cjs/af-nav-menu-nest.cjs.entry.js +1 -1
  119. package/dist/cjs/af-nav-menu.cjs.entry.js +1 -1
  120. package/dist/cjs/af-number-badge.cjs.entry.js +1 -1
  121. package/dist/cjs/af-progress-line.cjs.entry.js +2 -2
  122. package/dist/cjs/af-section.cjs.entry.js +3 -3
  123. package/dist/cjs/af-section.entry.cjs.js.map +1 -1
  124. package/dist/cjs/af-show.cjs.entry.js +1 -1
  125. package/dist/cjs/af-social-link.cjs.entry.js +1 -1
  126. package/dist/cjs/af-spacer.cjs.entry.js +1 -1
  127. package/dist/cjs/af-split-section.cjs.entry.js +2 -2
  128. package/dist/cjs/af-stack.cjs.entry.js +1 -1
  129. package/dist/cjs/af-stepper-step.cjs.entry.js +23 -0
  130. package/dist/cjs/af-stepper-step.entry.cjs.js.map +1 -0
  131. package/dist/cjs/af-stepper.cjs.entry.js +34 -0
  132. package/dist/cjs/af-stepper.entry.cjs.js.map +1 -0
  133. package/dist/cjs/af-tag.cjs.entry.js +7 -8
  134. package/dist/cjs/af-tag.entry.cjs.js.map +1 -1
  135. package/dist/cjs/af-testimonial-carousel.cjs.entry.js +1 -1
  136. package/dist/cjs/af-testimonial-stat.cjs.entry.js +1 -1
  137. package/dist/cjs/af-testimonial.cjs.entry.js +3 -3
  138. package/dist/cjs/af-testimonial.entry.cjs.js.map +1 -1
  139. package/dist/cjs/af-text-image-nest.cjs.entry.js +1 -1
  140. package/dist/cjs/af-text-image.cjs.entry.js +1 -1
  141. package/dist/cjs/af-text-image.entry.cjs.js.map +1 -1
  142. package/dist/cjs/af-theme-override.cjs.entry.js +2 -2
  143. package/dist/cjs/af-theme-override.entry.cjs.js.map +1 -1
  144. package/dist/cjs/af-typography-lockup.cjs.entry.js +21 -4
  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/loader.cjs.js +1 -1
  150. package/dist/collection/collection-manifest.json +2 -0
  151. package/dist/collection/components/af-accordion/af-accordion.js +1 -1
  152. package/dist/collection/components/af-accordion-item/af-accordion-item.js +1 -27
  153. package/dist/collection/components/af-accordion-item/af-accordion-item.js.map +1 -1
  154. package/dist/collection/components/af-button/af-button.css +24 -24
  155. package/dist/collection/components/af-button/af-button.js +10 -9
  156. package/dist/collection/components/af-button/af-button.js.map +1 -1
  157. package/dist/collection/components/af-card/af-card.css +2 -2
  158. package/dist/collection/components/af-card/af-card.js +1 -1
  159. package/dist/collection/components/af-center/af-center.js +1 -1
  160. package/dist/collection/components/af-client-carousel/af-client-carousel.js +33 -2
  161. package/dist/collection/components/af-client-carousel/af-client-carousel.js.map +1 -1
  162. package/dist/collection/components/af-contact-item/af-contact-item.js +1 -1
  163. package/dist/collection/components/af-divider/af-divider.js +1 -1
  164. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +2 -2
  165. package/dist/collection/components/af-feature-grid/af-feature-grid.js +1 -1
  166. package/dist/collection/components/af-footer/af-footer.js +1 -1
  167. package/dist/collection/components/af-footer-column/af-footer-column.js +1 -1
  168. package/dist/collection/components/af-footer-link/af-footer-link.js +1 -1
  169. package/dist/collection/components/af-grid/af-grid.js +2 -2
  170. package/dist/collection/components/af-icon-box/af-icon-box.js +1 -1
  171. package/dist/collection/components/af-icon-button/af-icon-button.css +2 -2
  172. package/dist/collection/components/af-icon-text/af-icon-text.js +3 -3
  173. package/dist/collection/components/af-icon-text/af-icon-text.js.map +1 -1
  174. package/dist/collection/components/af-illustrated-card/af-illustrated-card.js +4 -3
  175. package/dist/collection/components/af-illustrated-card/af-illustrated-card.js.map +1 -1
  176. package/dist/collection/components/af-image/af-image.css +21 -4
  177. package/dist/collection/components/af-image/af-image.js +33 -1
  178. package/dist/collection/components/af-image/af-image.js.map +1 -1
  179. package/dist/collection/components/af-in-page-banner/af-in-page-banner.css +3 -3
  180. package/dist/collection/components/af-in-page-banner/af-in-page-banner.js +11 -1
  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 +1 -1
  183. package/dist/collection/components/af-logo-well/af-logo-well.js +1 -1
  184. package/dist/collection/components/af-nav-accordion/af-nav-accordion.js +1 -1
  185. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.js +2 -2
  186. package/dist/collection/components/af-nav-menu/af-nav-menu.js +1 -1
  187. package/dist/collection/components/af-nav-menu-nest/af-nav-menu-nest.js +1 -1
  188. package/dist/collection/components/af-number-badge/af-number-badge.js +3 -3
  189. package/dist/collection/components/af-progress-line/af-progress-line.js +2 -2
  190. package/dist/collection/components/af-section/af-section.css +15 -15
  191. package/dist/collection/components/af-section/af-section.js +2 -2
  192. package/dist/collection/components/af-show/af-show.js +1 -1
  193. package/dist/collection/components/af-social-link/af-social-link.js +1 -1
  194. package/dist/collection/components/af-spacer/af-spacer.js +1 -1
  195. package/dist/collection/components/af-split-section/af-split-section.js +2 -2
  196. package/dist/collection/components/af-stack/af-stack.js +1 -1
  197. package/dist/collection/components/af-stepper/af-stepper.css +54 -0
  198. package/dist/collection/components/af-stepper/af-stepper.js +83 -0
  199. package/dist/collection/components/af-stepper/af-stepper.js.map +1 -0
  200. package/dist/collection/components/af-stepper-step/af-stepper-step.css +85 -0
  201. package/dist/collection/components/af-stepper-step/af-stepper-step.js +60 -0
  202. package/dist/collection/components/af-stepper-step/af-stepper-step.js.map +1 -0
  203. package/dist/collection/components/af-tab/af-tab.js +1 -1
  204. package/dist/collection/components/af-tab-bar/af-tab-bar.js +2 -2
  205. package/dist/collection/components/af-tag/af-tag.css +41 -21
  206. package/dist/collection/components/af-tag/af-tag.js +18 -15
  207. package/dist/collection/components/af-tag/af-tag.js.map +1 -1
  208. package/dist/collection/components/af-testimonial/af-testimonial.css +28 -6
  209. package/dist/collection/components/af-testimonial/af-testimonial.js +14 -6
  210. package/dist/collection/components/af-testimonial/af-testimonial.js.map +1 -1
  211. package/dist/collection/components/af-testimonial-carousel/af-testimonial-carousel.js +1 -1
  212. package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.js +1 -1
  213. package/dist/collection/components/af-text-image/af-text-image.css +5 -3
  214. package/dist/collection/components/af-text-image-nest/af-text-image-nest.js +1 -1
  215. package/dist/collection/components/af-theme-override/af-theme-override.css +15 -15
  216. package/dist/collection/components/af-theme-override/af-theme-override.js +1 -1
  217. package/dist/collection/components/af-typography-lockup/af-typography-lockup.css +22 -4
  218. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js +60 -3
  219. package/dist/collection/components/af-typography-lockup/af-typography-lockup.js.map +1 -1
  220. package/dist/collection/components/af-video-container/af-video-container.js +1 -1
  221. package/dist/collection/components/af-visually-hidden/af-visually-hidden.js +1 -1
  222. package/dist/components/af-accordion-item.js +1 -27
  223. package/dist/components/af-accordion-item.js.map +1 -1
  224. package/dist/components/af-accordion.js +1 -1
  225. package/dist/components/af-button.js +1 -1
  226. package/dist/components/af-card.js +1 -1
  227. package/dist/components/af-center.js +1 -1
  228. package/dist/components/af-client-carousel.js +13 -2
  229. package/dist/components/af-client-carousel.js.map +1 -1
  230. package/dist/components/af-contact-item.js +1 -1
  231. package/dist/components/af-divider.js +1 -1
  232. package/dist/components/af-feature-accordion.js +2 -2
  233. package/dist/components/af-feature-card.js +1 -1
  234. package/dist/components/af-feature-grid.js +2 -2
  235. package/dist/components/af-footer-column.js +1 -1
  236. package/dist/components/af-footer-link.js +1 -1
  237. package/dist/components/af-footer.js +1 -1
  238. package/dist/components/af-grid-callout.js +1 -1
  239. package/dist/components/af-grid.js +2 -2
  240. package/dist/components/af-icon-box.js +1 -1
  241. package/dist/components/af-icon-button.js +1 -1
  242. package/dist/components/af-icon-text.js +3 -3
  243. package/dist/components/af-icon-text.js.map +1 -1
  244. package/dist/components/af-illustrated-card.js +1 -1
  245. package/dist/components/af-image.js +1 -1
  246. package/dist/components/af-in-page-banner.js +3 -3
  247. package/dist/components/af-in-page-banner.js.map +1 -1
  248. package/dist/components/af-inline.js +1 -1
  249. package/dist/components/af-logo-well.js +1 -1
  250. package/dist/components/af-nav-accordion-item.js +2 -2
  251. package/dist/components/af-nav-accordion.js +1 -1
  252. package/dist/components/af-nav-menu-nest.js +1 -1
  253. package/dist/components/af-nav-menu.js +1 -1
  254. package/dist/components/af-number-badge.js +1 -1
  255. package/dist/components/af-progress-line.js +1 -1
  256. package/dist/components/af-section.js +3 -3
  257. package/dist/components/af-section.js.map +1 -1
  258. package/dist/components/af-show.js +1 -1
  259. package/dist/components/af-social-link.js +1 -1
  260. package/dist/components/af-spacer.js +1 -1
  261. package/dist/components/af-split-section.js +2 -2
  262. package/dist/components/af-stack.js +1 -1
  263. package/dist/components/af-stepper-step.d.ts +11 -0
  264. package/dist/components/af-stepper-step.js +44 -0
  265. package/dist/components/af-stepper-step.js.map +1 -0
  266. package/dist/components/af-stepper.d.ts +11 -0
  267. package/dist/components/af-stepper.js +55 -0
  268. package/dist/components/af-stepper.js.map +1 -0
  269. package/dist/components/af-tag.js +1 -1
  270. package/dist/components/af-testimonial-carousel.js +2 -2
  271. package/dist/components/af-testimonial-stat.js +1 -1
  272. package/dist/components/af-testimonial.js +9 -15
  273. package/dist/components/af-testimonial.js.map +1 -1
  274. package/dist/components/af-text-image-nest.js +1 -1
  275. package/dist/components/af-text-image.js +2 -2
  276. package/dist/components/af-text-image.js.map +1 -1
  277. package/dist/components/af-theme-override.js +2 -2
  278. package/dist/components/af-theme-override.js.map +1 -1
  279. package/dist/components/af-typography-lockup.js +1 -1
  280. package/dist/components/af-video-container.js +1 -1
  281. package/dist/components/af-visually-hidden.js +1 -1
  282. package/dist/components/index.js +6 -6
  283. package/dist/components/p-80hb0CR2.js +71 -0
  284. package/dist/components/p-80hb0CR2.js.map +1 -0
  285. package/dist/components/p-BHyABfs0.js +92 -0
  286. package/dist/components/p-BHyABfs0.js.map +1 -0
  287. package/dist/components/p-BIgPDyJK.js +103 -0
  288. package/dist/components/p-BIgPDyJK.js.map +1 -0
  289. package/dist/components/{p-C8_mFdv5.js → p-BfAQ7eko.js} +4 -4
  290. package/dist/components/p-BfAQ7eko.js.map +1 -0
  291. package/dist/components/{p-D66k2SSB.js → p-CFBeRDmV.js} +4 -4
  292. package/dist/components/{p-D66k2SSB.js.map → p-CFBeRDmV.js.map} +1 -1
  293. package/dist/components/p-CNtgySkk.js +48 -0
  294. package/dist/components/p-CNtgySkk.js.map +1 -0
  295. package/dist/components/{p-BUoRUEpQ.js → p-D_xTKF7j.js} +3 -3
  296. package/dist/components/{p-BUoRUEpQ.js.map → p-D_xTKF7j.js.map} +1 -1
  297. package/dist/components/{p-CnNV1GZE.js → p-DcJ8wKzl.js} +5 -5
  298. package/dist/components/p-DcJ8wKzl.js.map +1 -0
  299. package/dist/components/p-DnHD91HB.js +57 -0
  300. package/dist/components/p-DnHD91HB.js.map +1 -0
  301. package/dist/components/{p-WmKa3rDn.js → p-pudFjW3W.js} +4 -4
  302. package/dist/components/{p-WmKa3rDn.js.map → p-pudFjW3W.js.map} +1 -1
  303. package/dist/esm/af-accordion-item.entry.js +1 -27
  304. package/dist/esm/af-accordion-item.entry.js.map +1 -1
  305. package/dist/esm/af-accordion.entry.js +1 -1
  306. package/dist/esm/af-button.entry.js +5 -4
  307. package/dist/esm/af-button.entry.js.map +1 -1
  308. package/dist/esm/af-card.entry.js +2 -2
  309. package/dist/esm/af-card.entry.js.map +1 -1
  310. package/dist/esm/af-center.entry.js +1 -1
  311. package/dist/esm/af-client-carousel.entry.js +11 -1
  312. package/dist/esm/af-client-carousel.entry.js.map +1 -1
  313. package/dist/esm/af-contact-item.entry.js +1 -1
  314. package/dist/esm/af-divider.entry.js +1 -1
  315. package/dist/esm/af-feature-accordion.entry.js +2 -2
  316. package/dist/esm/af-feature-grid.entry.js +1 -1
  317. package/dist/esm/af-footer-column.entry.js +1 -1
  318. package/dist/esm/af-footer-link.entry.js +1 -1
  319. package/dist/esm/af-footer.entry.js +1 -1
  320. package/dist/esm/af-grid.entry.js +2 -2
  321. package/dist/esm/af-icon-box.entry.js +1 -1
  322. package/dist/esm/af-icon-button.entry.js +1 -1
  323. package/dist/esm/af-icon-button.entry.js.map +1 -1
  324. package/dist/esm/af-icon-text.entry.js +1 -1
  325. package/dist/esm/af-icon-text.entry.js.map +1 -1
  326. package/dist/esm/af-illustrated-card.entry.js +1 -1
  327. package/dist/esm/af-illustrated-card.entry.js.map +1 -1
  328. package/dist/esm/af-image.entry.js +12 -2
  329. package/dist/esm/af-image.entry.js.map +1 -1
  330. package/dist/esm/af-in-page-banner.entry.js +2 -2
  331. package/dist/esm/af-in-page-banner.entry.js.map +1 -1
  332. package/dist/esm/af-inline.entry.js +1 -1
  333. package/dist/esm/af-logo-well.entry.js +1 -1
  334. package/dist/esm/af-nav-accordion-item.entry.js +2 -2
  335. package/dist/esm/af-nav-accordion.entry.js +1 -1
  336. package/dist/esm/af-nav-menu-nest.entry.js +1 -1
  337. package/dist/esm/af-nav-menu.entry.js +1 -1
  338. package/dist/esm/af-number-badge.entry.js +1 -1
  339. package/dist/esm/af-progress-line.entry.js +2 -2
  340. package/dist/esm/af-section.entry.js +3 -3
  341. package/dist/esm/af-section.entry.js.map +1 -1
  342. package/dist/esm/af-show.entry.js +1 -1
  343. package/dist/esm/af-social-link.entry.js +1 -1
  344. package/dist/esm/af-spacer.entry.js +1 -1
  345. package/dist/esm/af-split-section.entry.js +2 -2
  346. package/dist/esm/af-stack.entry.js +1 -1
  347. package/dist/esm/af-stepper-step.entry.js +21 -0
  348. package/dist/esm/af-stepper-step.entry.js.map +1 -0
  349. package/dist/esm/af-stepper.entry.js +32 -0
  350. package/dist/esm/af-stepper.entry.js.map +1 -0
  351. package/dist/esm/af-tag.entry.js +7 -8
  352. package/dist/esm/af-tag.entry.js.map +1 -1
  353. package/dist/esm/af-testimonial-carousel.entry.js +1 -1
  354. package/dist/esm/af-testimonial-stat.entry.js +1 -1
  355. package/dist/esm/af-testimonial.entry.js +3 -3
  356. package/dist/esm/af-testimonial.entry.js.map +1 -1
  357. package/dist/esm/af-text-image-nest.entry.js +1 -1
  358. package/dist/esm/af-text-image.entry.js +1 -1
  359. package/dist/esm/af-text-image.entry.js.map +1 -1
  360. package/dist/esm/af-theme-override.entry.js +2 -2
  361. package/dist/esm/af-theme-override.entry.js.map +1 -1
  362. package/dist/esm/af-typography-lockup.entry.js +21 -4
  363. package/dist/esm/af-typography-lockup.entry.js.map +1 -1
  364. package/dist/esm/af-video-container.entry.js +1 -1
  365. package/dist/esm/af-visually-hidden.entry.js +1 -1
  366. package/dist/esm/affinda.js +1 -1
  367. package/dist/esm/loader.js +1 -1
  368. package/dist/types/components/af-button/af-button.d.ts +6 -5
  369. package/dist/types/components/af-client-carousel/af-client-carousel.d.ts +11 -1
  370. package/dist/types/components/af-icon-text/af-icon-text.d.ts +2 -2
  371. package/dist/types/components/af-illustrated-card/af-illustrated-card.d.ts +3 -2
  372. package/dist/types/components/af-image/af-image.d.ts +10 -0
  373. package/dist/types/components/af-in-page-banner/af-in-page-banner.d.ts +10 -0
  374. package/dist/types/components/af-stepper/af-stepper.d.ts +30 -0
  375. package/dist/types/components/af-stepper-step/af-stepper-step.d.ts +18 -0
  376. package/dist/types/components/af-tag/af-tag.d.ts +10 -7
  377. package/dist/types/components/af-testimonial/af-testimonial.d.ts +11 -2
  378. package/dist/types/components/af-typography-lockup/af-typography-lockup.d.ts +15 -0
  379. package/dist/types/components.d.ts +268 -38
  380. package/package.json +4 -4
  381. package/dist/affinda/p-0b5bc045.entry.js.map +0 -1
  382. package/dist/affinda/p-16f808d5.entry.js +0 -2
  383. package/dist/affinda/p-1c32cfcb.entry.js +0 -2
  384. package/dist/affinda/p-2e5e4960.entry.js +0 -2
  385. package/dist/affinda/p-331f9627.entry.js +0 -2
  386. package/dist/affinda/p-57eae3cd.entry.js +0 -2
  387. package/dist/affinda/p-6294b6d1.entry.js +0 -2
  388. package/dist/affinda/p-6294b6d1.entry.js.map +0 -1
  389. package/dist/affinda/p-63314e14.entry.js +0 -2
  390. package/dist/affinda/p-68f1f661.entry.js +0 -2
  391. package/dist/affinda/p-7792cd53.entry.js +0 -2
  392. package/dist/affinda/p-7792cd53.entry.js.map +0 -1
  393. package/dist/affinda/p-8f24dfe3.entry.js +0 -2
  394. package/dist/affinda/p-8f528f9d.entry.js +0 -2
  395. package/dist/affinda/p-920e6d30.entry.js +0 -2
  396. package/dist/affinda/p-96df0106.entry.js +0 -2
  397. package/dist/affinda/p-b0d668d0.entry.js +0 -2
  398. package/dist/affinda/p-b0d668d0.entry.js.map +0 -1
  399. package/dist/affinda/p-b2338fab.entry.js +0 -2
  400. package/dist/affinda/p-bd7170d7.entry.js +0 -2
  401. package/dist/affinda/p-d6e55455.entry.js +0 -2
  402. package/dist/affinda/p-d90366f6.entry.js.map +0 -1
  403. package/dist/affinda/p-fefe9597.entry.js +0 -2
  404. package/dist/components/p-Bi5ytUXg.js +0 -58
  405. package/dist/components/p-Bi5ytUXg.js.map +0 -1
  406. package/dist/components/p-BvIMp8pz.js +0 -37
  407. package/dist/components/p-BvIMp8pz.js.map +0 -1
  408. package/dist/components/p-C8_mFdv5.js.map +0 -1
  409. package/dist/components/p-CnNV1GZE.js.map +0 -1
  410. package/dist/components/p-DBnL9UHx.js +0 -91
  411. package/dist/components/p-DBnL9UHx.js.map +0 -1
  412. package/dist/components/p-JepBVz99.js +0 -71
  413. package/dist/components/p-JepBVz99.js.map +0 -1
  414. package/dist/components/p-hOnulRmz.js +0 -84
  415. package/dist/components/p-hOnulRmz.js.map +0 -1
  416. /package/dist/affinda/{p-01993cc8.entry.js.map → p-0fb16377.entry.js.map} +0 -0
  417. /package/dist/affinda/{p-3d2fb635.entry.js.map → p-1a87dd1c.entry.js.map} +0 -0
  418. /package/dist/affinda/{p-bd7170d7.entry.js.map → p-202bac33.entry.js.map} +0 -0
  419. /package/dist/affinda/{p-adacb8c4.entry.js.map → p-2e8682a0.entry.js.map} +0 -0
  420. /package/dist/affinda/{p-266af3e1.entry.js.map → p-3642589b.entry.js.map} +0 -0
  421. /package/dist/affinda/{p-4c5f92a9.entry.js.map → p-391bb085.entry.js.map} +0 -0
  422. /package/dist/affinda/{p-d51c4b1b.entry.js.map → p-3fc2a3dc.entry.js.map} +0 -0
  423. /package/dist/affinda/{p-f9e7cf8f.entry.js.map → p-45f76ad4.entry.js.map} +0 -0
  424. /package/dist/affinda/{p-c72cfcbd.entry.js.map → p-5591bc79.entry.js.map} +0 -0
  425. /package/dist/affinda/{p-c74481bd.entry.js.map → p-6179957e.entry.js.map} +0 -0
  426. /package/dist/affinda/{p-9e21b6c1.entry.js.map → p-62699653.entry.js.map} +0 -0
  427. /package/dist/affinda/{p-db9249e4.entry.js.map → p-7da3a28f.entry.js.map} +0 -0
  428. /package/dist/affinda/{p-e7d8d909.entry.js.map → p-86a9ff3e.entry.js.map} +0 -0
  429. /package/dist/affinda/{p-e9bc1739.entry.js.map → p-a53d5549.entry.js.map} +0 -0
  430. /package/dist/affinda/{p-02830771.entry.js.map → p-accd917e.entry.js.map} +0 -0
  431. /package/dist/affinda/{p-cc4e73dc.entry.js.map → p-ad9b0eec.entry.js.map} +0 -0
  432. /package/dist/affinda/{p-b10103f4.entry.js.map → p-c01eaa85.entry.js.map} +0 -0
  433. /package/dist/affinda/{p-288c2656.entry.js.map → p-c3d7872c.entry.js.map} +0 -0
  434. /package/dist/affinda/{p-af25dad7.entry.js.map → p-c51a2687.entry.js.map} +0 -0
  435. /package/dist/affinda/{p-9de05d1d.entry.js.map → p-d28b0860.entry.js.map} +0 -0
  436. /package/dist/affinda/{p-d6e55455.entry.js.map → p-d74a7ae9.entry.js.map} +0 -0
  437. /package/dist/affinda/{p-d47a77e2.entry.js.map → p-e2f555fc.entry.js.map} +0 -0
  438. /package/dist/affinda/{p-e156a8bb.entry.js.map → p-e37fea2f.entry.js.map} +0 -0
  439. /package/dist/affinda/{p-b56e9e2d.entry.js.map → p-ea02610f.entry.js.map} +0 -0
  440. /package/dist/affinda/{p-fefe9597.entry.js.map → p-ea0ccbce.entry.js.map} +0 -0
  441. /package/dist/affinda/{p-080cf84f.entry.js.map → p-f4d2a07d.entry.js.map} +0 -0
  442. /package/dist/affinda/{p-f7a13cd3.entry.js.map → p-f78dd237.entry.js.map} +0 -0
@@ -31,30 +31,9 @@ const AfAccordionItem$1 = /*@__PURE__*/ proxyCustomElement(class AfAccordionItem
31
31
  }
32
32
  }
33
33
  componentDidLoad() {
34
- // #region agent log
35
- fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ location: 'af-accordion-item.tsx:componentDidLoad', message: 'Component loaded', data: { itemId: this.itemId, hasShadowRoot: !!this.el.shadowRoot }, timestamp: Date.now(), sessionId: 'debug-session', hypothesisId: 'E' }) }).catch(() => { });
36
- // #endregion
37
- // #region agent log
38
- const shadowRoot = this.el.shadowRoot;
39
- const triggerSlot = shadowRoot?.querySelector('slot[name="trigger"]');
40
- const assignedNodes = triggerSlot?.assignedNodes() || [];
41
- const assignedElements = triggerSlot?.assignedElements() || [];
42
- fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ location: 'af-accordion-item.tsx:componentDidLoad:slotCheck', message: 'Checking trigger slot content', data: { hasTriggerSlot: !!triggerSlot, assignedNodesCount: assignedNodes.length, assignedElementsCount: assignedElements.length, assignedContent: assignedElements.map(el => ({ tagName: el.tagName, textContent: el.textContent })) }, timestamp: Date.now(), sessionId: 'debug-session', hypothesisId: 'A' }) }).catch(() => { });
43
- // #endregion
44
- // #region agent log
45
- const triggerContent = shadowRoot?.querySelector('.trigger-content');
46
- const triggerContentStyles = triggerContent ? getComputedStyle(triggerContent) : null;
47
- fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ location: 'af-accordion-item.tsx:componentDidLoad:styleCheck', message: 'Checking trigger-content styles', data: { hasTriggerContent: !!triggerContent, width: triggerContent?.offsetWidth, height: triggerContent?.offsetHeight, color: triggerContentStyles?.color, display: triggerContentStyles?.display, visibility: triggerContentStyles?.visibility }, timestamp: Date.now(), sessionId: 'debug-session', hypothesisId: 'B,C' }) }).catch(() => { });
48
- // #endregion
49
- // #region agent log
50
- const lightDomChildren = Array.from(this.el.children);
51
- const slottedTrigger = this.el.querySelector('[slot="trigger"]');
52
- fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ location: 'af-accordion-item.tsx:componentDidLoad:lightDomCheck', message: 'Checking light DOM for slotted content', data: { lightDomChildCount: lightDomChildren.length, lightDomTags: lightDomChildren.map(c => c.tagName), hasSlottedTrigger: !!slottedTrigger, slottedTriggerText: slottedTrigger?.textContent }, timestamp: Date.now(), sessionId: 'debug-session', hypothesisId: 'D' }) }).catch(() => { });
53
- // #endregion
54
34
  if (this.open) {
55
35
  this.measureContent();
56
36
  }
57
- // Set up ResizeObserver to handle dynamic content changes
58
37
  this.resizeObserver = new ResizeObserver(() => {
59
38
  if (this.open && this.contentRef) {
60
39
  this.contentHeight = this.contentRef.scrollHeight;
@@ -65,7 +44,6 @@ const AfAccordionItem$1 = /*@__PURE__*/ proxyCustomElement(class AfAccordionItem
65
44
  }
66
45
  }
67
46
  disconnectedCallback() {
68
- // Clean up ResizeObserver
69
47
  if (this.resizeObserver) {
70
48
  this.resizeObserver.disconnect();
71
49
  }
@@ -80,7 +58,6 @@ const AfAccordionItem$1 = /*@__PURE__*/ proxyCustomElement(class AfAccordionItem
80
58
  }
81
59
  }
82
60
  measureContent() {
83
- // Use requestAnimationFrame to ensure DOM has updated before measuring
84
61
  requestAnimationFrame(() => {
85
62
  if (this.contentRef) {
86
63
  this.contentHeight = this.contentRef.scrollHeight;
@@ -88,13 +65,10 @@ const AfAccordionItem$1 = /*@__PURE__*/ proxyCustomElement(class AfAccordionItem
88
65
  });
89
66
  }
90
67
  render() {
91
- // #region agent log
92
- fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ location: 'af-accordion-item.tsx:render', message: 'Render called', data: { itemId: this.itemId, open: this.open }, timestamp: Date.now(), sessionId: 'debug-session', hypothesisId: 'E' }) }).catch(() => { });
93
- // #endregion
94
68
  const contentStyle = {
95
69
  maxHeight: this.open ? `${this.contentHeight}px` : '0px'
96
70
  };
97
- return (h(Host, { key: '3fe538b657584129ecdce848caf5a9425287a354', class: { 'is-open': this.open, 'is-disabled': this.disabled } }, h("div", { key: '6d1766d97738f60f1d21a7f623ef732a15a9e911', class: "accordion-item" }, h("button", { key: '8782c20a4d74f655786586d7d7fd4255a6fc2806', class: "trigger", onClick: this.handleTriggerClick, "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}`, disabled: this.disabled, type: "button" }, h("div", { key: '54aff551c3547148f92c26bc51a42417a36ff4d3', class: "trigger-content" }, h("slot", { key: '5692b3c1b11ff38b3bde8c7dd30a2c2a2e1b5c67', name: "trigger" })), h("div", { key: '88d0a967e3ed518d8355c824f226ad21abf96c0f', class: { 'chevron': true, 'is-open': this.open } }, h("svg", { key: 'd879b4f0a2b6b4de5782c783d2202fb6c9cb73f8', width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, h("path", { key: '590eaf035dc51886a303dee77152c64c227e9ccb', d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("div", { key: '02c882442a9cbe57b4888b07c95f2b6f252f1cc7', id: `content-${this.itemId}`, class: "content-wrapper", style: contentStyle, "aria-hidden": !this.open ? 'true' : 'false' }, h("div", { key: '6975a215a16bcfb27cc76aba7daed2a19d0f143d', class: "content", ref: (el) => (this.contentRef = el) }, h("slot", { key: '9b7d50813485ff195d0105bf2d97d1c032ab5aff' }))))));
71
+ return (h(Host, { key: 'ff3729f635a4248c295dfba2d6251008d1f32681', class: { 'is-open': this.open, 'is-disabled': this.disabled } }, h("div", { key: 'fe39e8b9f2ce4990633cd6ffc6ad3bfb1ebb0b10', class: "accordion-item" }, h("button", { key: '2af78af75525f2e134dfaff97e923ac1aa175b16', class: "trigger", onClick: this.handleTriggerClick, "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `content-${this.itemId}`, disabled: this.disabled, type: "button" }, h("div", { key: '46838ff61494bd828bfe2e3da3c1b11185e03de1', class: "trigger-content" }, h("slot", { key: '81352bc39831c5affaae1ab560523fc66d5c89e2', name: "trigger" })), h("div", { key: '9c8f0319b73c6b100c4ec32d2282f108cd2f3883', class: { 'chevron': true, 'is-open': this.open } }, h("svg", { key: '9640195d155017af1962c3141719c475ee7a0a41', width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor" }, h("path", { key: '4e56533055267c5cf736e69dfc0d6d339d24226a', d: "M6 9l6 6 6-6", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("div", { key: '2756358932fbae9c00d909dfcc444345d6edf56d', id: `content-${this.itemId}`, class: "content-wrapper", style: contentStyle, "aria-hidden": !this.open ? 'true' : 'false' }, h("div", { key: '4c1dc0d3544274dc4b169dfafeb03014fb09b545', class: "content", ref: (el) => (this.contentRef = el) }, h("slot", { key: '3f653cd34f427fc4d895046ef6662675e9e21c3d' }))))));
98
72
  }
99
73
  get el() { return this; }
100
74
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"af-accordion-item.js","mappings":"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","names":["AfAccordionItem","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-accordion-item/af-accordion-item.css?tag=af-accordion-item&encapsulation=shadow","src/components/af-accordion-item/af-accordion-item.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.accordion-item {\n width: 100%;\n}\n\n/* Trigger button - clickable header */\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 16px 0;\n background: transparent;\n border: none;\n border-bottom: 1px solid var(--af-background-border-subtle, #e8eeed);\n cursor: pointer;\n font: inherit;\n text-align: left;\n color: var(--af-typography-body-dark, #14343b);\n transition: background-color 0.2s ease;\n}\n\n.trigger:hover:not(:disabled) {\n background-color: var(--af-background-base-hover, rgba(20, 52, 59, 0.02));\n}\n\n.trigger:focus-visible {\n outline: 2px solid var(--af-background-border-active, #8a7049);\n outline-offset: -2px;\n}\n\n.trigger:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.trigger-content {\n flex: 1;\n min-width: 0;\n}\n\n/* Chevron indicator */\n.chevron {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--af-typography-body-dark, #14343b);\n transition: transform 0.3s ease;\n}\n\n.chevron.is-open {\n transform: rotate(180deg);\n}\n\n/* Content wrapper - handles animation */\n.content-wrapper {\n overflow: hidden;\n transition: max-height 0.3s ease;\n}\n\n.content {\n padding: 0;\n}\n\n/* Disabled state */\n:host(.is-disabled) .trigger {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n:host(.is-disabled) .trigger:hover {\n background-color: transparent;\n}\n\n/* Open state styling */\n:host(.is-open) .trigger {\n border-bottom-color: transparent;\n}\n\n","import { Component, h, Prop, Host, Event, EventEmitter, Element, State, Watch, Method } from '@stencil/core';\n\n/**\n * A single collapsible accordion item with header and content.\n * Can be used standalone or within an af-accordion container.\n * \n * @slot trigger - The clickable header content\n * @slot - The collapsible content (default slot)\n */\n@Component({\n tag: 'af-accordion-item',\n styleUrl: 'af-accordion-item.css',\n shadow: true,\n})\nexport class AfAccordionItem {\n @Element() el!: HTMLElement;\n\n /**\n * Unique identifier for this accordion item.\n * Used by parent af-accordion to track open state.\n */\n @Prop({ reflect: true }) itemId!: string;\n\n /**\n * Whether this item is currently expanded\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = false;\n\n /**\n * Whether this item is disabled (cannot be toggled)\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Emitted when the accordion item is toggled\n */\n @Event({ eventName: 'af-accordion-toggle' }) accordionToggle!: EventEmitter<{ itemId: string; open: boolean }>;\n\n @State() contentHeight: number = 0;\n\n private contentRef?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n\n @Watch('open')\n handleOpenChange(newValue: boolean) {\n if (newValue) {\n this.measureContent();\n }\n }\n\n componentDidLoad() {\n // #region agent log\n fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({location:'af-accordion-item.tsx:componentDidLoad',message:'Component loaded',data:{itemId:this.itemId,hasShadowRoot:!!this.el.shadowRoot},timestamp:Date.now(),sessionId:'debug-session',hypothesisId:'E'})}).catch(()=>{});\n // #endregion\n\n // #region agent log\n const shadowRoot = this.el.shadowRoot;\n const triggerSlot = shadowRoot?.querySelector('slot[name=\"trigger\"]') as HTMLSlotElement | null;\n const assignedNodes = triggerSlot?.assignedNodes() || [];\n const assignedElements = triggerSlot?.assignedElements() || [];\n fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({location:'af-accordion-item.tsx:componentDidLoad:slotCheck',message:'Checking trigger slot content',data:{hasTriggerSlot:!!triggerSlot,assignedNodesCount:assignedNodes.length,assignedElementsCount:assignedElements.length,assignedContent:assignedElements.map(el => ({tagName:(el as Element).tagName,textContent:(el as Element).textContent}))},timestamp:Date.now(),sessionId:'debug-session',hypothesisId:'A'})}).catch(()=>{});\n // #endregion\n\n // #region agent log\n const triggerContent = shadowRoot?.querySelector('.trigger-content') as HTMLElement | null;\n const triggerContentStyles = triggerContent ? getComputedStyle(triggerContent) : null;\n fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({location:'af-accordion-item.tsx:componentDidLoad:styleCheck',message:'Checking trigger-content styles',data:{hasTriggerContent:!!triggerContent,width:triggerContent?.offsetWidth,height:triggerContent?.offsetHeight,color:triggerContentStyles?.color,display:triggerContentStyles?.display,visibility:triggerContentStyles?.visibility},timestamp:Date.now(),sessionId:'debug-session',hypothesisId:'B,C'})}).catch(()=>{});\n // #endregion\n\n // #region agent log\n const lightDomChildren = Array.from(this.el.children);\n const slottedTrigger = this.el.querySelector('[slot=\"trigger\"]');\n fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({location:'af-accordion-item.tsx:componentDidLoad:lightDomCheck',message:'Checking light DOM for slotted content',data:{lightDomChildCount:lightDomChildren.length,lightDomTags:lightDomChildren.map(c => c.tagName),hasSlottedTrigger:!!slottedTrigger,slottedTriggerText:slottedTrigger?.textContent},timestamp:Date.now(),sessionId:'debug-session',hypothesisId:'D'})}).catch(()=>{});\n // #endregion\n\n if (this.open) {\n this.measureContent();\n }\n \n // Set up ResizeObserver to handle dynamic content changes\n this.resizeObserver = new ResizeObserver(() => {\n if (this.open && this.contentRef) {\n this.contentHeight = this.contentRef.scrollHeight;\n }\n });\n \n if (this.contentRef) {\n this.resizeObserver.observe(this.contentRef);\n }\n }\n\n disconnectedCallback() {\n // Clean up ResizeObserver\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n /**\n * Programmatically toggle the accordion item\n */\n @Method()\n async toggle() {\n if (!this.disabled) {\n this.open = !this.open;\n this.accordionToggle.emit({ itemId: this.itemId, open: this.open });\n }\n }\n\n private measureContent() {\n // Use requestAnimationFrame to ensure DOM has updated before measuring\n requestAnimationFrame(() => {\n if (this.contentRef) {\n this.contentHeight = this.contentRef.scrollHeight;\n }\n });\n }\n\n private handleTriggerClick = () => {\n if (!this.disabled) {\n this.toggle();\n }\n };\n\n render() {\n // #region agent log\n fetch('http://127.0.0.1:7242/ingest/b0b55d5e-d10c-4b52-9f1d-02a40f4c5e87',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({location:'af-accordion-item.tsx:render',message:'Render called',data:{itemId:this.itemId,open:this.open},timestamp:Date.now(),sessionId:'debug-session',hypothesisId:'E'})}).catch(()=>{});\n // #endregion\n\n const contentStyle = {\n maxHeight: this.open ? `${this.contentHeight}px` : '0px'\n };\n\n return (\n <Host class={{ 'is-open': this.open, 'is-disabled': this.disabled }}>\n <div class=\"accordion-item\">\n <button\n class=\"trigger\"\n onClick={this.handleTriggerClick}\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`content-${this.itemId}`}\n disabled={this.disabled}\n type=\"button\"\n >\n <div class=\"trigger-content\">\n <slot name=\"trigger\"></slot>\n </div>\n <div class={{ 'chevron': true, 'is-open': this.open }}>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M6 9l6 6 6-6\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </button>\n <div\n id={`content-${this.itemId}`}\n class=\"content-wrapper\"\n style={contentStyle}\n aria-hidden={!this.open ? 'true' : 'false'}\n >\n <div class=\"content\" ref={(el) => (this.contentRef = el)}>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n\n"],"version":3}
1
+ {"file":"af-accordion-item.js","mappings":"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","names":["AfAccordionItem","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-accordion-item/af-accordion-item.css?tag=af-accordion-item&encapsulation=shadow","src/components/af-accordion-item/af-accordion-item.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.accordion-item {\n width: 100%;\n}\n\n/* Trigger button - clickable header */\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 16px 0;\n background: transparent;\n border: none;\n border-bottom: 1px solid var(--af-background-border-subtle, #e8eeed);\n cursor: pointer;\n font: inherit;\n text-align: left;\n color: var(--af-typography-body-dark, #14343b);\n transition: background-color 0.2s ease;\n}\n\n.trigger:hover:not(:disabled) {\n background-color: var(--af-background-base-hover, rgba(20, 52, 59, 0.02));\n}\n\n.trigger:focus-visible {\n outline: 2px solid var(--af-background-border-active, #8a7049);\n outline-offset: -2px;\n}\n\n.trigger:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.trigger-content {\n flex: 1;\n min-width: 0;\n}\n\n/* Chevron indicator */\n.chevron {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n color: var(--af-typography-body-dark, #14343b);\n transition: transform 0.3s ease;\n}\n\n.chevron.is-open {\n transform: rotate(180deg);\n}\n\n/* Content wrapper - handles animation */\n.content-wrapper {\n overflow: hidden;\n transition: max-height 0.3s ease;\n}\n\n.content {\n padding: 0;\n}\n\n/* Disabled state */\n:host(.is-disabled) .trigger {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n:host(.is-disabled) .trigger:hover {\n background-color: transparent;\n}\n\n/* Open state styling */\n:host(.is-open) .trigger {\n border-bottom-color: transparent;\n}\n\n","import { Component, h, Prop, Host, Event, EventEmitter, Element, State, Watch, Method } from '@stencil/core';\n\n/**\n * A single collapsible accordion item with header and content.\n * Can be used standalone or within an af-accordion container.\n *\n * @slot trigger - The clickable header content\n * @slot - The collapsible content (default slot)\n */\n@Component({\n tag: 'af-accordion-item',\n styleUrl: 'af-accordion-item.css',\n shadow: true,\n})\nexport class AfAccordionItem {\n @Element() el!: HTMLElement;\n\n /**\n * Unique identifier for this accordion item.\n * Used by parent af-accordion to track open state.\n */\n @Prop({ reflect: true }) itemId!: string;\n\n /**\n * Whether this item is currently expanded\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = false;\n\n /**\n * Whether this item is disabled (cannot be toggled)\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * Emitted when the accordion item is toggled\n */\n @Event({ eventName: 'af-accordion-toggle' }) accordionToggle!: EventEmitter<{ itemId: string; open: boolean }>;\n\n @State() contentHeight: number = 0;\n\n private contentRef?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n\n @Watch('open')\n handleOpenChange(newValue: boolean) {\n if (newValue) {\n this.measureContent();\n }\n }\n\n componentDidLoad() {\n if (this.open) {\n this.measureContent();\n }\n\n this.resizeObserver = new ResizeObserver(() => {\n if (this.open && this.contentRef) {\n this.contentHeight = this.contentRef.scrollHeight;\n }\n });\n\n if (this.contentRef) {\n this.resizeObserver.observe(this.contentRef);\n }\n }\n\n disconnectedCallback() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n /**\n * Programmatically toggle the accordion item\n */\n @Method()\n async toggle() {\n if (!this.disabled) {\n this.open = !this.open;\n this.accordionToggle.emit({ itemId: this.itemId, open: this.open });\n }\n }\n\n private measureContent() {\n requestAnimationFrame(() => {\n if (this.contentRef) {\n this.contentHeight = this.contentRef.scrollHeight;\n }\n });\n }\n\n private handleTriggerClick = () => {\n if (!this.disabled) {\n this.toggle();\n }\n };\n\n render() {\n const contentStyle = {\n maxHeight: this.open ? `${this.contentHeight}px` : '0px'\n };\n\n return (\n <Host class={{ 'is-open': this.open, 'is-disabled': this.disabled }}>\n <div class=\"accordion-item\">\n <button\n class=\"trigger\"\n onClick={this.handleTriggerClick}\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`content-${this.itemId}`}\n disabled={this.disabled}\n type=\"button\"\n >\n <div class=\"trigger-content\">\n <slot name=\"trigger\"></slot>\n </div>\n <div class={{ 'chevron': true, 'is-open': this.open }}>\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M6 9l6 6 6-6\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </div>\n </button>\n <div\n id={`content-${this.itemId}`}\n class=\"content-wrapper\"\n style={contentStyle}\n aria-hidden={!this.open ? 'true' : 'false'}\n >\n <div class=\"content\" ref={(el) => (this.contentRef = el)}>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -90,7 +90,7 @@ const AfAccordion$1 = /*@__PURE__*/ proxyCustomElement(class AfAccordion extends
90
90
  });
91
91
  }
92
92
  render() {
93
- return (h(Host, { key: 'cbe6ed9c242541a2081de85d941a6263ff0dd36c', class: { [`mode-${this.mode}`]: true } }, h("div", { key: '51c97481cb155908e946edbb88d9dcebffc9a9a9', class: "accordion" }, h("slot", { key: '354736a0c86e27193cc156d63e6b7bcb623c1b54' }))));
93
+ return (h(Host, { key: 'bebe65f01b7ae0c2b6be9030824922fab89804de', class: { [`mode-${this.mode}`]: true } }, h("div", { key: '9439670251482fed79509f76d86c81e61b69e69b', class: "accordion" }, h("slot", { key: 'c70424920df7e7f4f07c9fe7e4e33068af892ca4' }))));
94
94
  }
95
95
  get el() { return this; }
96
96
  static get watchers() { return {
@@ -1,4 +1,4 @@
1
- import { A as AfButton$1, d as defineCustomElement$1 } from './p-DBnL9UHx.js';
1
+ import { A as AfButton$1, d as defineCustomElement$1 } from './p-BHyABfs0.js';
2
2
 
3
3
  const AfButton = AfButton$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { A as AfCard$1, d as defineCustomElement$1 } from './p-C8_mFdv5.js';
1
+ import { A as AfCard$1, d as defineCustomElement$1 } from './p-BfAQ7eko.js';
2
2
 
3
3
  const AfCard = AfCard$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -35,7 +35,7 @@ const AfCenter$1 = /*@__PURE__*/ proxyCustomElement(class AfCenter extends H {
35
35
  if (this.minHeight) {
36
36
  style.minHeight = this.minHeight;
37
37
  }
38
- return (h(Host, { key: 'ea24131f49ed2e71639eb55ac38c19519d8e4608', style: style }, h("slot", { key: '6547ee3e9cae65dd7373e8cb7b5adfa29042f851' })));
38
+ return (h(Host, { key: '80c691bbb80889c51ca4bf398d5cebd044440be5', style: style }, h("slot", { key: 'e4190477f742e1320efd1f7e36ade0aab775892a' })));
39
39
  }
40
40
  static get style() { return afCenterCss; }
41
41
  }, [257, "af-center", {
@@ -11,13 +11,24 @@ const AfClientCarousel$1 = /*@__PURE__*/ proxyCustomElement(class AfClientCarous
11
11
  this.__attachShadow();
12
12
  /** Theme - sets background color and provides theme context to children */
13
13
  this.theme = 'inkwell';
14
+ /**
15
+ * Number of scrolling rows.
16
+ * - `1` (default) — single row scrolling left, matches the Webflow reference.
17
+ * - `2` — two rows scrolling in opposite directions.
18
+ *
19
+ * When `rows="2"`, slot `row-1` and `row-2` independently.
20
+ * When `rows="1"`, slot the default slot (unnamed) or `row-1`.
21
+ */
22
+ this.rows = 1;
14
23
  }
15
24
  render() {
16
- return (h(Host, { key: '2e7ecfbbde6c66bcb8c2b581ef65938451b46f10', class: `theme-${this.theme}` }, h("div", { key: 'c17d3a429c31fd0c8b45792be5af4191079ec070', class: `client-carousel theme-${this.theme}` }, h("div", { key: '42f1dde981082b450991ab1d9e73e06f357fc7b7', class: "carousel-container" }, h("div", { key: 'be3106cce710d07ef4ace805f7beea181c2881e3', class: "carousel-row scroll-left" }, h("div", { key: 'c5b6959756e7f86ba2bba6b5b6b403e906c804bb', class: "logo-track" }, h("slot", { key: '712acf9f80c4eec3f1f44c6854fca813a3d942a9', name: "row-1" }), h("slot", { key: '6a8819dcc886bb5d8f6898390f615612e38d7a4e', name: "row-1" }))), h("div", { key: 'e5811147386c7232e8b2ca191e08eae1a66a3204', class: "carousel-row scroll-right" }, h("div", { key: 'f38087992cc2b1c4e5f876d02b1a976aafc4df63', class: "logo-track" }, h("slot", { key: '3240385b3d01e8da8decc67313ddca23f1a076f5', name: "row-2" }), h("slot", { key: 'e7fa32487ab745ab3ac86e10fc9a7211b576a15d', name: "row-2" })))))));
25
+ const rows = Number(this.rows);
26
+ return (h(Host, { key: 'dfa063543c2ce6fcea849bbabe62719186f41cd8', class: `theme-${this.theme}` }, h("div", { key: '3c6939f9c9493fab952199da107ce0f53b005057', class: `client-carousel theme-${this.theme} rows-${rows}` }, h("div", { key: 'd776f5878b6b83db7182daab739a8d5928512c04', class: "carousel-container" }, h("div", { key: '942917e5361a4e4179d2990830588c351897aeda', class: "carousel-row scroll-left" }, h("div", { key: 'a7e538687bdff90d3681335ee127c074c056114d', class: "logo-track" }, h("slot", { key: '08a4e15e861474a700424393d0a780eb40ea62a8', name: "row-1" }, h("slot", { key: '057e00cc8982a0cd56ff46663eb2c9e449e841cb' })), h("slot", { key: '44260f148c4d29f4286624a2b354d52ed5ff2c64', name: "row-1" }, h("slot", { key: '704f5fcf09c84f51f20dee75a82431e22befad73' })))), rows === 2 && (h("div", { key: '67550054bb7ca34c7ba32f03413beb623c18f5f8', class: "carousel-row scroll-right" }, h("div", { key: 'd60d64137733d971b02d953fb6d722f0340ce9b7', class: "logo-track" }, h("slot", { key: '4634049d805e8a4216bb33a4391a52781f68fbf1', name: "row-2" }), h("slot", { key: 'c1ee64d4b3edec935178c2bf77ee4d56482ac9a5', name: "row-2" }))))))));
17
27
  }
18
28
  static get style() { return afClientCarouselCss; }
19
29
  }, [257, "af-client-carousel", {
20
- "theme": [1]
30
+ "theme": [1],
31
+ "rows": [2]
21
32
  }]);
22
33
  function defineCustomElement$1() {
23
34
  if (typeof customElements === "undefined") {
@@ -1 +1 @@
1
- {"file":"af-client-carousel.js","mappings":";;AAAA,MAAM,mBAAmB,GAAG,46EAA46E;;MCiB37EA,kBAAgB,iBAAAC,kBAAA,CAAA,MAAA,gBAAA,SAAAC,CAAA,CAAA;AAL7B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAOU,QAAA,IAAK,CAAA,KAAA,GAAU,SAAS;AA2BjC;IAzBC,MAAM,GAAA;AACJ,QAAA,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAS,MAAA,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EAChC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,CAAA,sBAAA,EAAyB,IAAI,CAAC,KAAK,CAAE,CAAA,EAAA,EAC/C,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,oBAAoB,EAAA,EAE7B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,0BAA0B,EAAA,EACnC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAQ,CAAA,EAC1B,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,OAAO,EAAA,CAAQ,CACtB,CACF,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAQ,CAAA,EAC1B,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAQ,CAAA,CACtB,CACF,CACF,CACF,CACD;;;;;;;;;;;;;;;;;;;;;;;;;","names":["AfClientCarousel","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-client-carousel/af-client-carousel.css?tag=af-client-carousel&encapsulation=shadow","src/components/af-client-carousel/af-client-carousel.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.client-carousel {\n padding: 48px 0;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-container {\n display: flex;\n flex-direction: column;\n gap: var(--space-4, 16px);\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-row {\n display: flex;\n width: 100%;\n overflow: hidden;\n position: relative;\n}\n\n.logo-track {\n display: flex;\n gap: var(--space-4, 16px);\n animation-timing-function: linear;\n animation-iteration-count: infinite;\n}\n\n/* Scroll left animation */\n.scroll-left .logo-track {\n animation-name: scroll-left;\n animation-duration: 40s;\n}\n\n/* Scroll right animation */\n.scroll-right .logo-track {\n animation-name: scroll-right;\n animation-duration: 40s;\n}\n\n/* Pause animation on hover */\n:host(:hover) .logo-track {\n animation-play-state: paused;\n}\n\n@keyframes scroll-left {\n 0% {\n transform: translateX(0);\n }\n 100% {\n transform: translateX(-50%);\n }\n}\n\n@keyframes scroll-right {\n 0% {\n transform: translateX(-50%);\n }\n 100% {\n transform: translateX(0);\n }\n}\n\n/* Style slotted container divs as flex rows with proper gap */\n::slotted(*) {\n display: flex;\n flex-shrink: 0;\n gap: var(--space-4, 16px);\n align-items: center;\n}\n\n/* ==========================================================================\n Theme Variants\n ========================================================================== */\n\n/* INKWELL THEME (Default) */\n:host(.theme-inkwell),\n.client-carousel.theme-inkwell {\n background-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-well-bg: var(--colour-background-level1-dark, #203e45);\n --af-carousel-logo-color: white;\n --af-carousel-logo-filter: brightness(0) invert(1);\n}\n\n/* WHITE THEME */\n:host(.theme-white),\n.client-carousel.theme-white {\n background-color: var(--colour-brand-white, #FFFFFF);\n --af-carousel-logo-well-bg: var(--colour-background-level1, #e8eeed);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* MIST-GREEN THEME */\n:host(.theme-mist-green),\n.client-carousel.theme-mist-green {\n background-color: var(--colour-brand-mist-green, #C6D5D1);\n --af-carousel-logo-well-bg: var(--colour-mistgreen-300, #dde6e3);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* SOFT-CLAY THEME */\n:host(.theme-soft-clay),\n.client-carousel.theme-soft-clay {\n background-color: var(--colour-softclay-400, #c0ab8d);\n --af-carousel-logo-well-bg: var(--colour-softclay-200, #d5c5b0);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* WHITE-IVORY THEME */\n:host(.theme-white-ivory),\n.client-carousel.theme-white-ivory {\n background-color: var(--colour-brand-ivory-paper, #fff9ee);\n --af-carousel-logo-well-bg: var(--colour-softclay-100, #f2eadc);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* ==========================================================================\n Responsive Adjustments\n ========================================================================== */\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .client-carousel {\n padding: 32px 0;\n }\n}\n\n/* Mobile adjustments */\n@media (max-width: 767px) {\n .client-carousel {\n padding: 24px 0;\n }\n \n .carousel-container {\n gap: var(--space-3, 12px);\n }\n \n .logo-track {\n gap: var(--space-3, 12px);\n }\n \n ::slotted(*) {\n gap: var(--space-3, 12px);\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\ntype Theme = 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';\n\n/**\n * Infinite scrolling carousel for client logos.\n * \n * This is a section-level component that spans full width.\n * It supports theming via the `theme` prop.\n * \n * For headlines, use a separate TypographyLockup or Heading component above this carousel.\n */\n@Component({\n tag: 'af-client-carousel',\n styleUrl: 'af-client-carousel.css',\n shadow: true,\n})\nexport class AfClientCarousel {\n /** Theme - sets background color and provides theme context to children */\n @Prop() theme: Theme = 'inkwell';\n\n render() {\n return (\n <Host class={`theme-${this.theme}`}>\n <div class={`client-carousel theme-${this.theme}`}>\n <div class=\"carousel-container\">\n {/* Top row - scrolls left */}\n <div class=\"carousel-row scroll-left\">\n <div class=\"logo-track\">\n <slot name=\"row-1\"></slot>\n <slot name=\"row-1\"></slot>\n </div>\n </div>\n \n {/* Bottom row - scrolls right */}\n <div class=\"carousel-row scroll-right\">\n <div class=\"logo-track\">\n <slot name=\"row-2\"></slot>\n <slot name=\"row-2\"></slot>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"af-client-carousel.js","mappings":";;AAAA,MAAM,mBAAmB,GAAG,46EAA46E;;MCkB37EA,kBAAgB,iBAAAC,kBAAA,CAAA,MAAA,gBAAA,SAAAC,CAAA,CAAA;AAL7B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAOU,QAAA,IAAK,CAAA,KAAA,GAAU,SAAS;AAEhC;;;;;;;AAOG;AACK,QAAA,IAAI,CAAA,IAAA,GAAU,CAAC;AAgCxB;IA9BC,MAAM,GAAA;QACJ,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9B,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,CAAS,MAAA,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EAChC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,yBAAyB,IAAI,CAAC,KAAK,CAAA,MAAA,EAAS,IAAI,CAAA,CAAE,EAAA,EAC5D,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,oBAAoB,EAAA,EAC7B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,0BAA0B,EAAA,EACnC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAA,EAChB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACR,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAA,EAChB,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACR,CACH,CACF,EAEL,IAAI,KAAK,CAAC,KACT,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAQ,CAAA,EAC1B,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,OAAO,EAAQ,CAAA,CACtB,CACF,CACP,CACG,CACF,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["AfClientCarousel","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-client-carousel/af-client-carousel.css?tag=af-client-carousel&encapsulation=shadow","src/components/af-client-carousel/af-client-carousel.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.client-carousel {\n padding: 48px 0;\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-container {\n display: flex;\n flex-direction: column;\n gap: var(--space-4, 16px);\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-row {\n display: flex;\n width: 100%;\n overflow: hidden;\n position: relative;\n}\n\n.logo-track {\n display: flex;\n gap: var(--space-4, 16px);\n animation-timing-function: linear;\n animation-iteration-count: infinite;\n}\n\n/* Scroll left animation */\n.scroll-left .logo-track {\n animation-name: scroll-left;\n animation-duration: 40s;\n}\n\n/* Scroll right animation */\n.scroll-right .logo-track {\n animation-name: scroll-right;\n animation-duration: 40s;\n}\n\n/* Pause animation on hover */\n:host(:hover) .logo-track {\n animation-play-state: paused;\n}\n\n@keyframes scroll-left {\n 0% {\n transform: translateX(0);\n }\n 100% {\n transform: translateX(-50%);\n }\n}\n\n@keyframes scroll-right {\n 0% {\n transform: translateX(-50%);\n }\n 100% {\n transform: translateX(0);\n }\n}\n\n/* Style slotted container divs as flex rows with proper gap */\n::slotted(*) {\n display: flex;\n flex-shrink: 0;\n gap: var(--space-4, 16px);\n align-items: center;\n}\n\n/* ==========================================================================\n Theme Variants\n ========================================================================== */\n\n/* INKWELL THEME (Default) */\n:host(.theme-inkwell),\n.client-carousel.theme-inkwell {\n background-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-well-bg: var(--colour-background-level1-dark, #203e45);\n --af-carousel-logo-color: white;\n --af-carousel-logo-filter: brightness(0) invert(1);\n}\n\n/* WHITE THEME */\n:host(.theme-white),\n.client-carousel.theme-white {\n background-color: var(--colour-brand-white, #FFFFFF);\n --af-carousel-logo-well-bg: var(--colour-background-level1, #e8eeed);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* MIST-GREEN THEME */\n:host(.theme-mist-green),\n.client-carousel.theme-mist-green {\n background-color: var(--colour-brand-mist-green, #C6D5D1);\n --af-carousel-logo-well-bg: var(--colour-mistgreen-300, #dde6e3);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* SOFT-CLAY THEME */\n:host(.theme-soft-clay),\n.client-carousel.theme-soft-clay {\n background-color: var(--colour-softclay-400, #c0ab8d);\n --af-carousel-logo-well-bg: var(--colour-softclay-200, #d5c5b0);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* WHITE-IVORY THEME */\n:host(.theme-white-ivory),\n.client-carousel.theme-white-ivory {\n background-color: var(--colour-brand-ivory-paper, #fff9ee);\n --af-carousel-logo-well-bg: var(--colour-softclay-100, #f2eadc);\n --af-carousel-logo-color: var(--colour-brand-inkwell, #14343B);\n --af-carousel-logo-filter: none;\n}\n\n/* ==========================================================================\n Responsive Adjustments\n ========================================================================== */\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .client-carousel {\n padding: 32px 0;\n }\n}\n\n/* Mobile adjustments */\n@media (max-width: 767px) {\n .client-carousel {\n padding: 24px 0;\n }\n \n .carousel-container {\n gap: var(--space-3, 12px);\n }\n \n .logo-track {\n gap: var(--space-3, 12px);\n }\n \n ::slotted(*) {\n gap: var(--space-3, 12px);\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\ntype Theme = 'white' | 'inkwell' | 'mist-green' | 'soft-clay' | 'white-ivory';\n\n/**\n * Infinite scrolling carousel for client logos.\n *\n * This is a section-level component that spans full width.\n * Renders one or two scrolling rows; single row matches the Webflow reference,\n * two rows (scrolling opposite directions) is the denser variant.\n *\n * For headlines, use a separate TypographyLockup or Heading component above this carousel.\n */\n@Component({\n tag: 'af-client-carousel',\n styleUrl: 'af-client-carousel.css',\n shadow: true,\n})\nexport class AfClientCarousel {\n /** Theme - sets background color and provides theme context to children */\n @Prop() theme: Theme = 'inkwell';\n\n /**\n * Number of scrolling rows.\n * - `1` (default) — single row scrolling left, matches the Webflow reference.\n * - `2` — two rows scrolling in opposite directions.\n *\n * When `rows=\"2\"`, slot `row-1` and `row-2` independently.\n * When `rows=\"1\"`, slot the default slot (unnamed) or `row-1`.\n */\n @Prop() rows: 1 | 2 = 1;\n\n render() {\n const rows = Number(this.rows);\n return (\n <Host class={`theme-${this.theme}`}>\n <div class={`client-carousel theme-${this.theme} rows-${rows}`}>\n <div class=\"carousel-container\">\n <div class=\"carousel-row scroll-left\">\n <div class=\"logo-track\">\n <slot name=\"row-1\">\n <slot></slot>\n </slot>\n <slot name=\"row-1\">\n <slot></slot>\n </slot>\n </div>\n </div>\n\n {rows === 2 && (\n <div class=\"carousel-row scroll-right\">\n <div class=\"logo-track\">\n <slot name=\"row-2\"></slot>\n <slot name=\"row-2\"></slot>\n </div>\n </div>\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -14,7 +14,7 @@ const AfContactItem$1 = /*@__PURE__*/ proxyCustomElement(class AfContactItem ext
14
14
  this.value = '';
15
15
  }
16
16
  render() {
17
- return (h(Host, { key: '25c9989697baa866874a566ea76bad08946773fc' }, h("div", { key: 'ad2ada738e77fd5f1c03cdc2beba65c1cfb6f827', class: "contact-item" }, this.label && (h("h5", { key: '7d7105256639744dff5e640ea8f5842f6d10d1ee', class: "contact-item__label" }, this.label)), this.value && (h("p", { key: 'c661a4a566280c5470d917f537c85fa7afd09d44', class: "contact-item__value" }, this.value)), h("slot", { key: 'd7f1e94f19e5fbcbc25fcccf57f39d68fda88d61' }))));
17
+ return (h(Host, { key: '01276444ebe5b9da51f83a98cfe10a6367e5ad46' }, h("div", { key: '0438970f2162d814615441a1a5252d095f4407d9', class: "contact-item" }, this.label && (h("h5", { key: 'a55d0172d834a6c3681493223a6d86b2e2ea809b', class: "contact-item__label" }, this.label)), this.value && (h("p", { key: '60942e88db4782a2b45e627bf5914edf476e8383', class: "contact-item__value" }, this.value)), h("slot", { key: '8d1946d2e59875a728116615b6c36c335c07ef1d' }))));
18
18
  }
19
19
  static get style() { return afContactItemCss; }
20
20
  }, [262, "af-contact-item", {
@@ -32,7 +32,7 @@ const AfDivider$1 = /*@__PURE__*/ proxyCustomElement(class AfDivider extends H {
32
32
  marginTop: spacingValue,
33
33
  marginBottom: spacingValue,
34
34
  };
35
- return (h(Host, { key: '4accfc3bacd7851849d58807bd0713704be3f43a', class: {
35
+ return (h(Host, { key: 'c38ec5bf7efec1e8a91e53a9ded27090a5b8f3b5', class: {
36
36
  'divider': true,
37
37
  'divider--horizontal': !isVertical,
38
38
  'divider--vertical': isVertical,
@@ -90,13 +90,13 @@ const AfFeatureAccordion$1 = /*@__PURE__*/ proxyCustomElement(class AfFeatureAcc
90
90
  render() {
91
91
  const items = this.getItems();
92
92
  const currentItem = items[this.expandedIndex];
93
- return (h(Host, { key: '7dea35d43a55761d3e36564de53886910cf43269' }, h("div", { key: 'f53d9194b7b3e0ca17f3507cae98af2f70d694f4', class: "feature-accordion" }, h("div", { key: 'f0f3ae26b637c86a754f536a45c30d2538d6f189', class: "feature-accordion__container" }, h("h2", { key: '5572067284f6d8c14b9b78104a7d89cc562319d7', class: "feature-accordion__heading" }, this.heading), h("div", { key: '953eb50fc040115ef17e2668362526e5c5aa20c2', class: "feature-accordion__content" }, h("div", { key: '035699b851f330d0b61c86f3e06aca2d6a2eb8ce', class: "feature-accordion__list" }, items.map((item, index) => (h("div", { class: {
93
+ return (h(Host, { key: 'cbda1aa6283e411b91bdf3f4f37666289d39e7f8' }, h("div", { key: '03f8ae153afe79ee6d47494bb34888158121b16d', class: "feature-accordion" }, h("div", { key: '42470c0256313498a9276dfeeea205664251e09a', class: "feature-accordion__container" }, h("h2", { key: 'a2135b43755e083ab9b71a1fedba49aa8299cbd2', class: "feature-accordion__heading" }, this.heading), h("div", { key: '39724513a630bce185d4e82fb189bd7902214947', class: "feature-accordion__content" }, h("div", { key: 'da9769e9a6708f804d5033ca9dfa3d6a3a2040dc', class: "feature-accordion__list" }, items.map((item, index) => (h("div", { class: {
94
94
  'accordion-item': true,
95
95
  'accordion-item--expanded': this.expandedIndex === index
96
96
  }, key: index }, h("button", { class: "accordion-item__header", onClick: () => this.handleItemClick(index), "aria-expanded": this.expandedIndex === index ? 'true' : 'false' }, h("h4", { class: "accordion-item__title" }, item.title), h("span", { class: "accordion-item__icon" }, this.expandedIndex === index ? (h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M5 12H19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" }))) : (h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M12 5V19M5 12H19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" }))))), h("div", { class: "accordion-item__content", style: {
97
97
  maxHeight: this.expandedIndex === index ? '200px' : '0',
98
98
  opacity: this.expandedIndex === index ? '1' : '0'
99
- } }, h("p", { class: "accordion-item__description" }, item.description), this.expandedIndex === index && this.autoCycle && (h("div", { class: "accordion-item__timer-track" }, h("div", { class: "accordion-item__timer-progress", style: { width: `${this.timerProgress}%` } })))))))), h("div", { key: '60b8b8c12647e3c0d49c61a260a69354ed7e529f', class: "feature-accordion__image-container" }, h("div", { key: '2f916ff6544cb4574e887b4a4155f2aaf83343c1', class: "feature-accordion__image-wrapper" }, currentItem?.imageUrl && (h("img", { key: '53db01fe2689049546729652973eb2c6246c01aa', src: currentItem.imageUrl, alt: currentItem.imageAlt || currentItem.title, class: "feature-accordion__image" })), !currentItem?.imageUrl && (h("div", { key: 'f79c210e398ccb423a48a40afee74d295117a42a', class: "feature-accordion__image-placeholder" }, h("slot", { key: '1fa843fb1b02413dc831023cb9957c96e0a4fa15', name: "image" }))))))))));
99
+ } }, h("p", { class: "accordion-item__description" }, item.description), this.expandedIndex === index && this.autoCycle && (h("div", { class: "accordion-item__timer-track" }, h("div", { class: "accordion-item__timer-progress", style: { width: `${this.timerProgress}%` } })))))))), h("div", { key: '3fb45ba49e71139f9b2900e66a4684c4591869eb', class: "feature-accordion__image-container" }, h("div", { key: '4fca54dae38f0048a2788b75c01a2ec0f6611a0a', class: "feature-accordion__image-wrapper" }, currentItem?.imageUrl && (h("img", { key: '8b4fbc1e2c47a2c583eb15e321c1ff0584560fb2', src: currentItem.imageUrl, alt: currentItem.imageAlt || currentItem.title, class: "feature-accordion__image" })), !currentItem?.imageUrl && (h("div", { key: '3615b11c145bd994167396c526d49044f14981bb', class: "feature-accordion__image-placeholder" }, h("slot", { key: 'bc066019ed3fae731a76d41ba9992e5fec58282b', name: "image" }))))))))));
100
100
  }
101
101
  get el() { return this; }
102
102
  static get watchers() { return {
@@ -1,4 +1,4 @@
1
- import { A as AfFeatureCard$1, d as defineCustomElement$1 } from './p-WmKa3rDn.js';
1
+ import { A as AfFeatureCard$1, d as defineCustomElement$1 } from './p-pudFjW3W.js';
2
2
 
3
3
  const AfFeatureCard = AfFeatureCard$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-CxngDK-N.js';
2
- import { d as defineCustomElement$2 } from './p-D66k2SSB.js';
2
+ import { d as defineCustomElement$2 } from './p-CFBeRDmV.js';
3
3
 
4
4
  const afFeatureGridCss = ".sc-af-feature-grid-h{display:block;width:100%}.feature-grid.sc-af-feature-grid{display:flex;flex-direction:column;align-items:center;width:100%}.feature-grid__cards.sc-af-feature-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:24px;width:100%;max-width:1440px;align-items:stretch}.feature-grid__cards.sc-af-feature-grid>af-feature-card.sc-af-feature-grid{height:100%}.feature-grid--cols-3.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:repeat(3, 1fr)}.feature-grid--cols-2.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:repeat(2, 1fr)}.feature-grid--cols-1.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:1fr}.feature-grid__progress.sc-af-feature-grid{display:none;width:100%;margin-top:16px}@media (max-width: 768px){.feature-grid__cards.sc-af-feature-grid{gap:16px}.feature-grid--mobile-list.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:1fr;gap:20px}.feature-grid--mobile-grid.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:repeat(2, 1fr)}.feature-grid--mobile-scroll.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:16px;padding-bottom:8px;scrollbar-width:none;-ms-overflow-style:none}.feature-grid--mobile-scroll.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid::-webkit-scrollbar{display:none}.feature-grid--mobile-scroll.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid>af-feature-card.sc-af-feature-grid{flex:0 0 280px;scroll-snap-align:start}.feature-grid--mobile-scroll.sc-af-feature-grid .feature-grid__progress.sc-af-feature-grid{display:block}}@media (min-width: 769px) and (max-width: 1024px){.feature-grid__cards.sc-af-feature-grid{grid-template-columns:repeat(2, 1fr)}.feature-grid--cols-3.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid,.feature-grid--cols-4.sc-af-feature-grid .feature-grid__cards.sc-af-feature-grid{grid-template-columns:repeat(2, 1fr)}}";
5
5
 
@@ -82,7 +82,7 @@ const AfFeatureGrid$1 = /*@__PURE__*/ proxyCustomElement(class AfFeatureGrid ext
82
82
  [`feature-grid--mobile-${this.mobileLayout}`]: true,
83
83
  };
84
84
  const showProgressLine = this.mobileLayout === 'scroll';
85
- return (h(Host, { key: '143cda464ef9d63cf4a4190fed2ec938438a6e2f' }, h("div", { key: '602a26836a596570c5ed3bc0679158718c32f125', class: gridClasses }, h("div", { key: '5844b5a699d3be238730c4b94012048a6c5a2b72', class: "feature-grid__cards" }, h("slot", { key: '8447309016d09376256c066f7f732a938066d8cf' })), showProgressLine && (h("div", { key: '7c798167883b9e231bbca9e124515ec418459dd5', class: "feature-grid__progress" }, h("af-progress-line", { key: '3e321ef9f01dc390156e51efcad4d988fc144fad', progress: this.scrollProgress }))))));
85
+ return (h(Host, { key: 'baeaff34dab4980412fa0564570b43f0b03016ce' }, h("div", { key: 'bb7224b908aa8635a8c896adaeadabd9e3b2d0f3', class: gridClasses }, h("div", { key: 'd1fcd29989994376245c8f36be97660464ba8a19', class: "feature-grid__cards" }, h("slot", { key: '7244415488316bc6d84794935dd8e44470191ae3' })), showProgressLine && (h("div", { key: '7ec8c1209bf4fb3ddd81dd965d3a5009cc98f468', class: "feature-grid__progress" }, h("af-progress-line", { key: 'cb203f374c673930e6ab34ac54e4b2188d1b0b6e', progress: this.scrollProgress }))))));
86
86
  }
87
87
  get host() { return this; }
88
88
  static get watchers() { return {
@@ -12,7 +12,7 @@ const AfFooterColumn$1 = /*@__PURE__*/ proxyCustomElement(class AfFooterColumn e
12
12
  this.heading = '';
13
13
  }
14
14
  render() {
15
- return (h(Host, { key: '675f525c7548bf5b1566c91fb26315451064079f' }, h("div", { key: '6acde9560897e0f7ecf5644a1f0ea26e8ff8239e', class: "footer-column" }, this.heading && (h("h5", { key: '19444320ae2cee0a0e5aa5c88dc02789d013749f', class: "footer-column__heading" }, this.heading)), h("ul", { key: '770eab7015f5cd480436c31ddbd58bfacc076b30', class: "footer-column__list" }, h("slot", { key: '9c71065b4fc32344bcc90bf0ac4766554fc4b84f' })))));
15
+ return (h(Host, { key: '283526c985df996540e558a5591e5a167e5c4c9b' }, h("div", { key: '829fc317f3999dda3aadbb8cc68c3ce53485df12', class: "footer-column" }, this.heading && (h("h5", { key: '567141f08e21166642f7e9fea2d4becfaa9e2162', class: "footer-column__heading" }, this.heading)), h("ul", { key: 'b5b7cb63ffe3fed5d97edaa1264fab916980da8b', class: "footer-column__list" }, h("slot", { key: '4c9adcdfc3c25f42c325bc222f4b9761b82a0280' })))));
16
16
  }
17
17
  static get style() { return afFooterColumnCss; }
18
18
  }, [262, "af-footer-column", {
@@ -14,7 +14,7 @@ const AfFooterLink$1 = /*@__PURE__*/ proxyCustomElement(class AfFooterLink exten
14
14
  this.external = false;
15
15
  }
16
16
  render() {
17
- return (h(Host, { key: '4c8565ffc90c571aa34c4a7b60e782519caa866f' }, h("li", { key: 'a23edb8dda823b10747e1927acb1c402da15890f' }, h("a", { key: 'e58f7d1ee389fc21c5f4513af0fee59cdd5d9890', href: this.href, class: "footer-link", target: this.external ? '_blank' : undefined, rel: this.external ? 'noopener noreferrer' : undefined }, h("slot", { key: '8f1fcb75860c1b7046c596702660f59aa5399f45' }), this.external && (h("svg", { key: '54195a756acbe32c01e814e25be8d6dca24ccabc', class: "footer-link__external-icon", width: "12", height: "12", viewBox: "0 0 12 12", fill: "none" }, h("path", { key: 'baba36e00a1632e089340dafa1a2f1dc434801e4', d: "M10 6.5v3a1 1 0 0 1-1 1H2.5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h3M7.5 1.5h3v3M5.5 6.5l5-5", stroke: "currentColor", "stroke-width": "1.2", "stroke-linecap": "round", "stroke-linejoin": "round" })))))));
17
+ return (h(Host, { key: 'bbd1c9452688e637e2f042855b460c550a04ab7d' }, h("li", { key: '01c2e3ea98cb848935f587e7dd83a71735f9bacb' }, h("a", { key: '965d00d17484deade15cc8e502ad507e67443f8c', href: this.href, class: "footer-link", target: this.external ? '_blank' : undefined, rel: this.external ? 'noopener noreferrer' : undefined }, h("slot", { key: '4536f9279791c59a9d198454ed2bf4e60194d52e' }), this.external && (h("svg", { key: '5e7a04185d8643b164f4b35f95dba5f0312ce1f4', class: "footer-link__external-icon", width: "12", height: "12", viewBox: "0 0 12 12", fill: "none" }, h("path", { key: '6a6a43d0276a36ffc43f6a29e31a74d8c4ae3c57', d: "M10 6.5v3a1 1 0 0 1-1 1H2.5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1h3M7.5 1.5h3v3M5.5 6.5l5-5", stroke: "currentColor", "stroke-width": "1.2", "stroke-linecap": "round", "stroke-linejoin": "round" })))))));
18
18
  }
19
19
  static get style() { return afFooterLinkCss; }
20
20
  }, [262, "af-footer-link", {
@@ -20,7 +20,7 @@ const AfFooter$1 = /*@__PURE__*/ proxyCustomElement(class AfFooter extends H {
20
20
  this.showStatus = true;
21
21
  }
22
22
  render() {
23
- return (h(Host, { key: 'cb150b784dd5bf43eca9b014d2f1cffd6ce9ae66' }, h("footer", { key: 'd625ee7e4ababf20b4629e192350f9f721ec8399', class: "footer" }, h("div", { key: '1378e675a4894ea1ba000927e5c6fc72985700ae', class: "footer__container" }, h("div", { key: '7a250ef4b2dce3019e26cc9d6b04397754a374ea', class: "footer__top" }, h("div", { key: '6abf819fff33c52a70a3b7b92388213c07f13647', class: "footer__brand" }, h("div", { key: '05cb8a0de6df6792e08fecb34ff8b07a6f6e7f51', class: "footer__brand-card" }, h("div", { key: '52ac66df35016dcc4a93a7684c6b6a99a96c6227', class: "footer__logo" }, h("slot", { key: '87918d5e37c324d4b8ea31a6405f03ae540e4d6e', name: "logo" })), h("div", { key: '55e6a3cc404da02b19f7ce1bc1f90d1dbf5b5549', class: "footer__social" }, h("slot", { key: 'b28bf973a05b7a8ef1c26956b1ea1a3f7e07de5a', name: "social" }))), h("div", { key: '84192d593a0a7fe2592975fcbecf7e35e81b49af', class: "footer__contact-card" }, h("slot", { key: '8bb25d9ab4a3659b2f171b706268796f79361c19', name: "contact" }))), h("div", { key: '7d734e6f509999419a0bbf716b224c322bfef234', class: "footer__nav" }, h("div", { key: '406da5392a399a4d1c1e98889a01cc8c8fc3f18a', class: "footer__nav-columns" }, h("slot", { key: 'bf422aeca3942072261b2a5f8fbc77309d2bb76c', name: "nav" })), this.showStatus && (h("div", { key: '738dc3e32b6c6e2cacd0dc4b97d4f3520b5482af', class: "footer__status" }, h("span", { key: 'ccf1cc242f2b367c5e3c2064b5e51f9f623f5e7d', class: `footer__status-dot ${this.systemsOperational ? 'footer__status-dot--operational' : 'footer__status-dot--issue'}` }), h("span", { key: 'bc41ea24a56f349814f079f2db28f5cc266b7e83', class: "footer__status-text" }, this.statusText), this.statusUrl && (h("a", { key: '6c5c8c2feffc98154a77336178a6f9ac63cbac1e', href: this.statusUrl, target: "_blank", rel: "noopener noreferrer", class: "footer__status-link" }, "Learn more")))))), h("div", { key: 'f3f9d665f7c4f2a336e15a795377bcbd01d10950', class: "footer__bottom" }, this.copyrightText && (h("p", { key: '943181dfb341d268301db656fdd4b778581d6dd1', class: "footer__copyright" }, this.copyrightText)), h("div", { key: '9909918646c1cfa7765accf8b9d3017a792cc860', class: "footer__legal" }, h("slot", { key: '3b7ba2443306b2bbd48843af246a7407c9cbf2a5', name: "legal" })), h("div", { key: 'c954830920c2e75b2b203640bd8970942eabf0d7', class: "footer__badges" }, h("slot", { key: '35bb8c9c487eae7f15ac6b4558070096497ed997', name: "badges" })))))));
23
+ return (h(Host, { key: '861c5bfe1b522545870fe67192553a621f0928d1' }, h("footer", { key: '03c309b37ec977d65b36198fc8fcf549add90c43', class: "footer" }, h("div", { key: 'db23fd931863f40d95c51716fcdbb63855133db7', class: "footer__container" }, h("div", { key: 'eca38acbdc47474cc250b9a41528971676e95765', class: "footer__top" }, h("div", { key: '2cfd74ee3d56e0778ce6d10b83b75994d384fe10', class: "footer__brand" }, h("div", { key: '425f59ec107962c91b5fed5d989fe67bc8454cc5', class: "footer__brand-card" }, h("div", { key: '11d932a2f59e5467c40842b327c260f8d1c90837', class: "footer__logo" }, h("slot", { key: '02a8bee27310753862376d90cbdfc55012462520', name: "logo" })), h("div", { key: '1ee36e17b70b818f8ea44c06b9b3d2c22fafac96', class: "footer__social" }, h("slot", { key: '45ff0b3003ffb550ecf30274a2fc6535833d0686', name: "social" }))), h("div", { key: '34a16c80d4f6680034d84c61666b580acd3a9eea', class: "footer__contact-card" }, h("slot", { key: 'c3b40328bcc65add5293e5a38fd5747fdb83b0fc', name: "contact" }))), h("div", { key: '5654e1a39634ebb8f7ccda5325c46db5f6052fba', class: "footer__nav" }, h("div", { key: '42108b09428adac653c3f7c351bf2192695caf19', class: "footer__nav-columns" }, h("slot", { key: 'ceb76c14151308458646c8f446a29058caca824e', name: "nav" })), this.showStatus && (h("div", { key: 'b24841e909ca9fab2ed473770dda0266e4f8dcc1', class: "footer__status" }, h("span", { key: 'f7ae4e7a10da63020fe5a1ed6db747960a75649e', class: `footer__status-dot ${this.systemsOperational ? 'footer__status-dot--operational' : 'footer__status-dot--issue'}` }), h("span", { key: 'b0073fedf76be2b079ce470112df2c13bed22224', class: "footer__status-text" }, this.statusText), this.statusUrl && (h("a", { key: '77f7e45dfa0ae32e8346500c3d00cbad277fe1a1', href: this.statusUrl, target: "_blank", rel: "noopener noreferrer", class: "footer__status-link" }, "Learn more")))))), h("div", { key: 'f544acdee6fe1ee1841b4667034b3bc89b2f3669', class: "footer__bottom" }, this.copyrightText && (h("p", { key: '4d420e42a2abe1493a77e40e838d5644373d1c1f', class: "footer__copyright" }, this.copyrightText)), h("div", { key: '3fcff3a343acabb362675c15b30f489c3f2b6918', class: "footer__legal" }, h("slot", { key: '66f4b372a38bbee2f2db87ac554cafbb7f97f878', name: "legal" })), h("div", { key: '81c800496c83695e303f13f904e6662c3a9300c9', class: "footer__badges" }, h("slot", { key: '667b1c600f34fec004ecfd5b6879256aeaa36480', name: "badges" })))))));
24
24
  }
25
25
  static get style() { return afFooterCss; }
26
26
  }, [262, "af-footer", {
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-CxngDK-N.js';
2
- import { d as defineCustomElement$2 } from './p-hOnulRmz.js';
2
+ import { d as defineCustomElement$2 } from './p-BIgPDyJK.js';
3
3
 
4
4
  const afGridCalloutCss = ".sc-af-grid-callout-h{display:block;width:100%}.grid-callout.sc-af-grid-callout{display:flex;width:100%;gap:40px;align-items:stretch}.grid-callout__image-container.sc-af-grid-callout{flex:0 0 auto;width:45%;min-height:400px;position:relative;overflow:hidden}.grid-callout--image-left.sc-af-grid-callout .grid-callout__image-container.sc-af-grid-callout{border-radius:0 4000px 4000px 0;margin-left:calc(-1 * var(--container-padding, 80px))}.grid-callout--image-right.sc-af-grid-callout .grid-callout__image-container.sc-af-grid-callout{border-radius:4000px 0 0 4000px;margin-right:calc(-1 * var(--container-padding, 80px))}.grid-callout__image.sc-af-grid-callout{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.grid-callout__content.sc-af-grid-callout{flex:1;display:flex;flex-direction:column;gap:48px;padding:40px 0}.grid-callout--image-left.sc-af-grid-callout .grid-callout__content.sc-af-grid-callout{padding-left:40px}.grid-callout--image-right.sc-af-grid-callout .grid-callout__content.sc-af-grid-callout{padding-right:40px}.grid-callout--no-image.sc-af-grid-callout{flex-direction:column}.grid-callout--no-image.sc-af-grid-callout .grid-callout__content.sc-af-grid-callout{padding:0}.grid-callout__heading.sc-af-grid-callout{max-width:840px}.grid-callout__items.sc-af-grid-callout{display:grid;gap:40px;width:100%}.grid-callout__items--cols-2.sc-af-grid-callout{grid-template-columns:repeat(2, 1fr)}.grid-callout__items--cols-3.sc-af-grid-callout{grid-template-columns:repeat(3, 1fr)}.grid-callout__items--cols-4.sc-af-grid-callout{grid-template-columns:repeat(4, 1fr)}.grid-callout__cta.sc-af-grid-callout{display:flex;gap:12px;flex-wrap:wrap}.grid-callout__cta.sc-af-grid-callout:empty{display:none}@media (max-width: 1024px){.grid-callout.sc-af-grid-callout{gap:32px}.grid-callout__image-container.sc-af-grid-callout{width:40%}.grid-callout__content.sc-af-grid-callout{gap:40px}.grid-callout__items--cols-3.sc-af-grid-callout,.grid-callout__items--cols-4.sc-af-grid-callout{grid-template-columns:repeat(2, 1fr)}.grid-callout__items.sc-af-grid-callout{gap:32px}}@media (max-width: 768px){.grid-callout.sc-af-grid-callout{flex-direction:column;gap:32px}.grid-callout__image-container.sc-af-grid-callout{width:calc(100% + 2 * var(--container-padding, 20px));min-height:280px;margin-left:calc(-1 * var(--container-padding, 20px));margin-right:calc(-1 * var(--container-padding, 20px));border-radius:0}.grid-callout--image-left.sc-af-grid-callout .grid-callout__image-container.sc-af-grid-callout,.grid-callout--image-right.sc-af-grid-callout .grid-callout__image-container.sc-af-grid-callout{border-radius:0;margin-left:calc(-1 * var(--container-padding, 20px));margin-right:calc(-1 * var(--container-padding, 20px))}.grid-callout__content.sc-af-grid-callout{padding:0;gap:32px}.grid-callout--image-left.sc-af-grid-callout .grid-callout__content.sc-af-grid-callout,.grid-callout--image-right.sc-af-grid-callout .grid-callout__content.sc-af-grid-callout{padding-left:0;padding-right:0}.grid-callout__items.sc-af-grid-callout{grid-template-columns:1fr;gap:32px}.grid-callout__items--cols-2.sc-af-grid-callout,.grid-callout__items--cols-3.sc-af-grid-callout,.grid-callout__items--cols-4.sc-af-grid-callout{grid-template-columns:1fr}}";
5
5
 
@@ -30,14 +30,14 @@ const AfGrid$1 = /*@__PURE__*/ proxyCustomElement(class AfGrid extends H {
30
30
  end: 'end',
31
31
  stretch: 'stretch',
32
32
  };
33
- return (h(Host, { key: '3043700eaf21addce4bd20eb107790fea7a7f5cc', style: {
33
+ return (h(Host, { key: '41b45cace33676321f420513cbede95926b49edb', style: {
34
34
  '--grid-columns': String(this.columns),
35
35
  '--grid-columns-lg': String(this.columnsLg ?? this.columns),
36
36
  '--grid-columns-md': String(this.columnsMd ?? this.columnsLg ?? this.columns),
37
37
  '--grid-columns-sm': String(this.columnsSm ?? this.columnsMd ?? this.columnsLg ?? 1),
38
38
  '--grid-gap': `var(--space-${this.gap})`,
39
39
  '--grid-align': alignMap[this.align],
40
- } }, h("div", { key: 'fd9bfb0ab2982d4d48ccaa4dc20889cde822a25a', class: "grid" }, h("slot", { key: '8dd95107a71f18910ac3b27b2f8e074f87bacff2' }))));
40
+ } }, h("div", { key: 'fe4ed4d11f35ce8476c16df6f2202655da181cbd', class: "grid" }, h("slot", { key: '2f2bb80eccf44fbc41029498e0b6ce758c33c5d9' }))));
41
41
  }
42
42
  static get style() { return afGridCss; }
43
43
  }, [257, "af-grid", {
@@ -1,4 +1,4 @@
1
- import { A as AfIconBox$1, d as defineCustomElement$1 } from './p-BUoRUEpQ.js';
1
+ import { A as AfIconBox$1, d as defineCustomElement$1 } from './p-D_xTKF7j.js';
2
2
 
3
3
  const AfIconBox = AfIconBox$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { A as AfIconButton$1, d as defineCustomElement$1 } from './p-JepBVz99.js';
1
+ import { A as AfIconButton$1, d as defineCustomElement$1 } from './p-80hb0CR2.js';
2
2
 
3
3
  const AfIconButton = AfIconButton$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,7 +1,7 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-CxngDK-N.js';
2
2
  import { d as defineCustomElement$4 } from './p-BXZ7aJQf.js';
3
- import { d as defineCustomElement$3 } from './p-BUoRUEpQ.js';
4
- import { d as defineCustomElement$2 } from './p-hOnulRmz.js';
3
+ import { d as defineCustomElement$3 } from './p-D_xTKF7j.js';
4
+ import { d as defineCustomElement$2 } from './p-BIgPDyJK.js';
5
5
 
6
6
  const afIconTextCss = ".sc-af-icon-text-h{display:block}.icon-text.sc-af-icon-text{display:flex;width:100%}.icon-text--vertical.sc-af-icon-text{flex-direction:column;gap:24px;align-items:flex-start}.icon-text--horizontal.sc-af-icon-text{flex-direction:row;gap:20px;align-items:flex-start}.icon-text__icon.sc-af-icon-text{flex-shrink:0}.icon-text__lockup.sc-af-icon-text{flex:1;min-width:0}@media (max-width: 768px){.icon-text--vertical.sc-af-icon-text{gap:20px}.icon-text--horizontal.sc-af-icon-text{gap:16px}}";
7
7
 
@@ -31,7 +31,7 @@ const AfIconText$1 = /*@__PURE__*/ proxyCustomElement(class AfIconText extends H
31
31
  'icon-text': true,
32
32
  [`icon-text--${this.orientation}`]: true,
33
33
  };
34
- return (h(Host, { key: '05f526330b69a8868f4d5d98e43ba59367a17319' }, h("div", { key: '1f64e5aa24607f13916bbde18e2ec9427c9a3f7c', class: containerClasses }, h("af-icon-box", { key: '9db629d1afad970e95194b87796b56abc6b94b27', icon: this.icon, size: this.iconSize, class: "icon-text__icon" }), h("af-typography-lockup", { key: '998fa3c49a6f8eca89d4235d8f2c6b226671ba04', headingSize: this.headingSize, textAlignment: "left", buttonAlignment: "vertical", class: "icon-text__lockup" }, h("slot", { key: 'd2d2e7054010367e338d54788b4f3ed8d0c157d7' }), h("span", { key: 'e31750f8dc682839c544dba6ea924fd21a454e52', slot: "description" }, h("slot", { key: '10248d219f5125818d91a41d2472bcad65e24b4f', name: "description" })), h("span", { key: '634276962dea534962e7a33dbcb9d87f98ca968f', slot: "buttons" }, h("slot", { key: 'b52e5205b2a9e3d7947c8978050b15c2431e5f8a', name: "buttons" }))))));
34
+ return (h(Host, { key: 'e00ca808eec26f88a177d91373d749908f3b2b5a' }, h("div", { key: 'c2709624720dd8775474c7c5be41ab93291bbe83', class: containerClasses }, h("af-icon-box", { key: '68feda331b07eefd23f10a4edf25b935e0298cf8', icon: this.icon, size: this.iconSize, class: "icon-text__icon" }), h("af-typography-lockup", { key: '56ee1da85e0808e3e12033abc7f0c74786b0b099', headingSize: this.headingSize, textAlignment: "left", buttonAlignment: "vertical", class: "icon-text__lockup" }, h("slot", { key: '056bef68d2251e514527cd49cbe2e8623556cc2a' }), h("span", { key: 'fb3379b7494d73b306a10f792f403ea1da719067', slot: "description" }, h("slot", { key: '7d06d6f52096fd80343823bd406f5a80d0035eaa', name: "description" })), h("span", { key: '9b4e20bc667fe53312297bdea1b5a96706dd3521', slot: "buttons" }, h("slot", { key: 'dac8dfcef4cb3f1f3d7caacb6ef40d29e52b53fe', name: "buttons" }))))));
35
35
  }
36
36
  static get style() { return afIconTextCss; }
37
37
  }, [262, "af-icon-text", {
@@ -1 +1 @@
1
- {"file":"af-icon-text.js","mappings":";;;;;AAAA,MAAM,aAAa,GAAG,yeAAye;;MC+BlfA,YAAU,iBAAAC,kBAAA,CAAA,MAAA,UAAA,SAAAC,CAAA,CAAA;AANvB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;AAYE;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAsB,CAAC;AAE1C;;;;AAIG;AACK,QAAA,IAAW,CAAA,WAAA,GAA8B,UAAU;AAE3D;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAkC,SAAS;AAmC5D;IAjCC,MAAM,GAAA;AACJ,QAAA,MAAM,gBAAgB,GAAG;AACvB,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,CAAC,cAAc,IAAI,CAAC,WAAW,CAAE,CAAA,GAAG,IAAI;SACzC;AAED,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,gBAAgB,EAAA,EAC1B,CAAA,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,EAAC,iBAAiB,EACV,CAAA,EAEf,CAAA,CAAA,sBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,aAAa,EAAC,MAAM,EACpB,eAAe,EAAC,UAAU,EAC1B,KAAK,EAAC,mBAAmB,EAAA,EAEzB,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACb,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,aAAa,EAAA,EACtB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,aAAa,EAAA,CAAQ,CAC3B,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,EAClB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,CAAQ,CACvB,CACc,CACnB,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["AfIconText","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-icon-text/af-icon-text.css?tag=af-icon-text&encapsulation=scoped","src/components/af-icon-text/af-icon-text.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.icon-text {\n display: flex;\n width: 100%;\n}\n\n/* Vertical orientation - icon above text */\n.icon-text--vertical {\n flex-direction: column;\n gap: 24px;\n align-items: flex-start;\n}\n\n/* Horizontal orientation - icon beside text */\n.icon-text--horizontal {\n flex-direction: row;\n gap: 20px;\n align-items: flex-start;\n}\n\n.icon-text__icon {\n flex-shrink: 0;\n}\n\n.icon-text__lockup {\n flex: 1;\n min-width: 0;\n}\n\n/* Mobile adjustments */\n@media (max-width: 768px) {\n .icon-text--vertical {\n gap: 20px;\n }\n\n .icon-text--horizontal {\n gap: 16px;\n }\n}\n\n","import { Component, h, Prop, Host } from '@stencil/core';\nimport type { IconName } from '@affinda/icons';\n\n/**\n * IconText molecule - combines an IconBox with a TypographyLockup for feature items.\n * \n * Composes:\n * - af-icon-box: Themed icon container\n * - af-typography-lockup: Heading, description, and button slots\n * \n * Inherits theme colors from parent Section via CSS custom properties.\n * \n * @slot - Heading text content (passed to TypographyLockup)\n * @slot description - Body/description text\n * @slot buttons - Action buttons (typically tertiary style)\n * \n * @example\n * ```html\n * <af-icon-text icon=\"settings\" heading-size=\"4\">\n * Feature Heading\n * <span slot=\"description\">Feature description text.</span>\n * <af-button slot=\"buttons\" variant=\"tertiary\">Learn more</af-button>\n * </af-icon-text>\n * ```\n */\n@Component({\n tag: 'af-icon-text',\n styleUrl: 'af-icon-text.css',\n shadow: false,\n scoped: true,\n})\nexport class AfIconText {\n /**\n * The icon name to display in the IconBox\n */\n @Prop() icon!: IconName;\n\n /**\n * Heading size for the typography lockup (1-5, where 1 is largest)\n */\n @Prop() headingSize: 1 | 2 | 3 | 4 | 5 = 4;\n\n /**\n * Layout orientation\n * - 'vertical': Icon above text (default, used in grid layouts)\n * - 'horizontal': Icon beside text (used in compact layouts)\n */\n @Prop() orientation: 'vertical' | 'horizontal' = 'vertical';\n\n /**\n * Size of the icon box\n */\n @Prop() iconSize: 'small' | 'default' | 'large' = 'default';\n\n render() {\n const containerClasses = {\n 'icon-text': true,\n [`icon-text--${this.orientation}`]: true,\n };\n\n return (\n <Host>\n <div class={containerClasses}>\n <af-icon-box \n icon={this.icon} \n size={this.iconSize}\n class=\"icon-text__icon\"\n ></af-icon-box>\n \n <af-typography-lockup\n headingSize={this.headingSize}\n textAlignment=\"left\"\n buttonAlignment=\"vertical\"\n class=\"icon-text__lockup\"\n >\n <slot></slot>\n <span slot=\"description\">\n <slot name=\"description\"></slot>\n </span>\n <span slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </span>\n </af-typography-lockup>\n </div>\n </Host>\n );\n }\n}\n\n"],"version":3}
1
+ {"file":"af-icon-text.js","mappings":";;;;;AAAA,MAAM,aAAa,GAAG,yeAAye;;MC+BlfA,YAAU,iBAAAC,kBAAA,CAAA,MAAA,UAAA,SAAAC,CAAA,CAAA;AANvB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;AAYE;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAsB,CAAC;AAE1C;;;;AAIG;AACK,QAAA,IAAW,CAAA,WAAA,GAA8B,UAAU;AAE3D;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAkC,SAAS;AAmC5D;IAjCC,MAAM,GAAA;AACJ,QAAA,MAAM,gBAAgB,GAAG;AACvB,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,CAAC,cAAc,IAAI,CAAC,WAAW,CAAE,CAAA,GAAG,IAAI;SACzC;AAED,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,gBAAgB,EAAA,EAC1B,CAAA,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,KAAK,EAAC,iBAAiB,EACV,CAAA,EAEf,CAAA,CAAA,sBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,aAAa,EAAC,MAAM,EACpB,eAAe,EAAC,UAAU,EAC1B,KAAK,EAAC,mBAAmB,EAAA,EAEzB,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EACb,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,aAAa,EAAA,EACtB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,aAAa,EAAA,CAAQ,CAC3B,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,EAClB,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,CAAQ,CACvB,CACc,CACnB,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["AfIconText","__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-icon-text/af-icon-text.css?tag=af-icon-text&encapsulation=scoped","src/components/af-icon-text/af-icon-text.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.icon-text {\n display: flex;\n width: 100%;\n}\n\n/* Vertical orientation - icon above text */\n.icon-text--vertical {\n flex-direction: column;\n gap: 24px;\n align-items: flex-start;\n}\n\n/* Horizontal orientation - icon beside text */\n.icon-text--horizontal {\n flex-direction: row;\n gap: 20px;\n align-items: flex-start;\n}\n\n.icon-text__icon {\n flex-shrink: 0;\n}\n\n.icon-text__lockup {\n flex: 1;\n min-width: 0;\n}\n\n/* Mobile adjustments */\n@media (max-width: 768px) {\n .icon-text--vertical {\n gap: 20px;\n }\n\n .icon-text--horizontal {\n gap: 16px;\n }\n}\n\n","import { Component, h, Prop, Host } from '@stencil/core';\nimport type { IconName } from '@affinda/icons';\n\n/**\n * IconText molecule - combines an IconBox with a TypographyLockup for feature items.\n * \n * Composes:\n * - af-icon-box: Themed icon container\n * - af-typography-lockup: Heading, description, and button slots\n * \n * Inherits theme colors from parent Section via CSS custom properties.\n * \n * @slot - Heading text content (passed to TypographyLockup)\n * @slot description - Body/description text\n * @slot buttons - Action buttons (typically ghost style)\n * \n * @example\n * ```html\n * <af-icon-text icon=\"settings\" heading-size=\"4\">\n * Feature Heading\n * <span slot=\"description\">Feature description text.</span>\n * <af-button slot=\"buttons\" variant=\"ghost\">Learn more</af-button>\n * </af-icon-text>\n * ```\n */\n@Component({\n tag: 'af-icon-text',\n styleUrl: 'af-icon-text.css',\n shadow: false,\n scoped: true,\n})\nexport class AfIconText {\n /**\n * The icon name to display in the IconBox\n */\n @Prop() icon!: IconName;\n\n /**\n * Heading size for the typography lockup (1-5, where 1 is largest)\n */\n @Prop() headingSize: 1 | 2 | 3 | 4 | 5 = 4;\n\n /**\n * Layout orientation\n * - 'vertical': Icon above text (default, used in grid layouts)\n * - 'horizontal': Icon beside text (used in compact layouts)\n */\n @Prop() orientation: 'vertical' | 'horizontal' = 'vertical';\n\n /**\n * Size of the icon box\n */\n @Prop() iconSize: 'small' | 'default' | 'large' = 'default';\n\n render() {\n const containerClasses = {\n 'icon-text': true,\n [`icon-text--${this.orientation}`]: true,\n };\n\n return (\n <Host>\n <div class={containerClasses}>\n <af-icon-box \n icon={this.icon} \n size={this.iconSize}\n class=\"icon-text__icon\"\n ></af-icon-box>\n \n <af-typography-lockup\n headingSize={this.headingSize}\n textAlignment=\"left\"\n buttonAlignment=\"vertical\"\n class=\"icon-text__lockup\"\n >\n <slot></slot>\n <span slot=\"description\">\n <slot name=\"description\"></slot>\n </span>\n <span slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </span>\n </af-typography-lockup>\n </div>\n </Host>\n );\n }\n}\n\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { A as AfIllustratedCard$1, d as defineCustomElement$1 } from './p-CnNV1GZE.js';
1
+ import { A as AfIllustratedCard$1, d as defineCustomElement$1 } from './p-DcJ8wKzl.js';
2
2
 
3
3
  const AfIllustratedCard = AfIllustratedCard$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { A as AfImage$1, d as defineCustomElement$1 } from './p-BvIMp8pz.js';
1
+ import { A as AfImage$1, d as defineCustomElement$1 } from './p-CNtgySkk.js';
2
2
 
3
3
  const AfImage = AfImage$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,7 +1,7 @@
1
1
  import { p as proxyCustomElement, H, h, c as Host } from './p-CxngDK-N.js';
2
- import { d as defineCustomElement$2 } from './p-DBnL9UHx.js';
2
+ import { d as defineCustomElement$2 } from './p-BHyABfs0.js';
3
3
 
4
- const afInPageBannerCss = ".sc-af-in-page-banner-h{display:block;width:100%}.banner.sc-af-in-page-banner{position:relative;display:flex;align-items:center;gap:40px;padding-left:40px;padding-right:148px;padding-top:0;padding-bottom:0;border-radius:var(--radii-card-level-1, 32px);overflow:hidden;max-width:1280px;width:100%}.banner.theme-mist-green.sc-af-in-page-banner{background-color:var(--colour-brand-mist-green, #c6d5d1);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-400, #2b484f);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner.theme-inkwell.sc-af-in-page-banner{background-color:var(--colour-brand-inkwell, #14343b);--banner-heading-color:var(--colour-brand-mist-green, #c6d5d1);--banner-body-color:var(--colour-inkwell-100, #d0d6d8);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-white, #ffffff);--af-button-secondary-stroke:var(--colour-brand-white, #ffffff)}.banner.theme-soft-clay.sc-af-in-page-banner{background-color:var(--colour-softclay-400, #c0ab8d);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-450, #203e45);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner.theme-white-ivory.sc-af-in-page-banner{background-color:var(--colour-brand-ivory-paper, #fff9ee);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-400, #2b484f);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner__wave-overlay.sc-af-in-page-banner{position:absolute;bottom:-17px;right:-156px;width:521px;height:323px;pointer-events:none;z-index:0}.banner__wave-svg.sc-af-in-page-banner{width:100%;height:100%}.banner.theme-mist-green.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:#d1ddda}.banner.theme-inkwell.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(255, 255, 255, 0.06)}.banner.theme-soft-clay.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(20, 52, 59, 0.06)}.banner.theme-white-ivory.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(20, 52, 59, 0.04)}.banner__illustration.sc-af-in-page-banner{position:relative;z-index:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:360px;height:360px;max-width:360px;max-height:360px;aspect-ratio:1}.banner__illustration-img.sc-af-in-page-banner{width:100%;height:100%;object-fit:contain}.banner__illustration.sc-af-in-page-banner-s>*,.banner__illustration .sc-af-in-page-banner-s>*{width:100%;height:100%;object-fit:contain}.banner__content.sc-af-in-page-banner{position:relative;z-index:1;flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;gap:40px;padding-top:var(--margins-margin-tb-tight, 48px);padding-bottom:var(--margins-margin-tb-tight, 48px);padding-right:0;padding-left:0}.banner__copy.sc-af-in-page-banner{display:flex;flex-direction:column;gap:16px;max-width:840px;width:100%;white-space:pre-wrap}.banner__heading.sc-af-in-page-banner{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--typography-headingweight, 500);font-size:44px;line-height:1;letter-spacing:-0.88px;color:var(--banner-heading-color, var(--colour-brand-inkwell, #14343b));margin:0;white-space:pre-wrap}.banner__description.sc-af-in-page-banner{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--typography-bodyweight, 400);font-size:18px;line-height:26px;color:var(--banner-body-color, var(--colour-inkwell-400, #2b484f));margin:0;white-space:pre-wrap}.banner__buttons.sc-af-in-page-banner{display:flex;flex-direction:row;gap:12px;align-items:flex-start}@media (max-width: 768px){.banner.sc-af-in-page-banner{flex-direction:column;align-items:stretch;padding:224px 0 0 0;border-radius:var(--radii-card-level-1-mobile, 24px);max-width:100%;min-height:auto}.banner__wave-overlay.sc-af-in-page-banner{display:none}.banner__illustration.sc-af-in-page-banner{position:absolute;top:12px;left:auto;right:0;transform:none;width:212px;height:212px;max-width:280px;max-height:280px}.banner__content.sc-af-in-page-banner{width:100%;min-height:320px;padding:16px 28px 48px 28px;gap:40px;flex:none}.banner__copy.sc-af-in-page-banner{max-width:100%}.banner__heading.sc-af-in-page-banner{font-size:32px;letter-spacing:-0.64px}.banner__buttons.sc-af-in-page-banner{flex-direction:column;align-items:stretch;gap:12px;width:100%}.banner__buttons.sc-af-in-page-banner{--af-button-width:100%}.banner__buttons.sc-af-in-page-banner af-button.sc-af-in-page-banner{display:block;width:100%}}@media (max-width: 480px){.banner.sc-af-in-page-banner{padding-top:200px}.banner__illustration.sc-af-in-page-banner{right:0;width:180px;height:180px}.banner__content.sc-af-in-page-banner{padding:16px 20px 36px 20px;min-height:280px}.banner__heading.sc-af-in-page-banner{font-size:28px;letter-spacing:-0.56px}}";
4
+ const afInPageBannerCss = ".sc-af-in-page-banner-h{display:block;width:100%}.banner.sc-af-in-page-banner{position:relative;display:flex;align-items:center;gap:40px;padding-left:40px;padding-right:148px;padding-top:0;padding-bottom:0;border-radius:var(--radii-card-level-1, 32px);overflow:hidden;max-width:1280px;width:100%}.banner.theme-mist-green.sc-af-in-page-banner{background-color:var(--colour-brand-mist-green, #c6d5d1);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-400, #2b484f);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner.theme-inkwell.sc-af-in-page-banner{background-color:var(--colour-brand-inkwell, #14343b);--banner-heading-color:var(--colour-brand-mist-green, #c6d5d1);--banner-body-color:var(--colour-inkwell-100, #d0d6d8);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-white, #ffffff);--af-button-secondary-stroke:var(--colour-brand-white, #ffffff)}.banner.theme-soft-clay.sc-af-in-page-banner{background-color:var(--colour-softclay-400, #c0ab8d);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-450, #203e45);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner.theme-white-ivory.sc-af-in-page-banner{background-color:var(--colour-brand-ivory-paper, #fff9ee);--banner-heading-color:var(--colour-brand-inkwell, #14343b);--banner-body-color:var(--colour-inkwell-400, #2b484f);--af-button-primary-bg:var(--colour-brand-ice, #a6fffb);--af-button-primary-bg-hover:var(--colour-ice-600, #95e6e2);--af-button-primary-text:var(--colour-brand-inkwell, #14343b);--af-button-primary-stroke:var(--colour-brand-inkwell, #14343b);--af-button-secondary-text:var(--colour-brand-inkwell, #14343b);--af-button-secondary-stroke:var(--colour-brand-inkwell, #14343b)}.banner__wave-overlay.sc-af-in-page-banner{position:absolute;bottom:-17px;right:-156px;width:521px;height:323px;pointer-events:none;z-index:0}.banner__wave-svg.sc-af-in-page-banner{width:100%;height:100%}.banner.theme-mist-green.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:#d1ddda}.banner.theme-inkwell.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(255, 255, 255, 0.06)}.banner.theme-soft-clay.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(20, 52, 59, 0.06)}.banner.theme-white-ivory.sc-af-in-page-banner .banner__wave-overlay.sc-af-in-page-banner{color:rgba(20, 52, 59, 0.04)}.banner__illustration.sc-af-in-page-banner{position:relative;z-index:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:360px;height:360px;max-width:360px;max-height:360px;aspect-ratio:1}.banner__illustration-img.sc-af-in-page-banner{width:100%;height:100%;object-fit:contain}.banner__illustration.sc-af-in-page-banner-s>*,.banner__illustration .sc-af-in-page-banner-s>*{width:100%;height:100%;object-fit:contain}.banner__content.sc-af-in-page-banner{position:relative;z-index:1;flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;gap:40px;padding-top:var(--margins-margin-tb-tight, 48px);padding-bottom:var(--margins-margin-tb-tight, 48px);padding-right:0;padding-left:0}.banner__copy.sc-af-in-page-banner{display:flex;flex-direction:column;gap:16px;max-width:840px;width:100%;white-space:normal}.banner__heading.sc-af-in-page-banner{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--typography-headingweight, 500);font-size:44px;line-height:1;letter-spacing:-0.88px;color:var(--banner-heading-color, var(--colour-brand-inkwell, #14343b));margin:0;white-space:normal}.banner__description.sc-af-in-page-banner{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:var(--typography-bodyweight, 400);font-size:18px;line-height:26px;color:var(--banner-body-color, var(--colour-inkwell-400, #2b484f));margin:0;white-space:normal}.banner__buttons.sc-af-in-page-banner{display:flex;flex-direction:row;gap:12px;align-items:flex-start}@media (max-width: 768px){.banner.sc-af-in-page-banner{flex-direction:column;align-items:stretch;padding:224px 0 0 0;border-radius:var(--radii-card-level-1-mobile, 24px);max-width:100%;min-height:auto}.banner__wave-overlay.sc-af-in-page-banner{display:none}.banner__illustration.sc-af-in-page-banner{position:absolute;top:12px;left:auto;right:0;transform:none;width:212px;height:212px;max-width:280px;max-height:280px}.banner__content.sc-af-in-page-banner{width:100%;min-height:320px;padding:16px 28px 48px 28px;gap:40px;flex:none}.banner__copy.sc-af-in-page-banner{max-width:100%}.banner__heading.sc-af-in-page-banner{font-size:32px;letter-spacing:-0.64px}.banner__buttons.sc-af-in-page-banner{flex-direction:column;align-items:stretch;gap:12px;width:100%}.banner__buttons.sc-af-in-page-banner{--af-button-width:100%}.banner__buttons.sc-af-in-page-banner af-button.sc-af-in-page-banner{display:block;width:100%}}@media (max-width: 480px){.banner.sc-af-in-page-banner{padding-top:200px}.banner__illustration.sc-af-in-page-banner{right:0;width:180px;height:180px}.banner__content.sc-af-in-page-banner{padding:16px 20px 36px 20px;min-height:280px}.banner__heading.sc-af-in-page-banner{font-size:28px;letter-spacing:-0.56px}}";
5
5
 
6
6
  const AfInPageBanner$1 = /*@__PURE__*/ proxyCustomElement(class AfInPageBanner extends H {
7
7
  constructor(registerHost) {
@@ -40,7 +40,7 @@ const AfInPageBanner$1 = /*@__PURE__*/ proxyCustomElement(class AfInPageBanner e
40
40
  return (h("div", { class: "banner__wave-overlay", "aria-hidden": "true" }, h("svg", { viewBox: "0 0 521 323", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "banner__wave-svg" }, h("path", { d: "M473.775 46.273C443.539 15.92 403.701 -0.631616 361.351 0.0184478H154.183L112.67 67.225H361.893C362.189 67.225 362.533 67.225 362.829 67.225C387.155 67.225 410.004 76.7259 427.289 94.0776C445.017 111.879 454.816 135.682 454.816 161.134C454.816 213.389 412.959 255.843 361.548 255.843H108.041C84.9457 255.843 66.1345 236.742 66.1345 213.289C66.1345 189.837 84.9949 170.435 107.992 169.735H334.957L377.799 102.528H106.859C47.9636 104.029 0 153.683 0 213.289C0 272.895 48.456 323 108.041 323H361.548C449.449 323 521 250.343 521 161.084C521 117.53 504.257 76.7759 473.824 46.2229L473.775 46.273Z", fill: "currentColor" }))));
41
41
  }
42
42
  render() {
43
- return (h(Host, { key: '382549642707642ba3182f7bf4391e3254a6cf8e' }, h("div", { key: '0d144e64a93e5222c426d0b9d0379a1318538972', class: `banner theme-${this.theme}` }, this.showWaveDecoration && this.renderWaveOverlay(), h("div", { key: 'f82845be709ec7e98b84dd5e65f5eb67473c13bb', class: "banner__illustration" }, this.illustrationUrl ? (h("img", { src: this.illustrationUrl, alt: "", class: "banner__illustration-img", loading: "lazy" })) : (h("slot", { name: "illustration" }))), h("div", { key: '73c35ca159f9588ac8fb9c8941ec43ea5ffa0b7a', class: "banner__content" }, h("div", { key: '5cab358c648677515bb9bf8f8594d2e37c43af89', class: "banner__copy" }, this.heading && (h("h2", { key: 'f0bbe316c200bbf7e6a5406f3e089c0a839e7709', class: "banner__heading" }, this.heading)), this.description && (h("p", { key: 'c6a0f293b2eb35489ed97d32ed162791a9087a2d', class: "banner__description" }, this.description))), (this.primaryButtonText || this.secondaryButtonText) && (h("div", { key: '87cff6182bb7de438ba7393ae308aaf0fba09814', class: "banner__buttons" }, this.primaryButtonText && (h("af-button", { key: 'b3f3c97a10e8571fbbf9ebd20c6773303dc90b18', href: this.primaryButtonUrl, variant: "primary" }, this.primaryButtonText)), this.secondaryButtonText && (h("af-button", { key: 'efae95eebae4dc6401bff0c1219c376f7c7d73a5', href: this.secondaryButtonUrl, variant: "secondary" }, this.secondaryButtonText))))))));
43
+ return (h(Host, { key: 'df17b8226e06ca501e361e95e3628429f1bc7406' }, h("div", { key: '7479312bfb457b3629867cb0f6ef87e3e400db14', class: `banner theme-${this.theme}` }, this.showWaveDecoration && this.renderWaveOverlay(), h("div", { key: '4d0526f4a6255ecc99daf64081244b9ea51a3e8e', class: "banner__illustration" }, this.illustrationUrl ? (h("img", { src: this.illustrationUrl, alt: "", class: "banner__illustration-img", loading: "lazy" })) : (h("slot", { name: "illustration" }))), h("div", { key: 'ba30cb833bbd77e4d0c752b381be3c869a1864e8', class: "banner__content" }, h("div", { key: '43430d9e4d84cd2afd3ab7d535bf5317bf8d9a69', class: "banner__copy" }, h("h2", { key: '3d1db708a56ebc55588903150cf8fd894588fefe', class: "banner__heading" }, h("slot", { key: '51e7a8a9a2259cf2f51ea9bc4a0c7a95d380f15a', name: "heading" }, this.heading)), h("div", { key: 'f6703cfa2724c96bca7bbf774ffac6638e6e339a', class: "banner__description" }, h("slot", { key: '6aa35a37f990f0b1a9cdf857f01019e722d73dc9', name: "description" }, this.description))), h("div", { key: '2696fc3bdf45b93aea64a0d216b9853a071c445e', class: "banner__buttons" }, h("slot", { key: '10356f63627f521666a49f325bb0ee27079f12b5', name: "buttons" }, this.primaryButtonText && (h("af-button", { key: 'af09d02a42cc4da47d65dbcef9adf9cc1ffb731c', href: this.primaryButtonUrl, variant: "primary" }, this.primaryButtonText)), this.secondaryButtonText && (h("af-button", { key: '50c10b87f15c91b1fb9ba71cf95ed78d316e0395', href: this.secondaryButtonUrl, variant: "secondary" }, this.secondaryButtonText))))))));
44
44
  }
45
45
  static get style() { return afInPageBannerCss; }
46
46
  }, [262, "af-in-page-banner", {