@affinda/wc 0.3.1 → 0.4.1

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 (499) 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-feature-accordion.entry.esm.js.map +1 -1
  5. package/dist/affinda/af-hero.entry.esm.js.map +1 -1
  6. package/dist/affinda/af-icon-button.entry.esm.js.map +1 -1
  7. package/dist/affinda/af-nav-accordion-item.entry.esm.js.map +1 -1
  8. package/dist/affinda/af-stat.entry.esm.js.map +1 -1
  9. package/dist/affinda/af-testimonial-stat.entry.esm.js.map +1 -1
  10. package/dist/affinda/affinda.css +1 -1
  11. package/dist/affinda/affinda.esm.js +1 -1
  12. package/dist/affinda/index.esm.js +1 -1
  13. package/dist/affinda/{p-bbfc9df6.entry.js → p-05072f90.entry.js} +2 -2
  14. package/dist/affinda/p-08a42935.entry.js +2 -0
  15. package/dist/affinda/{p-9aed7039.entry.js.map → p-08a42935.entry.js.map} +1 -1
  16. package/dist/affinda/{p-3ed408f6.entry.js → p-14bd7903.entry.js} +2 -2
  17. package/dist/affinda/{p-9eba91fd.entry.js → p-1902ed20.entry.js} +2 -2
  18. package/dist/affinda/{p-165c413d.entry.js → p-19dc4331.entry.js} +2 -2
  19. package/dist/affinda/{p-ae430873.entry.js → p-255a8254.entry.js} +2 -2
  20. package/dist/affinda/{p-4a9b192b.entry.js → p-2586fbb8.entry.js} +2 -2
  21. package/dist/affinda/{p-631d141c.entry.js → p-26a6d9a7.entry.js} +2 -2
  22. package/dist/affinda/{p-7867c2ff.entry.js → p-27469df6.entry.js} +2 -2
  23. package/dist/affinda/{p-5c163c5b.entry.js → p-2a8441cb.entry.js} +2 -2
  24. package/dist/affinda/{p-dabd389a.entry.js → p-3238f8e8.entry.js} +2 -2
  25. package/dist/affinda/{p-b9ec0e75.entry.js → p-3c6790f8.entry.js} +2 -2
  26. package/dist/affinda/{p-f19cb091.entry.js → p-3dd90f46.entry.js} +2 -2
  27. package/dist/affinda/{p-9c1e9bd8.entry.js → p-42c4d7b1.entry.js} +2 -2
  28. package/dist/affinda/{p-6e181b2b.entry.js → p-432ee0e3.entry.js} +2 -2
  29. package/dist/affinda/{p-1c96856a.entry.js → p-43a0286a.entry.js} +2 -2
  30. package/dist/affinda/{p-e07e27f1.entry.js → p-44e976ee.entry.js} +2 -2
  31. package/dist/affinda/{p-7111051c.entry.js → p-479a300e.entry.js} +2 -2
  32. package/dist/affinda/{p-4b2c0698.entry.js → p-4ccc3147.entry.js} +2 -2
  33. package/dist/affinda/{p-6c33fee6.entry.js → p-4f15b8f0.entry.js} +2 -2
  34. package/dist/affinda/p-57fcfd78.entry.js +2 -0
  35. package/dist/affinda/{p-2237e652.entry.js.map → p-57fcfd78.entry.js.map} +1 -1
  36. package/dist/affinda/{p-d362651c.entry.js → p-587fd0fa.entry.js} +2 -2
  37. package/dist/affinda/p-5885ebd3.entry.js +2 -0
  38. package/dist/affinda/{p-90ef7baa.entry.js.map → p-5885ebd3.entry.js.map} +1 -1
  39. package/dist/affinda/p-5f3419c3.entry.js +2 -0
  40. package/dist/affinda/p-5f3419c3.entry.js.map +1 -0
  41. package/dist/affinda/{p-862a2509.entry.js → p-67a27eaf.entry.js} +2 -2
  42. package/dist/affinda/{p-44d960ca.entry.js → p-67e8c6f6.entry.js} +2 -2
  43. package/dist/affinda/{p-41bbb218.entry.js → p-6986f604.entry.js} +2 -2
  44. package/dist/affinda/{p-85cc55bb.entry.js → p-6b7fcb18.entry.js} +2 -2
  45. package/dist/affinda/{p-4a355b69.entry.js → p-7013570d.entry.js} +2 -2
  46. package/dist/affinda/p-750063ab.entry.js +2 -0
  47. package/dist/affinda/p-750063ab.entry.js.map +1 -0
  48. package/dist/affinda/{p-15f0bd34.entry.js → p-75443f08.entry.js} +2 -2
  49. package/dist/affinda/{p-364ffa25.entry.js → p-7640c285.entry.js} +2 -2
  50. package/dist/affinda/{p-827f3050.entry.js → p-77ec01ee.entry.js} +2 -2
  51. package/dist/affinda/{p-256970e3.entry.js → p-7c9683d8.entry.js} +2 -2
  52. package/dist/affinda/{p-0acadf6f.entry.js → p-7ce2b434.entry.js} +2 -2
  53. package/dist/affinda/{p-dcc89b4c.entry.js → p-7eca844d.entry.js} +2 -2
  54. package/dist/affinda/{p-5e5e7d75.entry.js → p-95b49b45.entry.js} +2 -2
  55. package/dist/affinda/{p-365a75e2.entry.js → p-9610cd3c.entry.js} +2 -2
  56. package/dist/affinda/{p-6756aa66.entry.js → p-9963bec0.entry.js} +2 -2
  57. package/dist/affinda/{p-342b08e5.entry.js → p-9b115359.entry.js} +2 -2
  58. package/dist/affinda/p-9b9e81cf.entry.js +2 -0
  59. package/dist/affinda/{p-7d3cdda1.entry.js.map → p-9b9e81cf.entry.js.map} +1 -1
  60. package/dist/affinda/p-9ca72e02.entry.js +2 -0
  61. package/dist/affinda/{p-83bb96cc.entry.js.map → p-9ca72e02.entry.js.map} +1 -1
  62. package/dist/affinda/{p-4f59b554.entry.js → p-9e19a477.entry.js} +2 -2
  63. package/dist/affinda/p-C4WBekD2.js +3 -0
  64. package/dist/affinda/p-C4WBekD2.js.map +1 -0
  65. package/dist/affinda/{p-a8d75eb1.entry.js → p-a7b51bb6.entry.js} +2 -2
  66. package/dist/affinda/{p-9f3e7116.entry.js → p-ac45df4b.entry.js} +2 -2
  67. package/dist/affinda/{p-32d62fbb.entry.js → p-adabec15.entry.js} +2 -2
  68. package/dist/affinda/{p-bed7d9a1.entry.js → p-b65cf4c3.entry.js} +2 -2
  69. package/dist/affinda/{p-95d4696a.entry.js → p-b82fc7f1.entry.js} +2 -2
  70. package/dist/affinda/{p-6475796d.entry.js → p-b8ea57a9.entry.js} +2 -2
  71. package/dist/affinda/{p-4058a1eb.entry.js → p-bac968a1.entry.js} +2 -2
  72. package/dist/affinda/{p-76cb736d.entry.js → p-bc77706d.entry.js} +2 -2
  73. package/dist/affinda/{p-d7d82986.entry.js → p-c4fd7d48.entry.js} +2 -2
  74. package/dist/affinda/{p-6ea474a3.entry.js → p-ce77f08f.entry.js} +2 -2
  75. package/dist/affinda/{p-35607741.entry.js → p-d06ae9cd.entry.js} +2 -2
  76. package/dist/affinda/{p-86f6dfdc.entry.js → p-d34da6c0.entry.js} +2 -2
  77. package/dist/affinda/{p-24e74c10.entry.js → p-d647ae06.entry.js} +2 -2
  78. package/dist/affinda/{p-436673bb.entry.js → p-d6b8c3b4.entry.js} +2 -2
  79. package/dist/affinda/p-d923549d.entry.js +2 -0
  80. package/dist/affinda/{p-068ac2fb.entry.js.map → p-d923549d.entry.js.map} +1 -1
  81. package/dist/affinda/{p-65dd559a.entry.js → p-d9913985.entry.js} +2 -2
  82. package/dist/affinda/{p-9480f00d.entry.js → p-dd0cd57e.entry.js} +2 -2
  83. package/dist/affinda/{p-a25d3257.entry.js → p-dd4c8640.entry.js} +2 -2
  84. package/dist/affinda/{p-43f40921.entry.js → p-df6c7170.entry.js} +2 -2
  85. package/dist/affinda/p-e0619222.entry.js +2 -0
  86. package/dist/affinda/{p-4eeeb8a1.entry.js.map → p-e0619222.entry.js.map} +1 -1
  87. package/dist/affinda/{p-eeda78ea.entry.js → p-e90a3892.entry.js} +2 -2
  88. package/dist/affinda/p-ea150b3d.entry.js +2 -0
  89. package/dist/affinda/{p-1b4b0c88.entry.js.map → p-ea150b3d.entry.js.map} +1 -1
  90. package/dist/affinda/{p-a1e80460.entry.js → p-ec042bc4.entry.js} +2 -2
  91. package/dist/affinda/{p-a02d6192.entry.js → p-f7fc76d2.entry.js} +2 -2
  92. package/dist/affinda/{p-9ce0adc2.entry.js → p-f9ecbde8.entry.js} +2 -2
  93. package/dist/affinda/{p-61a6b43d.entry.js → p-fff252df.entry.js} +2 -2
  94. package/dist/cjs/af-accordion-item.cjs.entry.js +2 -2
  95. package/dist/cjs/af-accordion-item.entry.cjs.js.map +1 -1
  96. package/dist/cjs/af-accordion.cjs.entry.js +1 -1
  97. package/dist/cjs/af-aspect-ratio.cjs.entry.js +1 -1
  98. package/dist/cjs/af-button-group.cjs.entry.js +1 -1
  99. package/dist/cjs/af-button.cjs.entry.js +2 -2
  100. package/dist/cjs/af-button.entry.cjs.js.map +1 -1
  101. package/dist/cjs/af-card.cjs.entry.js +11 -3
  102. package/dist/cjs/af-card.entry.cjs.js.map +1 -1
  103. package/dist/cjs/af-center.cjs.entry.js +1 -1
  104. package/dist/cjs/af-checkbox.cjs.entry.js +1 -1
  105. package/dist/cjs/af-client-carousel.cjs.entry.js +1 -1
  106. package/dist/cjs/af-color-swatch.cjs.entry.js +1 -1
  107. package/dist/cjs/af-contact-item.cjs.entry.js +1 -1
  108. package/dist/cjs/af-container.cjs.entry.js +1 -1
  109. package/dist/cjs/af-divider.cjs.entry.js +1 -1
  110. package/dist/cjs/af-feature-accordion.cjs.entry.js +4 -4
  111. package/dist/cjs/af-feature-accordion.entry.cjs.js.map +1 -1
  112. package/dist/cjs/af-feature-card.cjs.entry.js +1 -1
  113. package/dist/cjs/af-feature-grid.cjs.entry.js +1 -1
  114. package/dist/cjs/af-fieldset.cjs.entry.js +1 -1
  115. package/dist/cjs/af-footer-column.cjs.entry.js +1 -1
  116. package/dist/cjs/af-footer-link.cjs.entry.js +1 -1
  117. package/dist/cjs/af-footer.cjs.entry.js +1 -1
  118. package/dist/cjs/af-grid-callout.cjs.entry.js +1 -1
  119. package/dist/cjs/af-grid.cjs.entry.js +1 -1
  120. package/dist/cjs/af-heading_5.cjs.entry.js +1 -1
  121. package/dist/cjs/af-hero.cjs.entry.js +2 -2
  122. package/dist/cjs/af-hero.entry.cjs.js.map +1 -1
  123. package/dist/cjs/af-icon-box.cjs.entry.js +1 -1
  124. package/dist/cjs/af-icon-button.cjs.entry.js +2 -2
  125. package/dist/cjs/af-icon-button.entry.cjs.js.map +1 -1
  126. package/dist/cjs/af-icon-text.cjs.entry.js +1 -1
  127. package/dist/cjs/af-icon.cjs.entry.js +1 -1
  128. package/dist/cjs/af-illustrated-card.cjs.entry.js +1 -1
  129. package/dist/cjs/af-image.cjs.entry.js +1 -1
  130. package/dist/cjs/af-in-page-banner.cjs.entry.js +1 -1
  131. package/dist/cjs/af-inline.cjs.entry.js +1 -1
  132. package/dist/cjs/af-input.cjs.entry.js +1 -1
  133. package/dist/cjs/af-logo-well.cjs.entry.js +1 -1
  134. package/dist/cjs/af-nav-accordion-item.cjs.entry.js +2 -2
  135. package/dist/cjs/af-nav-accordion-item.entry.cjs.js.map +1 -1
  136. package/dist/cjs/af-nav-accordion.cjs.entry.js +1 -1
  137. package/dist/cjs/af-nav-card.cjs.entry.js +1 -1
  138. package/dist/cjs/af-nav-menu-nest.cjs.entry.js +1 -1
  139. package/dist/cjs/af-nav-menu.cjs.entry.js +1 -1
  140. package/dist/cjs/af-number-badge.cjs.entry.js +1 -1
  141. package/dist/cjs/af-numbered-stepper-item.cjs.entry.js +1 -1
  142. package/dist/cjs/af-numbered-stepper.cjs.entry.js +1 -1
  143. package/dist/cjs/af-paperclip-decoration.cjs.entry.js +1 -1
  144. package/dist/cjs/af-progress-line.cjs.entry.js +1 -1
  145. package/dist/cjs/af-radio.cjs.entry.js +1 -1
  146. package/dist/cjs/af-section.cjs.entry.js +1 -1
  147. package/dist/cjs/af-show.cjs.entry.js +1 -1
  148. package/dist/cjs/af-social-link.cjs.entry.js +1 -1
  149. package/dist/cjs/af-spacer.cjs.entry.js +1 -1
  150. package/dist/cjs/af-split-section.cjs.entry.js +1 -1
  151. package/dist/cjs/af-stack.cjs.entry.js +1 -1
  152. package/dist/cjs/af-stat.cjs.entry.js +2 -2
  153. package/dist/cjs/af-stat.entry.cjs.js.map +1 -1
  154. package/dist/cjs/af-stats-row.cjs.entry.js +1 -1
  155. package/dist/cjs/af-stepper-step.cjs.entry.js +1 -1
  156. package/dist/cjs/af-stepper.cjs.entry.js +1 -1
  157. package/dist/cjs/af-switch.cjs.entry.js +1 -1
  158. package/dist/cjs/af-tab-bar.cjs.entry.js +1 -1
  159. package/dist/cjs/af-tab.cjs.entry.js +1 -1
  160. package/dist/cjs/af-tag.cjs.entry.js +1 -1
  161. package/dist/cjs/af-testimonial-carousel.cjs.entry.js +1 -1
  162. package/dist/cjs/af-testimonial-stat.cjs.entry.js +2 -2
  163. package/dist/cjs/af-testimonial-stat.entry.cjs.js.map +1 -1
  164. package/dist/cjs/af-testimonial.cjs.entry.js +1 -1
  165. package/dist/cjs/af-text-image-nest.cjs.entry.js +1 -1
  166. package/dist/cjs/af-text-image.cjs.entry.js +1 -1
  167. package/dist/cjs/af-textarea.cjs.entry.js +1 -1
  168. package/dist/cjs/af-theme-override.cjs.entry.js +1 -1
  169. package/dist/cjs/af-typography-lockup.cjs.entry.js +1 -1
  170. package/dist/cjs/af-video-container.cjs.entry.js +1 -1
  171. package/dist/cjs/af-visually-hidden.cjs.entry.js +1 -1
  172. package/dist/cjs/affinda.cjs.js +2 -2
  173. package/dist/cjs/{index-BzZA0USq.js → index-3161MbMQ.js} +3 -3
  174. package/dist/cjs/index-3161MbMQ.js.map +1 -0
  175. package/dist/cjs/index.cjs.js +1 -1
  176. package/dist/cjs/loader.cjs.js +2 -2
  177. package/dist/collection/components/af-accordion-item/af-accordion-item.css +11 -3
  178. package/dist/collection/components/af-button/af-button.css +16 -1
  179. package/dist/collection/components/af-card/af-card.css +30 -0
  180. package/dist/collection/components/af-card/af-card.js +29 -1
  181. package/dist/collection/components/af-card/af-card.js.map +1 -1
  182. package/dist/collection/components/af-feature-accordion/af-feature-accordion.css +36 -2
  183. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +2 -2
  184. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js.map +1 -1
  185. package/dist/collection/components/af-hero/af-hero.css +27 -5
  186. package/dist/collection/components/af-icon-button/af-icon-button.css +15 -1
  187. package/dist/collection/components/af-nav-accordion-item/af-nav-accordion-item.css +10 -2
  188. package/dist/collection/components/af-stat/af-stat.css +5 -0
  189. package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.css +4 -0
  190. package/dist/components/af-accordion-item.js +2 -2
  191. package/dist/components/af-accordion-item.js.map +1 -1
  192. package/dist/components/af-accordion.js +1 -1
  193. package/dist/components/af-aspect-ratio.js +1 -1
  194. package/dist/components/af-button-group.js +1 -1
  195. package/dist/components/af-button.js +1 -1
  196. package/dist/components/af-card.js +1 -1
  197. package/dist/components/af-center.js +1 -1
  198. package/dist/components/af-checkbox.js +1 -1
  199. package/dist/components/af-client-carousel.js +1 -1
  200. package/dist/components/af-color-swatch.js +1 -1
  201. package/dist/components/af-contact-item.js +1 -1
  202. package/dist/components/af-container.js +1 -1
  203. package/dist/components/af-divider.js +1 -1
  204. package/dist/components/af-feature-accordion.js +4 -4
  205. package/dist/components/af-feature-accordion.js.map +1 -1
  206. package/dist/components/af-feature-card.js +1 -1
  207. package/dist/components/af-feature-grid.js +2 -2
  208. package/dist/components/af-fieldset.js +1 -1
  209. package/dist/components/af-footer-column.js +1 -1
  210. package/dist/components/af-footer-link.js +1 -1
  211. package/dist/components/af-footer.js +1 -1
  212. package/dist/components/af-grid-callout.js +2 -2
  213. package/dist/components/af-grid.js +1 -1
  214. package/dist/components/af-heading.js +1 -1
  215. package/dist/components/af-hero.js +1 -1
  216. package/dist/components/af-icon-box.js +1 -1
  217. package/dist/components/af-icon-button.js +1 -1
  218. package/dist/components/af-icon-text.js +4 -4
  219. package/dist/components/af-icon.js +1 -1
  220. package/dist/components/af-illustrated-card.js +1 -1
  221. package/dist/components/af-image.js +1 -1
  222. package/dist/components/af-in-page-banner.js +2 -2
  223. package/dist/components/af-inline.js +1 -1
  224. package/dist/components/af-input.js +1 -1
  225. package/dist/components/af-logo-well.js +1 -1
  226. package/dist/components/af-logo.js +1 -1
  227. package/dist/components/af-nav-accordion-item.js +2 -2
  228. package/dist/components/af-nav-accordion-item.js.map +1 -1
  229. package/dist/components/af-nav-accordion.js +1 -1
  230. package/dist/components/af-nav-card.js +1 -1
  231. package/dist/components/af-nav-item.js +1 -1
  232. package/dist/components/af-nav-menu-nest.js +1 -1
  233. package/dist/components/af-nav-menu.js +1 -1
  234. package/dist/components/af-navbar.js +1 -1
  235. package/dist/components/af-number-badge.js +1 -1
  236. package/dist/components/af-numbered-stepper-item.js +3 -3
  237. package/dist/components/af-numbered-stepper.js +1 -1
  238. package/dist/components/af-paperclip-decoration.js +1 -1
  239. package/dist/components/af-progress-line.js +1 -1
  240. package/dist/components/af-radio.js +1 -1
  241. package/dist/components/af-section.js +1 -1
  242. package/dist/components/af-show.js +1 -1
  243. package/dist/components/af-social-link.js +1 -1
  244. package/dist/components/af-spacer.js +1 -1
  245. package/dist/components/af-split-section.js +2 -2
  246. package/dist/components/af-stack.js +1 -1
  247. package/dist/components/af-stat.js +4 -4
  248. package/dist/components/af-stat.js.map +1 -1
  249. package/dist/components/af-stats-row.js +1 -1
  250. package/dist/components/af-stepper-step.js +1 -1
  251. package/dist/components/af-stepper.js +1 -1
  252. package/dist/components/af-switch.js +1 -1
  253. package/dist/components/af-tab-bar.js +1 -1
  254. package/dist/components/af-tab.js +1 -1
  255. package/dist/components/af-tag.js +1 -1
  256. package/dist/components/af-testimonial-carousel.js +2 -2
  257. package/dist/components/af-testimonial-stat.js +4 -4
  258. package/dist/components/af-testimonial-stat.js.map +1 -1
  259. package/dist/components/af-testimonial.js +4 -4
  260. package/dist/components/af-text-image-nest.js +1 -1
  261. package/dist/components/af-text-image.js +2 -2
  262. package/dist/components/af-text.js +1 -1
  263. package/dist/components/af-textarea.js +1 -1
  264. package/dist/components/af-theme-override.js +1 -1
  265. package/dist/components/af-typography-lockup.js +1 -1
  266. package/dist/components/af-video-container.js +3 -3
  267. package/dist/components/af-visually-hidden.js +1 -1
  268. package/dist/components/index.js +25 -25
  269. package/dist/components/{p-Dd3nOGt_.js → p--aWqZ9H9.js} +3 -3
  270. package/dist/components/{p-Dd3nOGt_.js.map → p--aWqZ9H9.js.map} +1 -1
  271. package/dist/components/{p-DqJRvNOl.js → p-1ol-T8nk.js} +4 -4
  272. package/dist/components/{p-DqJRvNOl.js.map → p-1ol-T8nk.js.map} +1 -1
  273. package/dist/components/{p--gChEc0P.js → p-B-hgy9Qr.js} +4 -4
  274. package/dist/components/p-B-hgy9Qr.js.map +1 -0
  275. package/dist/components/{p-DyZaoX4Q.js → p-Bi6_eN-1.js} +3 -3
  276. package/dist/components/{p-DyZaoX4Q.js.map → p-Bi6_eN-1.js.map} +1 -1
  277. package/dist/components/{p-CYKk6Qhi.js → p-Bx-hxLP0.js} +3 -3
  278. package/dist/components/{p-CYKk6Qhi.js.map → p-Bx-hxLP0.js.map} +1 -1
  279. package/dist/components/{p-DbVc-b1e.js → p-BysQTjHh.js} +3 -3
  280. package/dist/components/{p-DbVc-b1e.js.map → p-BysQTjHh.js.map} +1 -1
  281. package/dist/components/{p-C4G6votC.js → p-C0enaaNi.js} +3 -3
  282. package/dist/components/{p-C4G6votC.js.map → p-C0enaaNi.js.map} +1 -1
  283. package/dist/components/{p-BROLmNeM.js → p-C7gWqhJQ.js} +3 -3
  284. package/dist/components/{p-BROLmNeM.js.map → p-C7gWqhJQ.js.map} +1 -1
  285. package/dist/components/{p-mbl86-w6.js → p-CDPPh9ES.js} +5 -5
  286. package/dist/components/{p-mbl86-w6.js.map → p-CDPPh9ES.js.map} +1 -1
  287. package/dist/components/{p-ClZAZSzR.js → p-CTDelwMf.js} +3 -3
  288. package/dist/components/{p-ClZAZSzR.js.map → p-CTDelwMf.js.map} +1 -1
  289. package/dist/components/{p-CX0pktY8.js → p-CaHyFRpU.js} +3 -3
  290. package/dist/components/{p-CX0pktY8.js.map → p-CaHyFRpU.js.map} +1 -1
  291. package/dist/components/{p-3Gzh4deR.js → p-CdR70Kv1.js} +5 -5
  292. package/dist/components/{p-3Gzh4deR.js.map → p-CdR70Kv1.js.map} +1 -1
  293. package/dist/components/{p-NtJ_O8-z.js → p-CeBCwjRf.js} +3 -3
  294. package/dist/components/{p-NtJ_O8-z.js.map → p-CeBCwjRf.js.map} +1 -1
  295. package/dist/components/{p-DOgb6SUj.js → p-CiY0Twna.js} +3 -3
  296. package/dist/components/p-CiY0Twna.js.map +1 -0
  297. package/dist/components/{p-CP8rLe_C.js → p-D44TKuX4.js} +3 -3
  298. package/dist/components/{p-CP8rLe_C.js.map → p-D44TKuX4.js.map} +1 -1
  299. package/dist/components/{p-Dx_UXI2a.js → p-D6WBvdoZ.js} +3 -3
  300. package/dist/components/{p-Dx_UXI2a.js.map → p-D6WBvdoZ.js.map} +1 -1
  301. package/dist/components/{p-CRnEuh5f.js → p-D7xVlaes.js} +7 -7
  302. package/dist/components/{p-CRnEuh5f.js.map → p-D7xVlaes.js.map} +1 -1
  303. package/dist/components/{p-BT13eL0Y.js → p-DBkfDqnN.js} +3 -3
  304. package/dist/components/{p-BT13eL0Y.js.map → p-DBkfDqnN.js.map} +1 -1
  305. package/dist/components/p-DGlAo2Hc.js +71 -0
  306. package/dist/components/p-DGlAo2Hc.js.map +1 -0
  307. package/dist/components/{p-CoL_hRAR.js → p-DWD7Oc5l.js} +3 -3
  308. package/dist/components/{p-CoL_hRAR.js.map → p-DWD7Oc5l.js.map} +1 -1
  309. package/dist/components/{p-QoDae21y.js → p-DYZT-0xm.js} +3 -3
  310. package/dist/components/{p-QoDae21y.js.map → p-DYZT-0xm.js.map} +1 -1
  311. package/dist/components/{p-BRDu9zN1.js → p-Dga7rIrc.js} +3 -3
  312. package/dist/components/{p-BRDu9zN1.js.map → p-Dga7rIrc.js.map} +1 -1
  313. package/dist/components/{p-O26uYJSV.js → p-DjjPGV3a.js} +4 -4
  314. package/dist/components/{p-O26uYJSV.js.map → p-DjjPGV3a.js.map} +1 -1
  315. package/dist/components/{p-B_OoX__z.js → p-DmlCoFGW.js} +3 -3
  316. package/dist/components/{p-B_OoX__z.js.map → p-DmlCoFGW.js.map} +1 -1
  317. package/dist/components/p-G-vNzZpq.js +62 -0
  318. package/dist/components/p-G-vNzZpq.js.map +1 -0
  319. package/dist/components/{p-BgXXQG75.js → p-G5cG9ahw.js} +3 -3
  320. package/dist/components/{p-BgXXQG75.js.map → p-G5cG9ahw.js.map} +1 -1
  321. package/dist/components/{p-kEqwmn80.js → p-OefAiC9E.js} +3 -3
  322. package/dist/components/{p-kEqwmn80.js.map → p-OefAiC9E.js.map} +1 -1
  323. package/dist/components/{p-DJC-C2BS.js → p-PKWusChD.js} +3 -3
  324. package/dist/components/{p-DJC-C2BS.js.map → p-PKWusChD.js.map} +1 -1
  325. package/dist/components/{p-D8DmhESZ.js → p-Xy0_sffa.js} +3 -3
  326. package/dist/components/{p-D8DmhESZ.js.map → p-Xy0_sffa.js.map} +1 -1
  327. package/dist/components/{p-nA3Uvhwb.js → p-gD0WsQqs.js} +4 -4
  328. package/dist/components/{p-nA3Uvhwb.js.map → p-gD0WsQqs.js.map} +1 -1
  329. package/dist/components/{p-LRPXnaSx.js → p-sxltTNnO.js} +3 -3
  330. package/dist/components/{p-LRPXnaSx.js.map → p-sxltTNnO.js.map} +1 -1
  331. package/dist/components/{p-BXmiPS9x.js → p-uvbCz67Q.js} +3 -3
  332. package/dist/components/{p-BXmiPS9x.js.map → p-uvbCz67Q.js.map} +1 -1
  333. package/dist/esm/af-accordion-item.entry.js +2 -2
  334. package/dist/esm/af-accordion-item.entry.js.map +1 -1
  335. package/dist/esm/af-accordion.entry.js +1 -1
  336. package/dist/esm/af-aspect-ratio.entry.js +1 -1
  337. package/dist/esm/af-button-group.entry.js +1 -1
  338. package/dist/esm/af-button.entry.js +2 -2
  339. package/dist/esm/af-button.entry.js.map +1 -1
  340. package/dist/esm/af-card.entry.js +11 -3
  341. package/dist/esm/af-card.entry.js.map +1 -1
  342. package/dist/esm/af-center.entry.js +1 -1
  343. package/dist/esm/af-checkbox.entry.js +1 -1
  344. package/dist/esm/af-client-carousel.entry.js +1 -1
  345. package/dist/esm/af-color-swatch.entry.js +1 -1
  346. package/dist/esm/af-contact-item.entry.js +1 -1
  347. package/dist/esm/af-container.entry.js +1 -1
  348. package/dist/esm/af-divider.entry.js +1 -1
  349. package/dist/esm/af-feature-accordion.entry.js +4 -4
  350. package/dist/esm/af-feature-accordion.entry.js.map +1 -1
  351. package/dist/esm/af-feature-card.entry.js +1 -1
  352. package/dist/esm/af-feature-grid.entry.js +1 -1
  353. package/dist/esm/af-fieldset.entry.js +1 -1
  354. package/dist/esm/af-footer-column.entry.js +1 -1
  355. package/dist/esm/af-footer-link.entry.js +1 -1
  356. package/dist/esm/af-footer.entry.js +1 -1
  357. package/dist/esm/af-grid-callout.entry.js +1 -1
  358. package/dist/esm/af-grid.entry.js +1 -1
  359. package/dist/esm/af-heading_5.entry.js +1 -1
  360. package/dist/esm/af-hero.entry.js +2 -2
  361. package/dist/esm/af-hero.entry.js.map +1 -1
  362. package/dist/esm/af-icon-box.entry.js +1 -1
  363. package/dist/esm/af-icon-button.entry.js +2 -2
  364. package/dist/esm/af-icon-button.entry.js.map +1 -1
  365. package/dist/esm/af-icon-text.entry.js +1 -1
  366. package/dist/esm/af-icon.entry.js +1 -1
  367. package/dist/esm/af-illustrated-card.entry.js +1 -1
  368. package/dist/esm/af-image.entry.js +1 -1
  369. package/dist/esm/af-in-page-banner.entry.js +1 -1
  370. package/dist/esm/af-inline.entry.js +1 -1
  371. package/dist/esm/af-input.entry.js +1 -1
  372. package/dist/esm/af-logo-well.entry.js +1 -1
  373. package/dist/esm/af-nav-accordion-item.entry.js +2 -2
  374. package/dist/esm/af-nav-accordion-item.entry.js.map +1 -1
  375. package/dist/esm/af-nav-accordion.entry.js +1 -1
  376. package/dist/esm/af-nav-card.entry.js +1 -1
  377. package/dist/esm/af-nav-menu-nest.entry.js +1 -1
  378. package/dist/esm/af-nav-menu.entry.js +1 -1
  379. package/dist/esm/af-number-badge.entry.js +1 -1
  380. package/dist/esm/af-numbered-stepper-item.entry.js +1 -1
  381. package/dist/esm/af-numbered-stepper.entry.js +1 -1
  382. package/dist/esm/af-paperclip-decoration.entry.js +1 -1
  383. package/dist/esm/af-progress-line.entry.js +1 -1
  384. package/dist/esm/af-radio.entry.js +1 -1
  385. package/dist/esm/af-section.entry.js +1 -1
  386. package/dist/esm/af-show.entry.js +1 -1
  387. package/dist/esm/af-social-link.entry.js +1 -1
  388. package/dist/esm/af-spacer.entry.js +1 -1
  389. package/dist/esm/af-split-section.entry.js +1 -1
  390. package/dist/esm/af-stack.entry.js +1 -1
  391. package/dist/esm/af-stat.entry.js +2 -2
  392. package/dist/esm/af-stat.entry.js.map +1 -1
  393. package/dist/esm/af-stats-row.entry.js +1 -1
  394. package/dist/esm/af-stepper-step.entry.js +1 -1
  395. package/dist/esm/af-stepper.entry.js +1 -1
  396. package/dist/esm/af-switch.entry.js +1 -1
  397. package/dist/esm/af-tab-bar.entry.js +1 -1
  398. package/dist/esm/af-tab.entry.js +1 -1
  399. package/dist/esm/af-tag.entry.js +1 -1
  400. package/dist/esm/af-testimonial-carousel.entry.js +1 -1
  401. package/dist/esm/af-testimonial-stat.entry.js +2 -2
  402. package/dist/esm/af-testimonial-stat.entry.js.map +1 -1
  403. package/dist/esm/af-testimonial.entry.js +1 -1
  404. package/dist/esm/af-text-image-nest.entry.js +1 -1
  405. package/dist/esm/af-text-image.entry.js +1 -1
  406. package/dist/esm/af-textarea.entry.js +1 -1
  407. package/dist/esm/af-theme-override.entry.js +1 -1
  408. package/dist/esm/af-typography-lockup.entry.js +1 -1
  409. package/dist/esm/af-video-container.entry.js +1 -1
  410. package/dist/esm/af-visually-hidden.entry.js +1 -1
  411. package/dist/esm/affinda.js +3 -3
  412. package/dist/esm/{index-MwnBSqEY.js → index-C4WBekD2.js} +3 -3
  413. package/dist/esm/index-C4WBekD2.js.map +1 -0
  414. package/dist/esm/index.js +1 -1
  415. package/dist/esm/loader.js +3 -3
  416. package/dist/types/components/af-card/af-card.d.ts +8 -0
  417. package/dist/types/components.d.ts +10 -0
  418. package/package.json +3 -3
  419. package/dist/affinda/p-068ac2fb.entry.js +0 -2
  420. package/dist/affinda/p-1b4b0c88.entry.js +0 -2
  421. package/dist/affinda/p-2237e652.entry.js +0 -2
  422. package/dist/affinda/p-2526604b.entry.js +0 -2
  423. package/dist/affinda/p-2526604b.entry.js.map +0 -1
  424. package/dist/affinda/p-4eeeb8a1.entry.js +0 -2
  425. package/dist/affinda/p-7d3cdda1.entry.js +0 -2
  426. package/dist/affinda/p-83bb96cc.entry.js +0 -2
  427. package/dist/affinda/p-90ef7baa.entry.js +0 -2
  428. package/dist/affinda/p-9aed7039.entry.js +0 -2
  429. package/dist/affinda/p-MwnBSqEY.js +0 -3
  430. package/dist/affinda/p-MwnBSqEY.js.map +0 -1
  431. package/dist/affinda/p-b39eea31.entry.js +0 -2
  432. package/dist/affinda/p-b39eea31.entry.js.map +0 -1
  433. package/dist/cjs/index-BzZA0USq.js.map +0 -1
  434. package/dist/components/p--gChEc0P.js.map +0 -1
  435. package/dist/components/p-BW-FxZwa.js +0 -71
  436. package/dist/components/p-BW-FxZwa.js.map +0 -1
  437. package/dist/components/p-CJxqw006.js +0 -53
  438. package/dist/components/p-CJxqw006.js.map +0 -1
  439. package/dist/components/p-DOgb6SUj.js.map +0 -1
  440. package/dist/esm/index-MwnBSqEY.js.map +0 -1
  441. /package/dist/affinda/{p-bbfc9df6.entry.js.map → p-05072f90.entry.js.map} +0 -0
  442. /package/dist/affinda/{p-3ed408f6.entry.js.map → p-14bd7903.entry.js.map} +0 -0
  443. /package/dist/affinda/{p-9eba91fd.entry.js.map → p-1902ed20.entry.js.map} +0 -0
  444. /package/dist/affinda/{p-165c413d.entry.js.map → p-19dc4331.entry.js.map} +0 -0
  445. /package/dist/affinda/{p-ae430873.entry.js.map → p-255a8254.entry.js.map} +0 -0
  446. /package/dist/affinda/{p-4a9b192b.entry.js.map → p-2586fbb8.entry.js.map} +0 -0
  447. /package/dist/affinda/{p-631d141c.entry.js.map → p-26a6d9a7.entry.js.map} +0 -0
  448. /package/dist/affinda/{p-7867c2ff.entry.js.map → p-27469df6.entry.js.map} +0 -0
  449. /package/dist/affinda/{p-5c163c5b.entry.js.map → p-2a8441cb.entry.js.map} +0 -0
  450. /package/dist/affinda/{p-dabd389a.entry.js.map → p-3238f8e8.entry.js.map} +0 -0
  451. /package/dist/affinda/{p-b9ec0e75.entry.js.map → p-3c6790f8.entry.js.map} +0 -0
  452. /package/dist/affinda/{p-f19cb091.entry.js.map → p-3dd90f46.entry.js.map} +0 -0
  453. /package/dist/affinda/{p-9c1e9bd8.entry.js.map → p-42c4d7b1.entry.js.map} +0 -0
  454. /package/dist/affinda/{p-6e181b2b.entry.js.map → p-432ee0e3.entry.js.map} +0 -0
  455. /package/dist/affinda/{p-1c96856a.entry.js.map → p-43a0286a.entry.js.map} +0 -0
  456. /package/dist/affinda/{p-e07e27f1.entry.js.map → p-44e976ee.entry.js.map} +0 -0
  457. /package/dist/affinda/{p-7111051c.entry.js.map → p-479a300e.entry.js.map} +0 -0
  458. /package/dist/affinda/{p-4b2c0698.entry.js.map → p-4ccc3147.entry.js.map} +0 -0
  459. /package/dist/affinda/{p-6c33fee6.entry.js.map → p-4f15b8f0.entry.js.map} +0 -0
  460. /package/dist/affinda/{p-d362651c.entry.js.map → p-587fd0fa.entry.js.map} +0 -0
  461. /package/dist/affinda/{p-862a2509.entry.js.map → p-67a27eaf.entry.js.map} +0 -0
  462. /package/dist/affinda/{p-44d960ca.entry.js.map → p-67e8c6f6.entry.js.map} +0 -0
  463. /package/dist/affinda/{p-41bbb218.entry.js.map → p-6986f604.entry.js.map} +0 -0
  464. /package/dist/affinda/{p-85cc55bb.entry.js.map → p-6b7fcb18.entry.js.map} +0 -0
  465. /package/dist/affinda/{p-4a355b69.entry.js.map → p-7013570d.entry.js.map} +0 -0
  466. /package/dist/affinda/{p-15f0bd34.entry.js.map → p-75443f08.entry.js.map} +0 -0
  467. /package/dist/affinda/{p-364ffa25.entry.js.map → p-7640c285.entry.js.map} +0 -0
  468. /package/dist/affinda/{p-827f3050.entry.js.map → p-77ec01ee.entry.js.map} +0 -0
  469. /package/dist/affinda/{p-256970e3.entry.js.map → p-7c9683d8.entry.js.map} +0 -0
  470. /package/dist/affinda/{p-0acadf6f.entry.js.map → p-7ce2b434.entry.js.map} +0 -0
  471. /package/dist/affinda/{p-dcc89b4c.entry.js.map → p-7eca844d.entry.js.map} +0 -0
  472. /package/dist/affinda/{p-5e5e7d75.entry.js.map → p-95b49b45.entry.js.map} +0 -0
  473. /package/dist/affinda/{p-365a75e2.entry.js.map → p-9610cd3c.entry.js.map} +0 -0
  474. /package/dist/affinda/{p-6756aa66.entry.js.map → p-9963bec0.entry.js.map} +0 -0
  475. /package/dist/affinda/{p-342b08e5.entry.js.map → p-9b115359.entry.js.map} +0 -0
  476. /package/dist/affinda/{p-4f59b554.entry.js.map → p-9e19a477.entry.js.map} +0 -0
  477. /package/dist/affinda/{p-a8d75eb1.entry.js.map → p-a7b51bb6.entry.js.map} +0 -0
  478. /package/dist/affinda/{p-9f3e7116.entry.js.map → p-ac45df4b.entry.js.map} +0 -0
  479. /package/dist/affinda/{p-32d62fbb.entry.js.map → p-adabec15.entry.js.map} +0 -0
  480. /package/dist/affinda/{p-bed7d9a1.entry.js.map → p-b65cf4c3.entry.js.map} +0 -0
  481. /package/dist/affinda/{p-95d4696a.entry.js.map → p-b82fc7f1.entry.js.map} +0 -0
  482. /package/dist/affinda/{p-6475796d.entry.js.map → p-b8ea57a9.entry.js.map} +0 -0
  483. /package/dist/affinda/{p-4058a1eb.entry.js.map → p-bac968a1.entry.js.map} +0 -0
  484. /package/dist/affinda/{p-76cb736d.entry.js.map → p-bc77706d.entry.js.map} +0 -0
  485. /package/dist/affinda/{p-d7d82986.entry.js.map → p-c4fd7d48.entry.js.map} +0 -0
  486. /package/dist/affinda/{p-6ea474a3.entry.js.map → p-ce77f08f.entry.js.map} +0 -0
  487. /package/dist/affinda/{p-35607741.entry.js.map → p-d06ae9cd.entry.js.map} +0 -0
  488. /package/dist/affinda/{p-86f6dfdc.entry.js.map → p-d34da6c0.entry.js.map} +0 -0
  489. /package/dist/affinda/{p-24e74c10.entry.js.map → p-d647ae06.entry.js.map} +0 -0
  490. /package/dist/affinda/{p-436673bb.entry.js.map → p-d6b8c3b4.entry.js.map} +0 -0
  491. /package/dist/affinda/{p-65dd559a.entry.js.map → p-d9913985.entry.js.map} +0 -0
  492. /package/dist/affinda/{p-9480f00d.entry.js.map → p-dd0cd57e.entry.js.map} +0 -0
  493. /package/dist/affinda/{p-a25d3257.entry.js.map → p-dd4c8640.entry.js.map} +0 -0
  494. /package/dist/affinda/{p-43f40921.entry.js.map → p-df6c7170.entry.js.map} +0 -0
  495. /package/dist/affinda/{p-eeda78ea.entry.js.map → p-e90a3892.entry.js.map} +0 -0
  496. /package/dist/affinda/{p-a1e80460.entry.js.map → p-ec042bc4.entry.js.map} +0 -0
  497. /package/dist/affinda/{p-a02d6192.entry.js.map → p-f7fc76d2.entry.js.map} +0 -0
  498. /package/dist/affinda/{p-9ce0adc2.entry.js.map → p-f9ecbde8.entry.js.map} +0 -0
  499. /package/dist/affinda/{p-61a6b43d.entry.js.map → p-fff252df.entry.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, h, c as Host } from './p-DOgb6SUj.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-CiY0Twna.js';
2
2
 
3
3
  const afTypographyLockupCss = ":host{display:block}.lockup{display:flex;flex-direction:column}.breakpoint-desktop.heading-1.lockup{gap:var(--space-6, 24px)}.breakpoint-mobile.heading-1.lockup{gap:var(--space-5, 20px)}.breakpoint-desktop.heading-2.lockup,.breakpoint-desktop.heading-3.lockup{gap:var(--space-4, 16px)}.breakpoint-mobile.heading-2.lockup{gap:var(--space-4, 16px)}.breakpoint-mobile.heading-3.lockup,.breakpoint-desktop.heading-4.lockup,.breakpoint-desktop.heading-5.lockup,.breakpoint-desktop.heading-card.lockup{gap:var(--space-3, 12px)}.breakpoint-mobile.heading-4.lockup,.breakpoint-mobile.heading-5.lockup,.breakpoint-mobile.heading-card.lockup{gap:var(--space-2, 8px)}.text-left{align-items:flex-start}.text-center{align-items:center}.text-right{align-items:flex-end}.text-justify{align-items:stretch}.align-left{text-align:left;--af-text-align:left}.align-center{text-align:center;--af-text-align:center}.align-right{text-align:right;--af-text-align:right}.align-justify{text-align:justify;--af-text-align:justify}.copy{display:flex;flex-direction:column;width:100%;max-width:840px}.breakpoint-desktop.heading-1 .copy{gap:var(--space-6, 24px)}.breakpoint-mobile.heading-1 .copy{gap:var(--space-5, 20px)}.breakpoint-desktop.heading-2 .copy,.breakpoint-desktop.heading-3 .copy{gap:var(--space-4, 16px)}.breakpoint-mobile.heading-2 .copy{gap:var(--space-4, 16px)}.breakpoint-mobile.heading-3 .copy,.breakpoint-desktop.heading-4 .copy,.breakpoint-desktop.heading-5 .copy,.breakpoint-desktop.heading-card .copy{gap:var(--space-3, 12px)}.breakpoint-mobile.heading-4 .copy,.breakpoint-mobile.heading-5 .copy,.breakpoint-mobile.heading-card .copy{gap:var(--space-2, 8px)}.heading{display:flex;flex-direction:column;font-family:var(--typography-headingfont, 'NeuSans', sans-serif);font-weight:var(--font-weight-regular, 400);color:var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B));line-height:var(--line-height-heading-tight, 1);letter-spacing:var(--letter-spacing-heading, -0.02em);white-space:normal}.breakpoint-desktop.heading-1 .heading{font-size:var(--font-size-heading-1-desktop, 56px)}.breakpoint-desktop.heading-2 .heading{font-size:var(--font-size-heading-2-desktop, 44px)}.breakpoint-desktop.heading-3 .heading{font-size:var(--font-size-heading-3-desktop, 34px);line-height:var(--line-height-heading-3, 38px)}.breakpoint-desktop.heading-4 .heading{font-size:var(--font-size-heading-4-desktop, 24px);line-height:var(--line-height-heading-4, 30px)}.breakpoint-desktop.heading-5 .heading{font-size:var(--font-size-heading-5-desktop, 20px);line-height:var(--line-height-heading-5, 24px)}.breakpoint-desktop.heading-card .heading{font-size:var(--font-size-heading-card-desktop, 22px);line-height:var(--line-height-heading-card, 28px)}.breakpoint-mobile.heading-1 .heading{font-size:var(--font-size-heading-1-mobile, 38px)}.breakpoint-mobile.heading-2 .heading{font-size:var(--font-size-heading-2-mobile, 32px)}.breakpoint-mobile.heading-3 .heading{font-size:var(--font-size-heading-3-mobile, 25px)}.breakpoint-mobile.heading-4 .heading{font-size:var(--font-size-heading-4-mobile, 20px);line-height:var(--line-height-heading-normal, 1.1)}.breakpoint-mobile.heading-5 .heading{font-size:var(--font-size-heading-5-mobile, 18px);line-height:var(--line-height-heading-normal, 1.1)}.breakpoint-mobile.heading-card .heading{font-size:var(--font-size-heading-card-mobile, 20px);line-height:var(--line-height-heading-card, 28px)}.description{font-family:var(--typography-bodyfont, 'NeuSans', sans-serif);font-size:var(--font-size-body-large, 18px);font-weight:var(--font-weight-regular, 400);line-height:var(--line-height-body-large, 26px);color:var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F));white-space:normal}.heading.heading-color-primary{color:var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B))}.heading.heading-color-secondary{color:var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670))}.description.description-color-default{color:var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F))}.description.description-color-secondary{color:var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670))}.breakpoint-mobile.heading-3 .description,.breakpoint-desktop.heading-4 .description,.breakpoint-mobile.heading-4 .description,.breakpoint-desktop.heading-5 .description,.breakpoint-mobile.heading-5 .description,.breakpoint-desktop.heading-card .description,.breakpoint-mobile.heading-card .description{font-size:var(--font-size-body-medium, 16px);line-height:var(--line-height-body-medium, 24px)}.description:empty{display:none}.buttons{display:flex;flex-direction:row;gap:var(--space-3, 12px)}.buttons:empty{display:none}.layout-horizontal .buttons{align-items:center}.text-left.layout-horizontal{flex-direction:row;align-items:center;gap:var(--space-4, 16px)}.text-left.layout-horizontal .copy{flex:1 0 0;max-width:950px}.text-left.layout-horizontal.heading-3 .copy,.text-left.layout-horizontal.heading-4 .copy{max-width:840px}.text-left.layout-horizontal .buttons{flex-shrink:0}.layout-vertical .buttons{align-items:flex-start}.buttons.align-left{justify-content:flex-start}.buttons.align-center{justify-content:center}.buttons.align-right{justify-content:flex-end}.buttons.align-justify{justify-content:space-between}.breakpoint-mobile .buttons{flex-direction:column;align-items:stretch}.breakpoint-mobile .buttons.align-center{align-items:center}.breakpoint-mobile .buttons.align-right{align-items:flex-end}.breakpoint-mobile .buttons.align-left{align-items:flex-start}.text-center .copy{max-width:840px}::slotted(*){margin:0}";
4
4
 
@@ -152,6 +152,6 @@ function defineCustomElement() {
152
152
  }
153
153
 
154
154
  export { AfTypographyLockup as A, defineCustomElement as d };
155
- //# sourceMappingURL=p-ClZAZSzR.js.map
155
+ //# sourceMappingURL=p-CTDelwMf.js.map
156
156
 
157
- //# sourceMappingURL=p-ClZAZSzR.js.map
157
+ //# sourceMappingURL=p-CTDelwMf.js.map
@@ -1 +1 @@
1
- {"file":"p-ClZAZSzR.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-typography-lockup/af-typography-lockup.css?tag=af-typography-lockup&encapsulation=shadow","src/components/af-typography-lockup/af-typography-lockup.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.lockup {\n display: flex;\n flex-direction: column;\n}\n\n/* Lockup gap variations (between copy and buttons) - matches copy internal gap */\n/* Heading 1 desktop: 24px gap */\n.breakpoint-desktop.heading-1.lockup {\n gap: var(--space-6, 24px);\n}\n\n/* Heading 1 mobile: 20px gap */\n.breakpoint-mobile.heading-1.lockup {\n gap: var(--space-5, 20px);\n}\n\n/* Heading 2, 3 desktop: 16px gap */\n.breakpoint-desktop.heading-2.lockup,\n.breakpoint-desktop.heading-3.lockup {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 2 mobile: 16px gap */\n.breakpoint-mobile.heading-2.lockup {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 3 mobile, 4 desktop, 5 desktop, card desktop: 12px gap */\n.breakpoint-mobile.heading-3.lockup,\n.breakpoint-desktop.heading-4.lockup,\n.breakpoint-desktop.heading-5.lockup,\n.breakpoint-desktop.heading-card.lockup {\n gap: var(--space-3, 12px);\n}\n\n/* Heading 4 mobile, 5 mobile, card mobile: 8px gap */\n.breakpoint-mobile.heading-4.lockup,\n.breakpoint-mobile.heading-5.lockup,\n.breakpoint-mobile.heading-card.lockup {\n gap: var(--space-2, 8px);\n}\n\n/* Container alignment (affects flexbox positioning) */\n.text-left {\n align-items: flex-start;\n}\n\n.text-center {\n align-items: center;\n}\n\n.text-right {\n align-items: flex-end;\n}\n\n.text-justify {\n align-items: stretch;\n}\n\n/* Individual text alignment classes */\n.align-left {\n text-align: left;\n --af-text-align: left;\n}\n\n.align-center {\n text-align: center;\n --af-text-align: center;\n}\n\n.align-right {\n text-align: right;\n --af-text-align: right;\n}\n\n.align-justify {\n text-align: justify;\n --af-text-align: justify;\n}\n\n/* Copy section - base styles */\n.copy {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 840px;\n}\n\n/* Copy gap variations based on heading size and breakpoint */\n/* Heading 1 desktop: 24px gap */\n.breakpoint-desktop.heading-1 .copy {\n gap: var(--space-6, 24px);\n}\n\n/* Heading 1 mobile: 20px gap */\n.breakpoint-mobile.heading-1 .copy {\n gap: var(--space-5, 20px);\n}\n\n/* Heading 2, 3 desktop: 16px gap */\n.breakpoint-desktop.heading-2 .copy,\n.breakpoint-desktop.heading-3 .copy {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 2 mobile: 16px gap */\n.breakpoint-mobile.heading-2 .copy {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 3 mobile, 4 desktop, 5 desktop, card desktop: 12px gap */\n.breakpoint-mobile.heading-3 .copy,\n.breakpoint-desktop.heading-4 .copy,\n.breakpoint-desktop.heading-5 .copy,\n.breakpoint-desktop.heading-card .copy {\n gap: var(--space-3, 12px);\n}\n\n/* Heading 4 mobile, 5 mobile, card mobile: 8px gap */\n.breakpoint-mobile.heading-4 .copy,\n.breakpoint-mobile.heading-5 .copy,\n.breakpoint-mobile.heading-card .copy {\n gap: var(--space-2, 8px);\n}\n\n/* Heading styles - font-weight 400 (regular) matches Webflow's NeuSans usage.\n * display: flex collapses any whitespace-only text nodes that Astro (and\n * other templating engines) leave between the slotted heading and the\n * following named-slot siblings — those stray text nodes get projected into\n * the default slot and, without flex layout, each one occupies a full line\n * of the heading's line-height (user-visible \"extra line break\" after the\n * heading). */\n.heading {\n display: flex;\n flex-direction: column;\n font-family: var(--typography-headingfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n color: var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B));\n line-height: var(--line-height-heading-tight, 1);\n letter-spacing: var(--letter-spacing-heading, -0.02em);\n white-space: normal;\n}\n\n/* Desktop heading sizes */\n.breakpoint-desktop.heading-1 .heading {\n font-size: var(--font-size-heading-1-desktop, 56px);\n}\n\n.breakpoint-desktop.heading-2 .heading {\n font-size: var(--font-size-heading-2-desktop, 44px);\n}\n\n/* Explicit px line-heights (38/30/24) for heading 3/4/5 replace the\n * previous ratio-based values (1.1/1.2) — renders identically within a\n * pixel but exposes a predictable token consumers can reference directly. */\n.breakpoint-desktop.heading-3 .heading {\n font-size: var(--font-size-heading-3-desktop, 34px);\n line-height: var(--line-height-heading-3, 38px);\n}\n\n.breakpoint-desktop.heading-4 .heading {\n font-size: var(--font-size-heading-4-desktop, 24px);\n line-height: var(--line-height-heading-4, 30px);\n}\n\n.breakpoint-desktop.heading-5 .heading {\n font-size: var(--font-size-heading-5-desktop, 20px);\n line-height: var(--line-height-heading-5, 24px);\n}\n\n/* Card-title scale (22/20px): retires the bespoke heading sizes on\n * diff-card h3, NumberedStepper title, and expert-insights related-card h3\n * on the website. Sits between heading-4 (24px) and heading-5 (20px) at\n * desktop, and between heading-4 and heading-5 (both 20px→18px) at mobile. */\n.breakpoint-desktop.heading-card .heading {\n font-size: var(--font-size-heading-card-desktop, 22px);\n line-height: var(--line-height-heading-card, 28px);\n}\n\n/* Mobile heading sizes */\n.breakpoint-mobile.heading-1 .heading {\n font-size: var(--font-size-heading-1-mobile, 38px);\n}\n\n.breakpoint-mobile.heading-2 .heading {\n font-size: var(--font-size-heading-2-mobile, 32px);\n}\n\n.breakpoint-mobile.heading-3 .heading {\n font-size: var(--font-size-heading-3-mobile, 25px);\n}\n\n.breakpoint-mobile.heading-4 .heading {\n font-size: var(--font-size-heading-4-mobile, 20px);\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n.breakpoint-mobile.heading-5 .heading {\n font-size: var(--font-size-heading-5-mobile, 18px);\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n.breakpoint-mobile.heading-card .heading {\n font-size: var(--font-size-heading-card-mobile, 20px);\n line-height: var(--line-height-heading-card, 28px);\n}\n\n/* Description/body text - default (body/large) */\n.description {\n font-family: var(--typography-bodyfont, 'NeuSans', sans-serif);\n font-size: var(--font-size-body-large, 18px);\n font-weight: var(--font-weight-regular, 400);\n line-height: var(--line-height-body-large, 26px);\n color: var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F));\n white-space: normal;\n}\n\n/* Heading colour variants — matches Webflow's h1.primary / h1.secondary pattern */\n.heading.heading-color-primary {\n color: var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B));\n}\n\n.heading.heading-color-secondary {\n color: var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670));\n}\n\n/* Description colour variants */\n.description.description-color-default {\n color: var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F));\n}\n\n.description.description-color-secondary {\n color: var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670));\n}\n\n/* Description text size variations - smaller for heading 3 mobile, 4, 5, and card */\n.breakpoint-mobile.heading-3 .description,\n.breakpoint-desktop.heading-4 .description,\n.breakpoint-mobile.heading-4 .description,\n.breakpoint-desktop.heading-5 .description,\n.breakpoint-mobile.heading-5 .description,\n.breakpoint-desktop.heading-card .description,\n.breakpoint-mobile.heading-card .description {\n font-size: var(--font-size-body-medium, 16px);\n line-height: var(--line-height-body-medium, 24px);\n}\n\n.description:empty {\n display: none;\n}\n\n/* Buttons section */\n.buttons {\n display: flex;\n flex-direction: row;\n gap: var(--space-3, 12px);\n}\n\n.buttons:empty {\n display: none;\n}\n\n/* Button layout - horizontal (inline with copy) */\n.layout-horizontal .buttons {\n align-items: center;\n}\n\n.text-left.layout-horizontal {\n flex-direction: row;\n align-items: center;\n gap: var(--space-4, 16px);\n}\n\n.text-left.layout-horizontal .copy {\n flex: 1 0 0;\n max-width: 950px;\n}\n\n/* Heading 3, 4 horizontal: different max-width */\n.text-left.layout-horizontal.heading-3 .copy,\n.text-left.layout-horizontal.heading-4 .copy {\n max-width: 840px;\n}\n\n.text-left.layout-horizontal .buttons {\n flex-shrink: 0;\n}\n\n/* Button layout - vertical (stacked below copy) */\n.layout-vertical .buttons {\n align-items: flex-start;\n}\n\n/* Button position alignment */\n.buttons.align-left {\n justify-content: flex-start;\n}\n\n.buttons.align-center {\n justify-content: center;\n}\n\n.buttons.align-right {\n justify-content: flex-end;\n}\n\n.buttons.align-justify {\n justify-content: space-between;\n}\n\n/* Mobile button stacking - buttons stack vertically on mobile */\n.breakpoint-mobile .buttons {\n flex-direction: column;\n align-items: stretch;\n}\n\n.breakpoint-mobile .buttons.align-center {\n align-items: center;\n}\n\n.breakpoint-mobile .buttons.align-right {\n align-items: flex-end;\n}\n\n.breakpoint-mobile .buttons.align-left {\n align-items: flex-start;\n}\n\n/* Max width constraints for centered layouts */\n.text-center .copy {\n max-width: 840px;\n}\n\n/* Slot content styling */\n::slotted(*) {\n margin: 0;\n}\n","import { Component, Element, h, Prop, State, Host } from '@stencil/core';\nimport type { HeadingSize } from '../../types';\n\ntype TextAlign = 'left' | 'center' | 'right' | 'justify';\n\n/**\n * Marketing-style composition of heading + description + buttons with\n * consistent spacing and alignment driven by the `headingSize` prop.\n *\n * **Semantic vs visual:** `headingSize` controls ONLY the visual scale\n * (the lockup sets font-size via a `heading-{1..5|card}` class). The semantic\n * level (h1-h6) is whatever the consumer slots in as default content.\n * Keep them aligned by convention so assistive tech and search engines\n * see the right hierarchy:\n *\n * headingSize=1 ↔ <h1> (or <h2> on non-top-of-page sections)\n * headingSize=2 ↔ <h2>\n * headingSize=3 ↔ <h3>\n * headingSize=4 ↔ <h4>\n * headingSize=5 ↔ <h5>\n * headingSize=\"card\" ↔ <h3> (card-title scale: 22/20px)\n *\n * When a design asks for a visually small H1 or a visually large H3,\n * pass the two independently — just do it deliberately, not by\n * accident. A console warning fires in dev mode if the slotted tag is\n * more than one level away from the prop.\n *\n * The `card` variant renders slightly larger than `5` (22/20px vs 20/18px)\n * and targets card titles in dense grids (diff-card h3, NumberedStepper\n * title, expert-insights related-card h3 on the marketing site). It sits\n * between `4` and `5` in the type ladder.\n */\n@Component({\n tag: 'af-typography-lockup',\n styleUrl: 'af-typography-lockup.css',\n shadow: true\n})\nexport class AfTypographyLockup {\n @Element() el!: HTMLElement;\n\n /**\n * The heading size (1-5, or \"card\"; 1 is largest). Controls visual scale\n * only — pair with a matching <h1>-<h5> slotted element for correct\n * document outline (see component docblock). The `card` variant sits\n * between 4 and 5 at 22/20px and is meant for card titles.\n */\n @Prop() headingSize: HeadingSize = 2;\n\n /**\n * The breakpoint for responsive typography\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Text alignment for the entire lockup (heading and description).\n * Can be overridden individually with headingAlignment and descriptionAlignment.\n */\n @Prop() textAlignment: TextAlign = 'left';\n\n /**\n * Heading text alignment. Falls back to textAlignment if not specified.\n */\n @Prop() headingAlignment?: TextAlign;\n\n /**\n * Description text alignment. Falls back to textAlignment if not specified.\n */\n @Prop() descriptionAlignment?: TextAlign;\n\n /**\n * Button layout direction (horizontal or vertical stacking)\n */\n @Prop() buttonLayout: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Buttons position alignment. Falls back to textAlignment if not specified.\n */\n @Prop() buttonsAlignment?: TextAlign;\n\n /**\n * Maximum width for the copy section (in pixels)\n */\n @Prop() maxWidth?: number;\n\n /**\n * Heading colour variant. Matches the Webflow pattern of `h1.primary` vs\n * `h1.secondary`, where \"secondary\" renders in the theme's accent/heading-\n * secondary colour (soft-clay on most themes).\n * - `primary` (default) - uses `--af-typography-heading-primary`\n * - `secondary` - uses `--af-typography-heading-secondary`\n */\n @Prop() headingColor: 'primary' | 'secondary' = 'primary';\n\n /**\n * Description colour variant. Same pattern as `headingColor`; useful for\n * hero-style lockups where the description is rendered in the accent colour.\n * - `default` (default) - uses `--af-typography-body-default`\n * - `secondary` - uses `--af-typography-heading-secondary`\n */\n @Prop() descriptionColor: 'default' | 'secondary' = 'default';\n\n /**\n * Whether the consumer passed anything into the description / buttons\n * slots. The CSS `:empty` selector can't help here — the `<slot>`\n * element itself counts as a child, so the wrapper divs would always\n * render as empty-but-visible lines of gap. Tracked on mount and on\n * any `slotchange` so wrappers collapse cleanly when there's nothing\n * to show.\n */\n @State() hasDescription: boolean = false;\n @State() hasButtons: boolean = false;\n\n private descriptionSlot?: HTMLSlotElement;\n private buttonsSlot?: HTMLSlotElement;\n\n componentDidLoad() {\n this.syncSlotState();\n this.descriptionSlot?.addEventListener('slotchange', this.syncSlotState);\n this.buttonsSlot?.addEventListener('slotchange', this.syncSlotState);\n // Dev-time check that the slotted semantic tag (h1-h6) is within one\n // level of the visual headingSize. Pairs with the class-level docblock;\n // silent in production unless the author explicitly turned on dev mode\n // via `window.__AF_STRICT_HEADINGS__`.\n if (typeof window === 'undefined') return;\n const strict = (window as unknown as { __AF_STRICT_HEADINGS__?: boolean })\n .__AF_STRICT_HEADINGS__;\n if (!strict) return;\n const heading = Array.from(this.el.children).find(\n (child) => !(child as HTMLElement).hasAttribute('slot') && /^h[1-6]$/i.test(child.tagName),\n );\n if (!heading) return;\n const slottedLevel = Number(heading.tagName.slice(1));\n const expected = this.headingSize;\n // The `card` variant is a named scale (card-title), not a semantic level.\n // Skip the numeric-proximity check entirely — convention is <h3>, but\n // consumers may legitimately pair it with <h2>-<h4> depending on context.\n if (expected === 'card') return;\n if (Math.abs(slottedLevel - expected) > 1) {\n // eslint-disable-next-line no-console\n console.warn(\n `[af-typography-lockup] heading-size=${expected} paired with <${heading.tagName.toLowerCase()}>; ` +\n `expected an <h${expected}> for document outline. Pass deliberately or align the two.`,\n );\n }\n }\n\n disconnectedCallback() {\n this.descriptionSlot?.removeEventListener('slotchange', this.syncSlotState);\n this.buttonsSlot?.removeEventListener('slotchange', this.syncSlotState);\n }\n\n private syncSlotState = () => {\n this.hasDescription = (this.descriptionSlot?.assignedNodes({ flatten: true }).length ?? 0) > 0;\n this.hasButtons = (this.buttonsSlot?.assignedNodes({ flatten: true }).length ?? 0) > 0;\n };\n\n render() {\n const effectiveHeadingAlignment = this.headingAlignment ?? this.textAlignment;\n const effectiveDescriptionAlignment = this.descriptionAlignment ?? this.textAlignment;\n const effectiveButtonsAlignment = this.buttonsAlignment ?? this.textAlignment;\n\n const containerClasses = {\n 'lockup': true,\n [`text-${this.textAlignment}`]: true,\n [`layout-${this.buttonLayout}`]: true,\n [`heading-${this.headingSize}`]: true,\n [`breakpoint-${this.breakpoint}`]: true\n };\n\n const headingClasses = {\n 'heading': true,\n [`align-${effectiveHeadingAlignment}`]: true,\n [`heading-color-${this.headingColor}`]: true\n };\n\n const descriptionClasses = {\n 'description': true,\n [`align-${effectiveDescriptionAlignment}`]: true,\n [`description-color-${this.descriptionColor}`]: true\n };\n\n const buttonsClasses = {\n 'buttons': true,\n [`align-${effectiveButtonsAlignment}`]: true\n };\n\n const copyStyle = this.maxWidth ? { maxWidth: `${this.maxWidth}px` } : {};\n\n return (\n <Host>\n <div class={containerClasses}>\n <div class=\"copy\" style={copyStyle}>\n <div class={headingClasses} part=\"heading\">\n <slot></slot>\n </div>\n <div class={descriptionClasses} part=\"body\" hidden={!this.hasDescription}>\n <slot name=\"description\" ref={(el) => (this.descriptionSlot = el as HTMLSlotElement)}></slot>\n </div>\n </div>\n <div class={buttonsClasses} part=\"buttons\" hidden={!this.hasButtons}>\n <slot name=\"buttons\" ref={(el) => (this.buttonsSlot = el as HTMLSlotElement)}></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CTDelwMf.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-typography-lockup/af-typography-lockup.css?tag=af-typography-lockup&encapsulation=shadow","src/components/af-typography-lockup/af-typography-lockup.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.lockup {\n display: flex;\n flex-direction: column;\n}\n\n/* Lockup gap variations (between copy and buttons) - matches copy internal gap */\n/* Heading 1 desktop: 24px gap */\n.breakpoint-desktop.heading-1.lockup {\n gap: var(--space-6, 24px);\n}\n\n/* Heading 1 mobile: 20px gap */\n.breakpoint-mobile.heading-1.lockup {\n gap: var(--space-5, 20px);\n}\n\n/* Heading 2, 3 desktop: 16px gap */\n.breakpoint-desktop.heading-2.lockup,\n.breakpoint-desktop.heading-3.lockup {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 2 mobile: 16px gap */\n.breakpoint-mobile.heading-2.lockup {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 3 mobile, 4 desktop, 5 desktop, card desktop: 12px gap */\n.breakpoint-mobile.heading-3.lockup,\n.breakpoint-desktop.heading-4.lockup,\n.breakpoint-desktop.heading-5.lockup,\n.breakpoint-desktop.heading-card.lockup {\n gap: var(--space-3, 12px);\n}\n\n/* Heading 4 mobile, 5 mobile, card mobile: 8px gap */\n.breakpoint-mobile.heading-4.lockup,\n.breakpoint-mobile.heading-5.lockup,\n.breakpoint-mobile.heading-card.lockup {\n gap: var(--space-2, 8px);\n}\n\n/* Container alignment (affects flexbox positioning) */\n.text-left {\n align-items: flex-start;\n}\n\n.text-center {\n align-items: center;\n}\n\n.text-right {\n align-items: flex-end;\n}\n\n.text-justify {\n align-items: stretch;\n}\n\n/* Individual text alignment classes */\n.align-left {\n text-align: left;\n --af-text-align: left;\n}\n\n.align-center {\n text-align: center;\n --af-text-align: center;\n}\n\n.align-right {\n text-align: right;\n --af-text-align: right;\n}\n\n.align-justify {\n text-align: justify;\n --af-text-align: justify;\n}\n\n/* Copy section - base styles */\n.copy {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 840px;\n}\n\n/* Copy gap variations based on heading size and breakpoint */\n/* Heading 1 desktop: 24px gap */\n.breakpoint-desktop.heading-1 .copy {\n gap: var(--space-6, 24px);\n}\n\n/* Heading 1 mobile: 20px gap */\n.breakpoint-mobile.heading-1 .copy {\n gap: var(--space-5, 20px);\n}\n\n/* Heading 2, 3 desktop: 16px gap */\n.breakpoint-desktop.heading-2 .copy,\n.breakpoint-desktop.heading-3 .copy {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 2 mobile: 16px gap */\n.breakpoint-mobile.heading-2 .copy {\n gap: var(--space-4, 16px);\n}\n\n/* Heading 3 mobile, 4 desktop, 5 desktop, card desktop: 12px gap */\n.breakpoint-mobile.heading-3 .copy,\n.breakpoint-desktop.heading-4 .copy,\n.breakpoint-desktop.heading-5 .copy,\n.breakpoint-desktop.heading-card .copy {\n gap: var(--space-3, 12px);\n}\n\n/* Heading 4 mobile, 5 mobile, card mobile: 8px gap */\n.breakpoint-mobile.heading-4 .copy,\n.breakpoint-mobile.heading-5 .copy,\n.breakpoint-mobile.heading-card .copy {\n gap: var(--space-2, 8px);\n}\n\n/* Heading styles - font-weight 400 (regular) matches Webflow's NeuSans usage.\n * display: flex collapses any whitespace-only text nodes that Astro (and\n * other templating engines) leave between the slotted heading and the\n * following named-slot siblings — those stray text nodes get projected into\n * the default slot and, without flex layout, each one occupies a full line\n * of the heading's line-height (user-visible \"extra line break\" after the\n * heading). */\n.heading {\n display: flex;\n flex-direction: column;\n font-family: var(--typography-headingfont, 'NeuSans', sans-serif);\n font-weight: var(--font-weight-regular, 400);\n color: var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B));\n line-height: var(--line-height-heading-tight, 1);\n letter-spacing: var(--letter-spacing-heading, -0.02em);\n white-space: normal;\n}\n\n/* Desktop heading sizes */\n.breakpoint-desktop.heading-1 .heading {\n font-size: var(--font-size-heading-1-desktop, 56px);\n}\n\n.breakpoint-desktop.heading-2 .heading {\n font-size: var(--font-size-heading-2-desktop, 44px);\n}\n\n/* Explicit px line-heights (38/30/24) for heading 3/4/5 replace the\n * previous ratio-based values (1.1/1.2) — renders identically within a\n * pixel but exposes a predictable token consumers can reference directly. */\n.breakpoint-desktop.heading-3 .heading {\n font-size: var(--font-size-heading-3-desktop, 34px);\n line-height: var(--line-height-heading-3, 38px);\n}\n\n.breakpoint-desktop.heading-4 .heading {\n font-size: var(--font-size-heading-4-desktop, 24px);\n line-height: var(--line-height-heading-4, 30px);\n}\n\n.breakpoint-desktop.heading-5 .heading {\n font-size: var(--font-size-heading-5-desktop, 20px);\n line-height: var(--line-height-heading-5, 24px);\n}\n\n/* Card-title scale (22/20px): retires the bespoke heading sizes on\n * diff-card h3, NumberedStepper title, and expert-insights related-card h3\n * on the website. Sits between heading-4 (24px) and heading-5 (20px) at\n * desktop, and between heading-4 and heading-5 (both 20px→18px) at mobile. */\n.breakpoint-desktop.heading-card .heading {\n font-size: var(--font-size-heading-card-desktop, 22px);\n line-height: var(--line-height-heading-card, 28px);\n}\n\n/* Mobile heading sizes */\n.breakpoint-mobile.heading-1 .heading {\n font-size: var(--font-size-heading-1-mobile, 38px);\n}\n\n.breakpoint-mobile.heading-2 .heading {\n font-size: var(--font-size-heading-2-mobile, 32px);\n}\n\n.breakpoint-mobile.heading-3 .heading {\n font-size: var(--font-size-heading-3-mobile, 25px);\n}\n\n.breakpoint-mobile.heading-4 .heading {\n font-size: var(--font-size-heading-4-mobile, 20px);\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n.breakpoint-mobile.heading-5 .heading {\n font-size: var(--font-size-heading-5-mobile, 18px);\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n.breakpoint-mobile.heading-card .heading {\n font-size: var(--font-size-heading-card-mobile, 20px);\n line-height: var(--line-height-heading-card, 28px);\n}\n\n/* Description/body text - default (body/large) */\n.description {\n font-family: var(--typography-bodyfont, 'NeuSans', sans-serif);\n font-size: var(--font-size-body-large, 18px);\n font-weight: var(--font-weight-regular, 400);\n line-height: var(--line-height-body-large, 26px);\n color: var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F));\n white-space: normal;\n}\n\n/* Heading colour variants — matches Webflow's h1.primary / h1.secondary pattern */\n.heading.heading-color-primary {\n color: var(--af-typography-heading-primary, var(--colour-typography-heading-primary, #14343B));\n}\n\n.heading.heading-color-secondary {\n color: var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670));\n}\n\n/* Description colour variants */\n.description.description-color-default {\n color: var(--af-typography-body-default, var(--colour-typography-body-default, #2B484F));\n}\n\n.description.description-color-secondary {\n color: var(--af-typography-heading-secondary, var(--colour-brand-soft-clay, #B09670));\n}\n\n/* Description text size variations - smaller for heading 3 mobile, 4, 5, and card */\n.breakpoint-mobile.heading-3 .description,\n.breakpoint-desktop.heading-4 .description,\n.breakpoint-mobile.heading-4 .description,\n.breakpoint-desktop.heading-5 .description,\n.breakpoint-mobile.heading-5 .description,\n.breakpoint-desktop.heading-card .description,\n.breakpoint-mobile.heading-card .description {\n font-size: var(--font-size-body-medium, 16px);\n line-height: var(--line-height-body-medium, 24px);\n}\n\n.description:empty {\n display: none;\n}\n\n/* Buttons section */\n.buttons {\n display: flex;\n flex-direction: row;\n gap: var(--space-3, 12px);\n}\n\n.buttons:empty {\n display: none;\n}\n\n/* Button layout - horizontal (inline with copy) */\n.layout-horizontal .buttons {\n align-items: center;\n}\n\n.text-left.layout-horizontal {\n flex-direction: row;\n align-items: center;\n gap: var(--space-4, 16px);\n}\n\n.text-left.layout-horizontal .copy {\n flex: 1 0 0;\n max-width: 950px;\n}\n\n/* Heading 3, 4 horizontal: different max-width */\n.text-left.layout-horizontal.heading-3 .copy,\n.text-left.layout-horizontal.heading-4 .copy {\n max-width: 840px;\n}\n\n.text-left.layout-horizontal .buttons {\n flex-shrink: 0;\n}\n\n/* Button layout - vertical (stacked below copy) */\n.layout-vertical .buttons {\n align-items: flex-start;\n}\n\n/* Button position alignment */\n.buttons.align-left {\n justify-content: flex-start;\n}\n\n.buttons.align-center {\n justify-content: center;\n}\n\n.buttons.align-right {\n justify-content: flex-end;\n}\n\n.buttons.align-justify {\n justify-content: space-between;\n}\n\n/* Mobile button stacking - buttons stack vertically on mobile */\n.breakpoint-mobile .buttons {\n flex-direction: column;\n align-items: stretch;\n}\n\n.breakpoint-mobile .buttons.align-center {\n align-items: center;\n}\n\n.breakpoint-mobile .buttons.align-right {\n align-items: flex-end;\n}\n\n.breakpoint-mobile .buttons.align-left {\n align-items: flex-start;\n}\n\n/* Max width constraints for centered layouts */\n.text-center .copy {\n max-width: 840px;\n}\n\n/* Slot content styling */\n::slotted(*) {\n margin: 0;\n}\n","import { Component, Element, h, Prop, State, Host } from '@stencil/core';\nimport type { HeadingSize } from '../../types';\n\ntype TextAlign = 'left' | 'center' | 'right' | 'justify';\n\n/**\n * Marketing-style composition of heading + description + buttons with\n * consistent spacing and alignment driven by the `headingSize` prop.\n *\n * **Semantic vs visual:** `headingSize` controls ONLY the visual scale\n * (the lockup sets font-size via a `heading-{1..5|card}` class). The semantic\n * level (h1-h6) is whatever the consumer slots in as default content.\n * Keep them aligned by convention so assistive tech and search engines\n * see the right hierarchy:\n *\n * headingSize=1 ↔ <h1> (or <h2> on non-top-of-page sections)\n * headingSize=2 ↔ <h2>\n * headingSize=3 ↔ <h3>\n * headingSize=4 ↔ <h4>\n * headingSize=5 ↔ <h5>\n * headingSize=\"card\" ↔ <h3> (card-title scale: 22/20px)\n *\n * When a design asks for a visually small H1 or a visually large H3,\n * pass the two independently — just do it deliberately, not by\n * accident. A console warning fires in dev mode if the slotted tag is\n * more than one level away from the prop.\n *\n * The `card` variant renders slightly larger than `5` (22/20px vs 20/18px)\n * and targets card titles in dense grids (diff-card h3, NumberedStepper\n * title, expert-insights related-card h3 on the marketing site). It sits\n * between `4` and `5` in the type ladder.\n */\n@Component({\n tag: 'af-typography-lockup',\n styleUrl: 'af-typography-lockup.css',\n shadow: true\n})\nexport class AfTypographyLockup {\n @Element() el!: HTMLElement;\n\n /**\n * The heading size (1-5, or \"card\"; 1 is largest). Controls visual scale\n * only — pair with a matching <h1>-<h5> slotted element for correct\n * document outline (see component docblock). The `card` variant sits\n * between 4 and 5 at 22/20px and is meant for card titles.\n */\n @Prop() headingSize: HeadingSize = 2;\n\n /**\n * The breakpoint for responsive typography\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Text alignment for the entire lockup (heading and description).\n * Can be overridden individually with headingAlignment and descriptionAlignment.\n */\n @Prop() textAlignment: TextAlign = 'left';\n\n /**\n * Heading text alignment. Falls back to textAlignment if not specified.\n */\n @Prop() headingAlignment?: TextAlign;\n\n /**\n * Description text alignment. Falls back to textAlignment if not specified.\n */\n @Prop() descriptionAlignment?: TextAlign;\n\n /**\n * Button layout direction (horizontal or vertical stacking)\n */\n @Prop() buttonLayout: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Buttons position alignment. Falls back to textAlignment if not specified.\n */\n @Prop() buttonsAlignment?: TextAlign;\n\n /**\n * Maximum width for the copy section (in pixels)\n */\n @Prop() maxWidth?: number;\n\n /**\n * Heading colour variant. Matches the Webflow pattern of `h1.primary` vs\n * `h1.secondary`, where \"secondary\" renders in the theme's accent/heading-\n * secondary colour (soft-clay on most themes).\n * - `primary` (default) - uses `--af-typography-heading-primary`\n * - `secondary` - uses `--af-typography-heading-secondary`\n */\n @Prop() headingColor: 'primary' | 'secondary' = 'primary';\n\n /**\n * Description colour variant. Same pattern as `headingColor`; useful for\n * hero-style lockups where the description is rendered in the accent colour.\n * - `default` (default) - uses `--af-typography-body-default`\n * - `secondary` - uses `--af-typography-heading-secondary`\n */\n @Prop() descriptionColor: 'default' | 'secondary' = 'default';\n\n /**\n * Whether the consumer passed anything into the description / buttons\n * slots. The CSS `:empty` selector can't help here — the `<slot>`\n * element itself counts as a child, so the wrapper divs would always\n * render as empty-but-visible lines of gap. Tracked on mount and on\n * any `slotchange` so wrappers collapse cleanly when there's nothing\n * to show.\n */\n @State() hasDescription: boolean = false;\n @State() hasButtons: boolean = false;\n\n private descriptionSlot?: HTMLSlotElement;\n private buttonsSlot?: HTMLSlotElement;\n\n componentDidLoad() {\n this.syncSlotState();\n this.descriptionSlot?.addEventListener('slotchange', this.syncSlotState);\n this.buttonsSlot?.addEventListener('slotchange', this.syncSlotState);\n // Dev-time check that the slotted semantic tag (h1-h6) is within one\n // level of the visual headingSize. Pairs with the class-level docblock;\n // silent in production unless the author explicitly turned on dev mode\n // via `window.__AF_STRICT_HEADINGS__`.\n if (typeof window === 'undefined') return;\n const strict = (window as unknown as { __AF_STRICT_HEADINGS__?: boolean })\n .__AF_STRICT_HEADINGS__;\n if (!strict) return;\n const heading = Array.from(this.el.children).find(\n (child) => !(child as HTMLElement).hasAttribute('slot') && /^h[1-6]$/i.test(child.tagName),\n );\n if (!heading) return;\n const slottedLevel = Number(heading.tagName.slice(1));\n const expected = this.headingSize;\n // The `card` variant is a named scale (card-title), not a semantic level.\n // Skip the numeric-proximity check entirely — convention is <h3>, but\n // consumers may legitimately pair it with <h2>-<h4> depending on context.\n if (expected === 'card') return;\n if (Math.abs(slottedLevel - expected) > 1) {\n // eslint-disable-next-line no-console\n console.warn(\n `[af-typography-lockup] heading-size=${expected} paired with <${heading.tagName.toLowerCase()}>; ` +\n `expected an <h${expected}> for document outline. Pass deliberately or align the two.`,\n );\n }\n }\n\n disconnectedCallback() {\n this.descriptionSlot?.removeEventListener('slotchange', this.syncSlotState);\n this.buttonsSlot?.removeEventListener('slotchange', this.syncSlotState);\n }\n\n private syncSlotState = () => {\n this.hasDescription = (this.descriptionSlot?.assignedNodes({ flatten: true }).length ?? 0) > 0;\n this.hasButtons = (this.buttonsSlot?.assignedNodes({ flatten: true }).length ?? 0) > 0;\n };\n\n render() {\n const effectiveHeadingAlignment = this.headingAlignment ?? this.textAlignment;\n const effectiveDescriptionAlignment = this.descriptionAlignment ?? this.textAlignment;\n const effectiveButtonsAlignment = this.buttonsAlignment ?? this.textAlignment;\n\n const containerClasses = {\n 'lockup': true,\n [`text-${this.textAlignment}`]: true,\n [`layout-${this.buttonLayout}`]: true,\n [`heading-${this.headingSize}`]: true,\n [`breakpoint-${this.breakpoint}`]: true\n };\n\n const headingClasses = {\n 'heading': true,\n [`align-${effectiveHeadingAlignment}`]: true,\n [`heading-color-${this.headingColor}`]: true\n };\n\n const descriptionClasses = {\n 'description': true,\n [`align-${effectiveDescriptionAlignment}`]: true,\n [`description-color-${this.descriptionColor}`]: true\n };\n\n const buttonsClasses = {\n 'buttons': true,\n [`align-${effectiveButtonsAlignment}`]: true\n };\n\n const copyStyle = this.maxWidth ? { maxWidth: `${this.maxWidth}px` } : {};\n\n return (\n <Host>\n <div class={containerClasses}>\n <div class=\"copy\" style={copyStyle}>\n <div class={headingClasses} part=\"heading\">\n <slot></slot>\n </div>\n <div class={descriptionClasses} part=\"body\" hidden={!this.hasDescription}>\n <slot name=\"description\" ref={(el) => (this.descriptionSlot = el as HTMLSlotElement)}></slot>\n </div>\n </div>\n <div class={buttonsClasses} part=\"buttons\" hidden={!this.hasButtons}>\n <slot name=\"buttons\" ref={(el) => (this.buttonsSlot = el as HTMLSlotElement)}></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, h } from './p-DOgb6SUj.js';
1
+ import { p as proxyCustomElement, H, h } from './p-CiY0Twna.js';
2
2
 
3
3
  const afHeadingCss = ":host{display:block}.heading{margin:0;padding:0;font-family:var(--typography-headingfont, 'NeuSans', Arial, sans-serif);font-weight:var(--font-weight-regular, 400);color:var(--af-typography-heading-primary, var(--colour-brand-inkwell, #14343b));letter-spacing:var(--letter-spacing-heading, -0.02em)}.align-inherit{text-align:var(--af-text-align, left)}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.level-xl{font-size:var(--font-size-heading-xl-fluid, clamp(50px, 3.31vw + 37.57px, 80px));line-height:var(--line-height-heading-tight, 1)}.level-1{font-size:var(--font-size-heading-1-fluid, clamp(38px, 1.99vw + 30.54px, 56px));line-height:var(--line-height-heading-tight, 1)}.level-2{font-size:var(--font-size-heading-2-fluid, clamp(32px, 1.33vw + 27.03px, 44px));line-height:var(--line-height-heading-tight, 1)}.level-3{font-size:var(--font-size-heading-3-fluid, clamp(25px, 0.99vw + 21.27px, 34px));line-height:var(--line-height-heading-tight, 1)}.level-4{font-size:var(--font-size-heading-4-fluid, clamp(20px, 0.44vw + 18.34px, 24px));line-height:var(--line-height-heading-normal, 1.1)}@media (min-width: 768px){.level-4{line-height:var(--line-height-heading-relaxed, 1.2)}}.level-5{font-size:var(--font-size-heading-5-fluid, clamp(18px, 0.22vw + 17.17px, 20px));line-height:var(--line-height-heading-normal, 1.1)}@media (min-width: 768px){.level-5{line-height:var(--line-height-heading-relaxed, 1.2)}}";
4
4
 
@@ -54,6 +54,6 @@ function defineCustomElement() {
54
54
  }
55
55
 
56
56
  export { AfHeading as A, defineCustomElement as d };
57
- //# sourceMappingURL=p-CX0pktY8.js.map
57
+ //# sourceMappingURL=p-CaHyFRpU.js.map
58
58
 
59
- //# sourceMappingURL=p-CX0pktY8.js.map
59
+ //# sourceMappingURL=p-CaHyFRpU.js.map
@@ -1 +1 @@
1
- {"file":"p-CX0pktY8.js","mappings":";;AAAA,MAAM,YAAY,GAAG,06CAA06C;;MCYl7C,SAAS,iBAAAA,kBAAA,CAAA,MAAA,SAAA,SAAAC,CAAA,CAAA;AALtB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAOU,QAAA,IAAK,CAAA,KAAA,GAAuC,GAAG;;AAG/C,QAAA,IAAK,CAAA,KAAA,GAA4C,SAAS;AA+BnE;IA7BS,aAAa,GAAA;;AAEnB,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE;SACN;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI;;IAGnC,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAS;QAEvC,QACE,CAAA,CAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EACF,KAAK,EAAE;AACL,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,CAAC,SAAS,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG,IAAI;AAC7B,gBAAA,CAAC,SAAS,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG;AAC1B,aAAA,EACD,IAAI,EAAC,MAAM,EAAA,EAEX,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACJ;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-heading/af-heading.css?tag=af-heading&encapsulation=shadow","src/components/af-heading/af-heading.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.heading {\n margin: 0;\n padding: 0;\n font-family: var(--typography-headingfont, 'NeuSans', Arial, sans-serif);\n font-weight: var(--font-weight-regular, 400);\n /* Inherit color from theme context via CSS custom property */\n color: var(--af-typography-heading-primary, var(--colour-brand-inkwell, #14343b));\n letter-spacing: var(--letter-spacing-heading, -0.02em);\n}\n\n/* Alignment - inherits from --af-text-align if set, otherwise uses explicit align prop */\n.align-inherit {\n text-align: var(--af-text-align, left);\n}\n\n.align-left {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n\n/*\n * Fluid typography: font-size scales continuously with viewport width between\n * the mobile size (anchored at 375px viewport) and the desktop size\n * (anchored at 1280px viewport) using clamp().\n *\n * Formula: clamp(mobilePx, Avw + Bpx, desktopPx)\n * A = (desktop - mobile) / (1280 - 375) * 100 (vw slope)\n * B = mobile - A/100 * 375 (px intercept)\n *\n * Each level exposes a --font-size-heading-{level}-fluid custom property so\n * consumers can still override the resulting size without defeating clamp().\n */\n\n/* Heading XL */\n.level-xl {\n font-size: var(--font-size-heading-xl-fluid, clamp(50px, 3.31vw + 37.57px, 80px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 1 */\n.level-1 {\n font-size: var(--font-size-heading-1-fluid, clamp(38px, 1.99vw + 30.54px, 56px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 2 */\n.level-2 {\n font-size: var(--font-size-heading-2-fluid, clamp(32px, 1.33vw + 27.03px, 44px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 3 */\n.level-3 {\n font-size: var(--font-size-heading-3-fluid, clamp(25px, 0.99vw + 21.27px, 34px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 4 */\n.level-4 {\n font-size: var(--font-size-heading-4-fluid, clamp(20px, 0.44vw + 18.34px, 24px));\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n@media (min-width: 768px) {\n .level-4 {\n line-height: var(--line-height-heading-relaxed, 1.2);\n }\n}\n\n/* Heading 5 */\n.level-5 {\n font-size: var(--font-size-heading-5-fluid, clamp(18px, 0.22vw + 17.17px, 20px));\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n@media (min-width: 768px) {\n .level-5 {\n line-height: var(--line-height-heading-relaxed, 1.2);\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * Heading component that inherits color from theme context.\n * Color is determined by the parent theme (af-section, af-card, etc.)\n * via CSS custom properties.\n */\n@Component({\n tag: 'af-heading',\n styleUrl: 'af-heading.css',\n shadow: true\n})\nexport class AfHeading {\n /** Heading level */\n @Prop() level: 'xl' | '1' | '2' | '3' | '4' | '5' = '1';\n\n /** Visual alignment. Defaults to 'inherit' which reads from parent context (e.g. AfTypographyLockup) */\n @Prop() align: 'inherit' | 'left' | 'center' | 'right' = 'inherit';\n\n private getHeadingTag() {\n // Map display levels to semantic HTML tags\n const tagMap: Record<string, string> = {\n 'xl': 'h1',\n '1': 'h1',\n '2': 'h2',\n '3': 'h3',\n '4': 'h4',\n '5': 'h5'\n };\n return tagMap[this.level] || 'h1';\n }\n\n render() {\n const Tag = this.getHeadingTag() as any;\n\n return (\n <Tag\n class={{\n 'heading': true,\n [`level-${this.level}`]: true,\n [`align-${this.align}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CaHyFRpU.js","mappings":";;AAAA,MAAM,YAAY,GAAG,06CAA06C;;MCYl7C,SAAS,iBAAAA,kBAAA,CAAA,MAAA,SAAA,SAAAC,CAAA,CAAA;AALtB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAOU,QAAA,IAAK,CAAA,KAAA,GAAuC,GAAG;;AAG/C,QAAA,IAAK,CAAA,KAAA,GAA4C,SAAS;AA+BnE;IA7BS,aAAa,GAAA;;AAEnB,QAAA,MAAM,MAAM,GAA2B;AACrC,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE;SACN;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI;;IAGnC,MAAM,GAAA;AACJ,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAS;QAEvC,QACE,CAAA,CAAC,GAAG,EAAA,EAAA,GAAA,EAAA,0CAAA,EACF,KAAK,EAAE;AACL,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,CAAC,SAAS,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG,IAAI;AAC7B,gBAAA,CAAC,SAAS,IAAI,CAAC,KAAK,CAAE,CAAA,GAAG;AAC1B,aAAA,EACD,IAAI,EAAC,MAAM,EAAA,EAEX,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACJ;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-heading/af-heading.css?tag=af-heading&encapsulation=shadow","src/components/af-heading/af-heading.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.heading {\n margin: 0;\n padding: 0;\n font-family: var(--typography-headingfont, 'NeuSans', Arial, sans-serif);\n font-weight: var(--font-weight-regular, 400);\n /* Inherit color from theme context via CSS custom property */\n color: var(--af-typography-heading-primary, var(--colour-brand-inkwell, #14343b));\n letter-spacing: var(--letter-spacing-heading, -0.02em);\n}\n\n/* Alignment - inherits from --af-text-align if set, otherwise uses explicit align prop */\n.align-inherit {\n text-align: var(--af-text-align, left);\n}\n\n.align-left {\n text-align: left;\n}\n\n.align-center {\n text-align: center;\n}\n\n.align-right {\n text-align: right;\n}\n\n/*\n * Fluid typography: font-size scales continuously with viewport width between\n * the mobile size (anchored at 375px viewport) and the desktop size\n * (anchored at 1280px viewport) using clamp().\n *\n * Formula: clamp(mobilePx, Avw + Bpx, desktopPx)\n * A = (desktop - mobile) / (1280 - 375) * 100 (vw slope)\n * B = mobile - A/100 * 375 (px intercept)\n *\n * Each level exposes a --font-size-heading-{level}-fluid custom property so\n * consumers can still override the resulting size without defeating clamp().\n */\n\n/* Heading XL */\n.level-xl {\n font-size: var(--font-size-heading-xl-fluid, clamp(50px, 3.31vw + 37.57px, 80px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 1 */\n.level-1 {\n font-size: var(--font-size-heading-1-fluid, clamp(38px, 1.99vw + 30.54px, 56px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 2 */\n.level-2 {\n font-size: var(--font-size-heading-2-fluid, clamp(32px, 1.33vw + 27.03px, 44px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 3 */\n.level-3 {\n font-size: var(--font-size-heading-3-fluid, clamp(25px, 0.99vw + 21.27px, 34px));\n line-height: var(--line-height-heading-tight, 1);\n}\n\n/* Heading 4 */\n.level-4 {\n font-size: var(--font-size-heading-4-fluid, clamp(20px, 0.44vw + 18.34px, 24px));\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n@media (min-width: 768px) {\n .level-4 {\n line-height: var(--line-height-heading-relaxed, 1.2);\n }\n}\n\n/* Heading 5 */\n.level-5 {\n font-size: var(--font-size-heading-5-fluid, clamp(18px, 0.22vw + 17.17px, 20px));\n line-height: var(--line-height-heading-normal, 1.1);\n}\n\n@media (min-width: 768px) {\n .level-5 {\n line-height: var(--line-height-heading-relaxed, 1.2);\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * Heading component that inherits color from theme context.\n * Color is determined by the parent theme (af-section, af-card, etc.)\n * via CSS custom properties.\n */\n@Component({\n tag: 'af-heading',\n styleUrl: 'af-heading.css',\n shadow: true\n})\nexport class AfHeading {\n /** Heading level */\n @Prop() level: 'xl' | '1' | '2' | '3' | '4' | '5' = '1';\n\n /** Visual alignment. Defaults to 'inherit' which reads from parent context (e.g. AfTypographyLockup) */\n @Prop() align: 'inherit' | 'left' | 'center' | 'right' = 'inherit';\n\n private getHeadingTag() {\n // Map display levels to semantic HTML tags\n const tagMap: Record<string, string> = {\n 'xl': 'h1',\n '1': 'h1',\n '2': 'h2',\n '3': 'h3',\n '4': 'h4',\n '5': 'h5'\n };\n return tagMap[this.level] || 'h1';\n }\n\n render() {\n const Tag = this.getHeadingTag() as any;\n\n return (\n <Tag\n class={{\n 'heading': true,\n [`level-${this.level}`]: true,\n [`align-${this.align}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
- import { p as proxyCustomElement, H, h, c as Host } from './p-DOgb6SUj.js';
2
- import { d as defineCustomElement$2 } from './p-CJxqw006.js';
3
- import { d as defineCustomElement$1 } from './p-ClZAZSzR.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-CiY0Twna.js';
2
+ import { d as defineCustomElement$2 } from './p-G-vNzZpq.js';
3
+ import { d as defineCustomElement$1 } from './p-CTDelwMf.js';
4
4
 
5
5
  const afIllustratedCardCss = ".sc-af-illustrated-card-h{display:flex;flex-direction:column;width:100%;--af-card-padding:0;--af-card-gap:0}.illustrated-card.sc-af-illustrated-card{min-height:400px}.illustrated-card__content.sc-af-illustrated-card{position:relative;display:flex;flex-direction:column;box-sizing:border-box;z-index:1}.illustrated-card--breakpoint-desktop.illustrated-card--size-default.sc-af-illustrated-card .illustrated-card__content.sc-af-illustrated-card{padding:40px 32px 12px 32px}.illustrated-card--breakpoint-desktop.illustrated-card--size-large.sc-af-illustrated-card .illustrated-card__content.sc-af-illustrated-card{padding:40px 40px 0 40px}.illustrated-card--breakpoint-mobile.sc-af-illustrated-card .illustrated-card__content.sc-af-illustrated-card{padding:32px 24px 12px 24px}.illustrated-card__illustration-area.sc-af-illustrated-card{position:relative;width:100%;flex:1;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.illustrated-card--breakpoint-desktop.sc-af-illustrated-card .illustrated-card__illustration-area.sc-af-illustrated-card{min-height:160px}.illustrated-card--breakpoint-mobile.sc-af-illustrated-card .illustrated-card__illustration-area.sc-af-illustrated-card{min-height:192px}.illustrated-card__illustration-placeholder.sc-af-illustrated-card{width:100%;height:100%;min-height:120px;display:flex;align-items:center;justify-content:center}.illustrated-card__illustration-area.sc-af-illustrated-card-s>img,.illustrated-card__illustration-area .sc-af-illustrated-card-s>img,.illustrated-card__illustration-area.sc-af-illustrated-card img.sc-af-illustrated-card{max-width:100%;max-height:200px;height:auto;object-fit:contain;border-radius:var(--radius-lg, 20px)}.illustrated-card.sc-af-illustrated-card af-typography-lockup.sc-af-illustrated-card{--colour-typography-heading-primary:var(--af-typography-heading-primary);--colour-typography-body-default:var(--af-typography-body-default)}";
6
6
 
@@ -63,6 +63,6 @@ function defineCustomElement() {
63
63
  }
64
64
 
65
65
  export { AfIllustratedCard as A, defineCustomElement as d };
66
- //# sourceMappingURL=p-3Gzh4deR.js.map
66
+ //# sourceMappingURL=p-CdR70Kv1.js.map
67
67
 
68
- //# sourceMappingURL=p-3Gzh4deR.js.map
68
+ //# sourceMappingURL=p-CdR70Kv1.js.map
@@ -1 +1 @@
1
- {"file":"p-3Gzh4deR.js","mappings":";;;;AAAA,MAAM,oBAAoB,GAAG,w6DAAw6D;;MCsBx7D,iBAAiB,iBAAAA,kBAAA,CAAA,MAAA,iBAAA,SAAAC,CAAA,CAAA;AAN9B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;AAOE;;;AAGG;AACK,QAAA,IAAK,CAAA,KAAA,GAAW,YAAY;AAEpC;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAyB,SAAS;AAEpD;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAwB,SAAS;AAwClD;IAtCC,MAAM,GAAA;AACJ,QAAA,MAAM,cAAc,GAAG;AACrB,YAAA,kBAAkB,EAAE,IAAI;AACxB,YAAA,CAAC,gCAAgC,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG,IAAI;AACzD,YAAA,CAAC,0BAA0B,IAAI,CAAC,QAAQ,CAAE,CAAA,GAAG,IAAI;SAClD;QAED,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,cAAc,EAAA,EACxB,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,KAAK,EAAE,IAAI,CAAC,KAAK,EAAA,EAExB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpC,CAAA,CAAA,sBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,WAAW,EAAE,CAAC,EACd,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAC,MAAM,EACpB,YAAY,EAAC,UAAU,EAAA,EAEvB,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,MAAM,EAAA,CAAQ,CACpB,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,EAClB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,SAAS,EAAQ,CAAA,CACvB,CACc,CACnB,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,qCAAqC,EAAA,EAC9C,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,cAAc,EAAA,CAAQ,CAC7B,CACE,CACN,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-illustrated-card/af-illustrated-card.css?tag=af-illustrated-card&encapsulation=scoped","src/components/af-illustrated-card/af-illustrated-card.tsx"],"sourcesContent":[":host {\n display: flex;\n flex-direction: column;\n width: 100%;\n \n /* Override card atom defaults - illustrated card handles its own spacing */\n --af-card-padding: 0;\n --af-card-gap: 0;\n}\n\n/* ==========================================================================\n Base Illustrated Card Styles\n ========================================================================== */\n\n.illustrated-card {\n min-height: 400px;\n}\n\n/* ==========================================================================\n Content Area\n ========================================================================== */\n\n.illustrated-card__content {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n z-index: 1;\n}\n\n/* Desktop default size spacing */\n.illustrated-card--breakpoint-desktop.illustrated-card--size-default .illustrated-card__content {\n padding: 40px 32px 12px 32px;\n}\n\n/* Desktop large size spacing */\n.illustrated-card--breakpoint-desktop.illustrated-card--size-large .illustrated-card__content {\n padding: 40px 40px 0 40px;\n}\n\n/* Mobile spacing */\n.illustrated-card--breakpoint-mobile .illustrated-card__content {\n padding: 32px 24px 12px 24px;\n}\n\n/* ==========================================================================\n Illustration Area\n ========================================================================== */\n\n.illustrated-card__illustration-area {\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n box-sizing: border-box;\n}\n\n/* Desktop illustration area height */\n.illustrated-card--breakpoint-desktop .illustrated-card__illustration-area {\n min-height: 160px;\n}\n\n/* Mobile illustration area height */\n.illustrated-card--breakpoint-mobile .illustrated-card__illustration-area {\n min-height: 192px;\n}\n\n/* Illustration placeholder for when using data attributes */\n.illustrated-card__illustration-placeholder {\n width: 100%;\n height: 100%;\n min-height: 120px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Illustration image styling. The inner image gets the same corner radius\n * (radius-lg / 20px) as the outer af-card so art with a photographic edge\n * stays within the card's rounded frame. Consumers of af-illustrated-card\n * previously hand-rolled this value; it now comes from the token ladder. */\n.illustrated-card__illustration-area ::slotted(img),\n.illustrated-card__illustration-area img {\n max-width: 100%;\n max-height: 200px;\n height: auto;\n object-fit: contain;\n border-radius: var(--radius-lg, 20px);\n}\n\n/* ==========================================================================\n Typography Lockup Styling\n ========================================================================== */\n\n/* Pass theme colors to typography lockup */\n.illustrated-card af-typography-lockup {\n --colour-typography-heading-primary: var(--af-typography-heading-primary);\n --colour-typography-body-default: var(--af-typography-body-default);\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport type { Theme } from '../../types';\n\n/**\n * Illustrated Card molecule component that combines a card with an illustration.\n *\n * Uses a theme background with text at top, a button row in the middle, and\n * an illustration from @affinda/illustrations at the bottom.\n *\n * Uses af-card atom internally and af-typography-lockup for text hierarchy.\n *\n * @slot - Heading text content\n * @slot body - Description/body text content\n * @slot buttons - Action buttons (rendered below the description, above the illustration)\n * @slot illustration - Illustration image element\n */\n@Component({\n tag: 'af-illustrated-card',\n styleUrl: 'af-illustrated-card.css',\n shadow: false,\n scoped: true,\n})\nexport class AfIllustratedCard {\n /**\n * Theme variant - sets background color and provides theme context.\n * Defaults to 'mist-green'.\n */\n @Prop() theme?: Theme = 'mist-green';\n\n /**\n * Responsive breakpoint for typography sizing.\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Card size variant (applies to desktop only).\n */\n @Prop() cardSize: 'default' | 'large' = 'default';\n\n render() {\n const wrapperClasses = {\n 'illustrated-card': true,\n [`illustrated-card--breakpoint-${this.breakpoint}`]: true,\n [`illustrated-card--size-${this.cardSize}`]: true,\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n <af-card theme={this.theme}>\n {/* Content area with typography lockup */}\n <div class=\"illustrated-card__content\">\n <af-typography-lockup\n headingSize={3}\n breakpoint={this.breakpoint}\n textAlignment=\"left\"\n buttonLayout=\"vertical\"\n >\n <slot></slot>\n <span slot=\"description\">\n <slot name=\"body\"></slot>\n </span>\n <span slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </span>\n </af-typography-lockup>\n </div>\n\n {/* Illustration area at bottom */}\n <div class=\"illustrated-card__illustration-area\">\n <slot name=\"illustration\"></slot>\n </div>\n </af-card>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CdR70Kv1.js","mappings":";;;;AAAA,MAAM,oBAAoB,GAAG,w6DAAw6D;;MCsBx7D,iBAAiB,iBAAAA,kBAAA,CAAA,MAAA,iBAAA,SAAAC,CAAA,CAAA;AAN9B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;AAOE;;;AAGG;AACK,QAAA,IAAK,CAAA,KAAA,GAAW,YAAY;AAEpC;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAyB,SAAS;AAEpD;;AAEG;AACK,QAAA,IAAQ,CAAA,QAAA,GAAwB,SAAS;AAwClD;IAtCC,MAAM,GAAA;AACJ,QAAA,MAAM,cAAc,GAAG;AACrB,YAAA,kBAAkB,EAAE,IAAI;AACxB,YAAA,CAAC,gCAAgC,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG,IAAI;AACzD,YAAA,CAAC,0BAA0B,IAAI,CAAC,QAAQ,CAAE,CAAA,GAAG,IAAI;SAClD;QAED,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,cAAc,EAAA,EACxB,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,KAAK,EAAE,IAAI,CAAC,KAAK,EAAA,EAExB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,2BAA2B,EAAA,EACpC,CAAA,CAAA,sBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,WAAW,EAAE,CAAC,EACd,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,aAAa,EAAC,MAAM,EACpB,YAAY,EAAC,UAAU,EAAA,EAEvB,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,MAAM,EAAA,CAAQ,CACpB,EACP,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,EAClB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,SAAS,EAAQ,CAAA,CACvB,CACc,CACnB,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,qCAAqC,EAAA,EAC9C,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,cAAc,EAAA,CAAQ,CAC7B,CACE,CACN,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-illustrated-card/af-illustrated-card.css?tag=af-illustrated-card&encapsulation=scoped","src/components/af-illustrated-card/af-illustrated-card.tsx"],"sourcesContent":[":host {\n display: flex;\n flex-direction: column;\n width: 100%;\n \n /* Override card atom defaults - illustrated card handles its own spacing */\n --af-card-padding: 0;\n --af-card-gap: 0;\n}\n\n/* ==========================================================================\n Base Illustrated Card Styles\n ========================================================================== */\n\n.illustrated-card {\n min-height: 400px;\n}\n\n/* ==========================================================================\n Content Area\n ========================================================================== */\n\n.illustrated-card__content {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n z-index: 1;\n}\n\n/* Desktop default size spacing */\n.illustrated-card--breakpoint-desktop.illustrated-card--size-default .illustrated-card__content {\n padding: 40px 32px 12px 32px;\n}\n\n/* Desktop large size spacing */\n.illustrated-card--breakpoint-desktop.illustrated-card--size-large .illustrated-card__content {\n padding: 40px 40px 0 40px;\n}\n\n/* Mobile spacing */\n.illustrated-card--breakpoint-mobile .illustrated-card__content {\n padding: 32px 24px 12px 24px;\n}\n\n/* ==========================================================================\n Illustration Area\n ========================================================================== */\n\n.illustrated-card__illustration-area {\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n box-sizing: border-box;\n}\n\n/* Desktop illustration area height */\n.illustrated-card--breakpoint-desktop .illustrated-card__illustration-area {\n min-height: 160px;\n}\n\n/* Mobile illustration area height */\n.illustrated-card--breakpoint-mobile .illustrated-card__illustration-area {\n min-height: 192px;\n}\n\n/* Illustration placeholder for when using data attributes */\n.illustrated-card__illustration-placeholder {\n width: 100%;\n height: 100%;\n min-height: 120px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Illustration image styling. The inner image gets the same corner radius\n * (radius-lg / 20px) as the outer af-card so art with a photographic edge\n * stays within the card's rounded frame. Consumers of af-illustrated-card\n * previously hand-rolled this value; it now comes from the token ladder. */\n.illustrated-card__illustration-area ::slotted(img),\n.illustrated-card__illustration-area img {\n max-width: 100%;\n max-height: 200px;\n height: auto;\n object-fit: contain;\n border-radius: var(--radius-lg, 20px);\n}\n\n/* ==========================================================================\n Typography Lockup Styling\n ========================================================================== */\n\n/* Pass theme colors to typography lockup */\n.illustrated-card af-typography-lockup {\n --colour-typography-heading-primary: var(--af-typography-heading-primary);\n --colour-typography-body-default: var(--af-typography-body-default);\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\nimport type { Theme } from '../../types';\n\n/**\n * Illustrated Card molecule component that combines a card with an illustration.\n *\n * Uses a theme background with text at top, a button row in the middle, and\n * an illustration from @affinda/illustrations at the bottom.\n *\n * Uses af-card atom internally and af-typography-lockup for text hierarchy.\n *\n * @slot - Heading text content\n * @slot body - Description/body text content\n * @slot buttons - Action buttons (rendered below the description, above the illustration)\n * @slot illustration - Illustration image element\n */\n@Component({\n tag: 'af-illustrated-card',\n styleUrl: 'af-illustrated-card.css',\n shadow: false,\n scoped: true,\n})\nexport class AfIllustratedCard {\n /**\n * Theme variant - sets background color and provides theme context.\n * Defaults to 'mist-green'.\n */\n @Prop() theme?: Theme = 'mist-green';\n\n /**\n * Responsive breakpoint for typography sizing.\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Card size variant (applies to desktop only).\n */\n @Prop() cardSize: 'default' | 'large' = 'default';\n\n render() {\n const wrapperClasses = {\n 'illustrated-card': true,\n [`illustrated-card--breakpoint-${this.breakpoint}`]: true,\n [`illustrated-card--size-${this.cardSize}`]: true,\n };\n\n return (\n <Host>\n <div class={wrapperClasses}>\n <af-card theme={this.theme}>\n {/* Content area with typography lockup */}\n <div class=\"illustrated-card__content\">\n <af-typography-lockup\n headingSize={3}\n breakpoint={this.breakpoint}\n textAlignment=\"left\"\n buttonLayout=\"vertical\"\n >\n <slot></slot>\n <span slot=\"description\">\n <slot name=\"body\"></slot>\n </span>\n <span slot=\"buttons\">\n <slot name=\"buttons\"></slot>\n </span>\n </af-typography-lockup>\n </div>\n\n {/* Illustration area at bottom */}\n <div class=\"illustrated-card__illustration-area\">\n <slot name=\"illustration\"></slot>\n </div>\n </af-card>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, h } from './p-DOgb6SUj.js';
1
+ import { p as proxyCustomElement, H, h } from './p-CiY0Twna.js';
2
2
 
3
3
  const afColorSwatchCss = ":host{display:block}.swatch{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;border:1px solid #ece6f5;background:white}.color-preview{width:100%;height:120px;flex-shrink:0}.size-large .color-preview{height:140px}.color-info{padding:16px;display:flex;flex-direction:column;gap:4px}.color-name{font-family:'NeuSans', 'Inter', system-ui, sans-serif;font-size:16px;font-weight:500;color:#14343B}.color-value{font-family:'Helvetica', 'Inter', monospace, system-ui, sans-serif;font-size:14px;color:#708380}";
4
4
 
@@ -39,6 +39,6 @@ function defineCustomElement() {
39
39
  }
40
40
 
41
41
  export { AfColorSwatch as A, defineCustomElement as d };
42
- //# sourceMappingURL=p-NtJ_O8-z.js.map
42
+ //# sourceMappingURL=p-CeBCwjRf.js.map
43
43
 
44
- //# sourceMappingURL=p-NtJ_O8-z.js.map
44
+ //# sourceMappingURL=p-CeBCwjRf.js.map
@@ -1 +1 @@
1
- {"file":"p-NtJ_O8-z.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,0gBAA0gB;;MCOthB,aAAa,iBAAAA,kBAAA,CAAA,MAAA,aAAA,SAAAC,CAAA,CAAA;AAL1B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAaU,QAAA,IAAI,CAAA,IAAA,GAAwB,SAAS;AAoB9C;IAlBC,MAAM,GAAA;QACJ,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE;AACV,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAE,CAAA,GAAG;aACxB,EAAE,IAAI,EAAC,MAAM,EAAA,EACZ,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,eAAe,EACrB,IAAI,EAAC,SAAS,EACd,KAAK,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,EACjC,CAAA,EACP,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EACjC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAE,EAAA,IAAI,CAAC,IAAI,CAAO,EACrD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,OAAO,EAAE,EAAA,IAAI,CAAC,KAAK,CAAO,CACpD,CACF;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-color-swatch/af-color-swatch.css?tag=af-color-swatch&encapsulation=shadow","src/components/af-color-swatch/af-color-swatch.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.swatch {\n display: flex;\n flex-direction: column;\n border-radius: 8px;\n overflow: hidden;\n border: 1px solid #ece6f5;\n background: white;\n}\n\n.color-preview {\n width: 100%;\n height: 120px;\n flex-shrink: 0;\n}\n\n.size-large .color-preview {\n height: 140px;\n}\n\n.color-info {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.color-name {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 16px;\n font-weight: 500;\n color: #14343B;\n}\n\n.color-value {\n font-family: 'Helvetica', 'Inter', monospace, system-ui, sans-serif;\n font-size: 14px;\n color: #708380;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-color-swatch',\n styleUrl: 'af-color-swatch.css',\n shadow: true\n})\nexport class AfColorSwatch {\n /** Color value (hex) */\n @Prop() color!: string;\n\n /** Color name */\n @Prop() name!: string;\n\n /** Size variant */\n @Prop() size: 'default' | 'large' = 'default';\n\n render() {\n return (\n <div class={{\n 'swatch': true,\n [`size-${this.size}`]: true\n }} part=\"base\">\n <div\n class=\"color-preview\"\n part=\"preview\"\n style={{ backgroundColor: this.color }}\n ></div>\n <div class=\"color-info\" part=\"info\">\n <div class=\"color-name\" part=\"name\">{this.name}</div>\n <div class=\"color-value\" part=\"value\">{this.color}</div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CeBCwjRf.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,0gBAA0gB;;MCOthB,aAAa,iBAAAA,kBAAA,CAAA,MAAA,aAAA,SAAAC,CAAA,CAAA;AAL1B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;AAaU,QAAA,IAAI,CAAA,IAAA,GAAwB,SAAS;AAoB9C;IAlBC,MAAM,GAAA;QACJ,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE;AACV,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAE,CAAA,GAAG;aACxB,EAAE,IAAI,EAAC,MAAM,EAAA,EACZ,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,eAAe,EACrB,IAAI,EAAC,SAAS,EACd,KAAK,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,EACjC,CAAA,EACP,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EACjC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAE,EAAA,IAAI,CAAC,IAAI,CAAO,EACrD,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,OAAO,EAAE,EAAA,IAAI,CAAC,KAAK,CAAO,CACpD,CACF;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-color-swatch/af-color-swatch.css?tag=af-color-swatch&encapsulation=shadow","src/components/af-color-swatch/af-color-swatch.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.swatch {\n display: flex;\n flex-direction: column;\n border-radius: 8px;\n overflow: hidden;\n border: 1px solid #ece6f5;\n background: white;\n}\n\n.color-preview {\n width: 100%;\n height: 120px;\n flex-shrink: 0;\n}\n\n.size-large .color-preview {\n height: 140px;\n}\n\n.color-info {\n padding: 16px;\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.color-name {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 16px;\n font-weight: 500;\n color: #14343B;\n}\n\n.color-value {\n font-family: 'Helvetica', 'Inter', monospace, system-ui, sans-serif;\n font-size: 14px;\n color: #708380;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-color-swatch',\n styleUrl: 'af-color-swatch.css',\n shadow: true\n})\nexport class AfColorSwatch {\n /** Color value (hex) */\n @Prop() color!: string;\n\n /** Color name */\n @Prop() name!: string;\n\n /** Size variant */\n @Prop() size: 'default' | 'large' = 'default';\n\n render() {\n return (\n <div class={{\n 'swatch': true,\n [`size-${this.size}`]: true\n }} part=\"base\">\n <div\n class=\"color-preview\"\n part=\"preview\"\n style={{ backgroundColor: this.color }}\n ></div>\n <div class=\"color-info\" part=\"info\">\n <div class=\"color-name\" part=\"name\">{this.name}</div>\n <div class=\"color-value\" part=\"value\">{this.color}</div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- const globalStyles = ":root{--colour-brand-mist-green:#C6D5D1;--colour-brand-inkwell:#14343B;--colour-brand-soft-clay:#B09670;--colour-brand-white:#FFFFFF;--colour-brand-ivory-paper:#FFF9EE;--colour-brand-azure:#7FE2D4;--colour-brand-ice:#A6FFF8;--colour-tints-mist-green-50:#f9fbfa;--colour-mistgreen-50:#f9fbfa;--colour-tints-mist-green-100:#f4f7f6;--colour-mistgreen-100:#f4f7f6;--colour-tints-mist-green-200:#e8eeed;--colour-mistgreen-200:#e8eeed;--colour-tints-mist-green-300:#dde6e3;--colour-mistgreen-300:#dde6e3;--colour-tints-mist-green-400:#d1ddda;--colour-mistgreen-400:#d1ddda;--colour-tints-mist-green-500:#c6d5d1;--colour-mistgreen-500:#c6d5d1;--colour-tints-mist-green-600:#b2c0bc;--colour-mistgreen-600:#b2c0bc;--colour-tints-mist-green-700:#9eaaa7;--colour-mistgreen-700:#9eaaa7;--colour-tints-inkwell-20:#f9fafa;--colour-inkwell-20:#f9fafa;--colour-tints-inkwell-30:#f3f5f5;--colour-inkwell-30:#f3f5f5;--colour-tints-inkwell-40:#edf0f0;--colour-inkwell-40:#edf0f0;--colour-tints-inkwell-50:#e8ebeb;--colour-inkwell-50:#e8ebeb;--colour-tints-inkwell-100:#d0d6d8;--colour-inkwell-100:#d0d6d8;--colour-tints-inkwell-200:#a1aeb1;--colour-inkwell-200:#a1aeb1;--colour-tints-inkwell-300:#728589;--colour-inkwell-300:#728589;--colour-tints-inkwell-350:#60767b;--colour-inkwell-350:#60767b;--colour-tints-inkwell-400:#2b484f;--colour-inkwell-400:#2b484f;--colour-tints-inkwell-450:#203e45;--colour-inkwell-450:#203e45;--colour-tints-inkwell-500:#14343b;--colour-inkwell-500:#14343b;--colour-tints-inkwell-600:#102a2f;--colour-inkwell-600:#102a2f;--colour-tints-inkwell-700:#102a2f;--colour-inkwell-700:#102a2f;--colour-tints-soft-clay-50:#f7f5f1;--colour-softclay-50:#f7f5f1;--colour-tints-soft-clay-100:#efeae2;--colour-softclay-100:#efeae2;--colour-tints-soft-clay-200:#dfd5c6;--colour-softclay-200:#dfd5c6;--colour-tints-soft-clay-300:#d0c0a9;--colour-softclay-300:#d0c0a9;--colour-tints-soft-clay-400:#c0ab8d;--colour-softclay-400:#c0ab8d;--colour-tints-soft-clay-500:#b09670;--colour-softclay-500:#b09670;--colour-tints-soft-clay-600:#9e8765;--colour-softclay-600:#9e8765;--colour-tints-soft-clay-700:#8d785a;--colour-softclay-700:#8d785a;--colour-tints-soft-clay-800:#8a7049;--colour-softclay-800:#8a7049;--colour-tints-ice-50:#f6ffff;--colour-ice-50:#f6ffff;--colour-tints-ice-100:#edfffe;--colour-ice-100:#edfffe;--colour-tints-ice-200:#dbfffd;--colour-ice-200:#dbfffd;--colour-tints-ice-300:#cafffd;--colour-ice-300:#cafffd;--colour-tints-ice-400:#b8fffc;--colour-ice-400:#b8fffc;--colour-tints-ice-500:#a6fffb;--colour-ice-500:#a6fffb;--colour-tints-ice-600:#95e6e2;--colour-ice-600:#95e6e2;--colour-tints-ice-700:#85ccc9;--colour-ice-700:#85ccc9;--colour-typography-heading-primary:#14343B;--colour-typography-heading-secondary:#B09670;--colour-typography-body-dark:#14343B;--colour-typography-body-default:#14343B;--colour-typography-body-subtle:#708380;--colour-background-mist-green:#C6D5D1;--colour-background-inkwell:#14343B;--colour-background-soft-clay:#B09670;--colour-background-white:#FFFFFF;--colour-background-ivory-paper:#FFF9EE;--colour-background-level1:#E8EEED;--colour-ui-mist-green:#C6D5D1;--colour-ui-inkwell:#14343B;--colour-ui-soft-clay:#B09670;--colour-ui-white:#FFFFFF;--colour-ui-ivory-paper:#FFF9EE;--colour-ui-azure:#7FE2D4;--colour-ui-ice:#A6FFF8;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(20, 52, 59, 0.08);--shadow-md:1px 2px 4px rgba(20, 52, 59, 0.2);--shadow-navbar:0 4px 24px rgba(20, 52, 59, 0.12);--status-ok:#3E8F6E;--status-issue:#B94A3B;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--typography-headingfont:'NeuSans', Arial, sans-serif;--typography-bodyfont:'NeuSans', Arial, sans-serif;--typography-sansfont:'NeuSans', Arial, sans-serif;--font-weight-regular:400;--font-weight-book:500;--font-weight-semibold:600;--font-size-heading-1-desktop:56px;--font-size-heading-1-mobile:38px;--font-size-heading-2-desktop:44px;--font-size-heading-2-mobile:32px;--font-size-heading-3-desktop:34px;--font-size-heading-3-mobile:25px;--font-size-heading-4-desktop:24px;--font-size-heading-4-mobile:20px;--font-size-heading-5-desktop:20px;--font-size-heading-5-mobile:18px;--font-size-heading-xl-desktop:80px;--font-size-heading-xl-mobile:50px;--font-size-heading-card-desktop:22px;--font-size-heading-card-mobile:20px;--font-size-body-xlarge:22px;--font-size-body-large:18px;--font-size-body-medium:16px;--font-size-body-small:14px;--font-size-label-button:17px;--font-size-label-tag:14px;--line-height-heading-3:38px;--line-height-heading-4:30px;--line-height-heading-5:24px;--line-height-heading-tight:1;--line-height-heading-normal:1.1;--line-height-heading-relaxed:1.2;--line-height-heading-card:28px;--line-height-body-xlarge:28px;--line-height-body-large:26px;--line-height-body-medium:24px;--line-height-body-small:20px;--line-height-label-button:20px;--line-height-label-tag:1;--letter-spacing-heading:-0.02em;--letter-spacing-body:0;--grid-xlarge-breakpoint:1440px;--grid-xlarge-columns:12;--grid-xlarge-margin:80px;--grid-xlarge-gutter:24px;--grid-xlarge-max-width:1440px;--grid-large-breakpoint:1024px;--grid-large-columns:12;--grid-large-margin:64px;--grid-large-gutter:16px;--grid-large-max-width:1024px;--grid-medium-breakpoint:768px;--grid-medium-columns:6;--grid-medium-margin:32px;--grid-medium-gutter:16px;--grid-medium-max-width:768px;--grid-small-breakpoint:375px;--grid-small-columns:4;--grid-small-margin:20px;--grid-small-gutter:16px;--grid-small-max-width:100%;--grid-xsmall-breakpoint:320px;--grid-xsmall-columns:4;--grid-xsmall-margin:16px;--grid-xsmall-gutter:16px;--grid-xsmall-max-width:100%;--icon-size-small:16px;--icon-size-medium:24px;--icon-size-large:32px;--icon-badge-size:48px;--illustration-size:432px}";
1
+ const globalStyles = ":root{--colour-brand-mist-green:#C6D5D1;--colour-brand-inkwell:#14343B;--colour-brand-soft-clay:#B09670;--colour-brand-white:#FFFFFF;--colour-brand-ivory-paper:#FFF9EE;--colour-brand-azure:#7FE2D4;--colour-brand-ice:#A6FFF8;--colour-tints-mist-green-50:#f9fbfa;--colour-mistgreen-50:#f9fbfa;--colour-tints-mist-green-100:#f4f7f6;--colour-mistgreen-100:#f4f7f6;--colour-tints-mist-green-200:#e8eeed;--colour-mistgreen-200:#e8eeed;--colour-tints-mist-green-300:#dde6e3;--colour-mistgreen-300:#dde6e3;--colour-tints-mist-green-400:#d1ddda;--colour-mistgreen-400:#d1ddda;--colour-tints-mist-green-500:#c6d5d1;--colour-mistgreen-500:#c6d5d1;--colour-tints-mist-green-600:#b2c0bc;--colour-mistgreen-600:#b2c0bc;--colour-tints-mist-green-700:#9eaaa7;--colour-mistgreen-700:#9eaaa7;--colour-tints-inkwell-20:#f9fafa;--colour-inkwell-20:#f9fafa;--colour-tints-inkwell-30:#f3f5f5;--colour-inkwell-30:#f3f5f5;--colour-tints-inkwell-40:#edf0f0;--colour-inkwell-40:#edf0f0;--colour-tints-inkwell-50:#e8ebeb;--colour-inkwell-50:#e8ebeb;--colour-tints-inkwell-100:#d0d6d8;--colour-inkwell-100:#d0d6d8;--colour-tints-inkwell-200:#a1aeb1;--colour-inkwell-200:#a1aeb1;--colour-tints-inkwell-300:#728589;--colour-inkwell-300:#728589;--colour-tints-inkwell-350:#60767b;--colour-inkwell-350:#60767b;--colour-tints-inkwell-400:#2b484f;--colour-inkwell-400:#2b484f;--colour-tints-inkwell-450:#203e45;--colour-inkwell-450:#203e45;--colour-tints-inkwell-500:#14343b;--colour-inkwell-500:#14343b;--colour-tints-inkwell-600:#102a2f;--colour-inkwell-600:#102a2f;--colour-tints-inkwell-700:#102a2f;--colour-inkwell-700:#102a2f;--colour-tints-soft-clay-50:#f7f5f1;--colour-softclay-50:#f7f5f1;--colour-tints-soft-clay-100:#efeae2;--colour-softclay-100:#efeae2;--colour-tints-soft-clay-200:#dfd5c6;--colour-softclay-200:#dfd5c6;--colour-tints-soft-clay-300:#d0c0a9;--colour-softclay-300:#d0c0a9;--colour-tints-soft-clay-400:#c0ab8d;--colour-softclay-400:#c0ab8d;--colour-tints-soft-clay-500:#b09670;--colour-softclay-500:#b09670;--colour-tints-soft-clay-600:#9e8765;--colour-softclay-600:#9e8765;--colour-tints-soft-clay-700:#8d785a;--colour-softclay-700:#8d785a;--colour-tints-soft-clay-800:#8a7049;--colour-softclay-800:#8a7049;--colour-tints-ice-50:#f6ffff;--colour-ice-50:#f6ffff;--colour-tints-ice-100:#edfffe;--colour-ice-100:#edfffe;--colour-tints-ice-200:#dbfffd;--colour-ice-200:#dbfffd;--colour-tints-ice-300:#cafffd;--colour-ice-300:#cafffd;--colour-tints-ice-400:#b8fffc;--colour-ice-400:#b8fffc;--colour-tints-ice-500:#a6fffb;--colour-ice-500:#a6fffb;--colour-tints-ice-600:#95e6e2;--colour-ice-600:#95e6e2;--colour-tints-ice-700:#85ccc9;--colour-ice-700:#85ccc9;--colour-typography-heading-primary:#14343B;--colour-typography-heading-secondary:#B09670;--colour-typography-body-dark:#14343B;--colour-typography-body-default:#14343B;--colour-typography-body-subtle:#708380;--colour-background-mist-green:#C6D5D1;--colour-background-inkwell:#14343B;--colour-background-soft-clay:#B09670;--colour-background-white:#FFFFFF;--colour-background-ivory-paper:#FFF9EE;--colour-background-level1:#E8EEED;--colour-ui-mist-green:#C6D5D1;--colour-ui-inkwell:#14343B;--colour-ui-soft-clay:#B09670;--colour-ui-white:#FFFFFF;--colour-ui-ivory-paper:#FFF9EE;--colour-ui-azure:#7FE2D4;--colour-ui-ice:#A6FFF8;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(20, 52, 59, 0.08);--shadow-md:1px 2px 4px rgba(20, 52, 59, 0.2);--shadow-lift:0 12px 32px -8px rgba(20, 52, 59, 0.18), 0 4px 10px -4px rgba(20, 52, 59, 0.08);--shadow-navbar:0 4px 24px rgba(20, 52, 59, 0.12);--status-ok:#3E8F6E;--status-issue:#B94A3B;--motion-duration-fast:150ms;--motion-duration-base:200ms;--motion-duration-slow:300ms;--motion-easing-standard:cubic-bezier(0.4, 0, 0.2, 1);--motion-easing-emphasized:cubic-bezier(0.2, 0, 0, 1);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--typography-headingfont:'NeuSans', Arial, sans-serif;--typography-bodyfont:'NeuSans', Arial, sans-serif;--typography-sansfont:'NeuSans', Arial, sans-serif;--font-weight-regular:400;--font-weight-book:500;--font-weight-semibold:600;--font-size-heading-1-desktop:56px;--font-size-heading-1-mobile:38px;--font-size-heading-2-desktop:44px;--font-size-heading-2-mobile:32px;--font-size-heading-3-desktop:34px;--font-size-heading-3-mobile:25px;--font-size-heading-4-desktop:24px;--font-size-heading-4-mobile:20px;--font-size-heading-5-desktop:20px;--font-size-heading-5-mobile:18px;--font-size-heading-xl-desktop:80px;--font-size-heading-xl-mobile:50px;--font-size-heading-card-desktop:22px;--font-size-heading-card-mobile:20px;--font-size-body-xlarge:22px;--font-size-body-large:18px;--font-size-body-medium:16px;--font-size-body-small:14px;--font-size-label-button:17px;--font-size-label-tag:14px;--line-height-heading-3:38px;--line-height-heading-4:30px;--line-height-heading-5:24px;--line-height-heading-tight:1;--line-height-heading-normal:1.1;--line-height-heading-relaxed:1.2;--line-height-heading-card:28px;--line-height-body-xlarge:28px;--line-height-body-large:26px;--line-height-body-medium:24px;--line-height-body-small:20px;--line-height-label-button:20px;--line-height-label-tag:1;--letter-spacing-heading:-0.02em;--letter-spacing-body:0;--grid-xlarge-breakpoint:1440px;--grid-xlarge-columns:12;--grid-xlarge-margin:80px;--grid-xlarge-gutter:24px;--grid-xlarge-max-width:1440px;--grid-large-breakpoint:1024px;--grid-large-columns:12;--grid-large-margin:64px;--grid-large-gutter:16px;--grid-large-max-width:1024px;--grid-medium-breakpoint:768px;--grid-medium-columns:6;--grid-medium-margin:32px;--grid-medium-gutter:16px;--grid-medium-max-width:768px;--grid-small-breakpoint:375px;--grid-small-columns:4;--grid-small-margin:20px;--grid-small-gutter:16px;--grid-small-max-width:100%;--grid-xsmall-breakpoint:320px;--grid-xsmall-columns:4;--grid-xsmall-margin:16px;--grid-xsmall-gutter:16px;--grid-xsmall-max-width:100%;--icon-size-small:16px;--icon-size-medium:24px;--icon-size-large:32px;--icon-badge-size:48px;--illustration-size:432px}";
2
2
 
3
3
  const NAMESPACE = 'affinda';
4
4
  const BUILD = /* affinda */ { hydratedSelectorName: "hydrated", lazyLoad: false, slotRelocation: true, updatable: true};
@@ -1776,6 +1776,6 @@ function render(vnode, container) {
1776
1776
  }
1777
1777
 
1778
1778
  export { H, setNonce as a, setPlatformOptions as b, Host as c, createEvent as d, getAssetPath as g, h, proxyCustomElement as p, render as r, setAssetPath as s };
1779
- //# sourceMappingURL=p-DOgb6SUj.js.map
1779
+ //# sourceMappingURL=p-CiY0Twna.js.map
1780
1780
 
1781
- //# sourceMappingURL=p-DOgb6SUj.js.map
1781
+ //# sourceMappingURL=p-CiY0Twna.js.map