@affinda/wc 0.0.11 → 0.0.12

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 (179) hide show
  1. package/dist/affinda/af-cta-section.entry.esm.js.map +1 -0
  2. package/dist/affinda/af-feature-accordion.entry.esm.js.map +1 -0
  3. package/dist/affinda/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.esm.js.map +1 -1
  4. package/dist/affinda/af-logo-well.entry.esm.js.map +1 -1
  5. package/dist/affinda/affinda.css +1 -1
  6. package/dist/affinda/affinda.esm.js +1 -1
  7. package/dist/affinda/index.esm.js +1 -1
  8. package/dist/affinda/p-00214c08.entry.js +2 -0
  9. package/dist/affinda/p-00214c08.entry.js.map +1 -0
  10. package/dist/affinda/{p-56a15842.entry.js → p-050f98cd.entry.js} +2 -2
  11. package/dist/affinda/{p-cb10e4ca.entry.js → p-07990b1f.entry.js} +2 -2
  12. package/dist/affinda/p-0835ca39.entry.js +2 -0
  13. package/dist/affinda/p-0835ca39.entry.js.map +1 -0
  14. package/dist/affinda/{p-0fb55acf.entry.js → p-173bc70b.entry.js} +2 -2
  15. package/dist/affinda/{p-f6f2f1c4.entry.js → p-32fe4d5e.entry.js} +2 -2
  16. package/dist/affinda/{p-430127fa.entry.js → p-3a9646e6.entry.js} +2 -2
  17. package/dist/affinda/{p-45d0f3e3.entry.js → p-954963fa.entry.js} +2 -2
  18. package/dist/affinda/{p-46edc753.entry.js → p-9bc092d7.entry.js} +2 -2
  19. package/dist/affinda/p-9c733909.entry.js +2 -0
  20. package/dist/affinda/p-9c733909.entry.js.map +1 -0
  21. package/dist/affinda/{p-Agei6ZJQ.js → p-DI7b0bCy.js} +3 -3
  22. package/dist/affinda/p-DI7b0bCy.js.map +1 -0
  23. package/dist/affinda/{p-2c0d7eb7.entry.js → p-a3116a6b.entry.js} +2 -2
  24. package/dist/affinda/{p-e69c34f1.entry.js → p-aac3792a.entry.js} +2 -2
  25. package/dist/affinda/{p-e56182e4.entry.js → p-ac7efb48.entry.js} +2 -2
  26. package/dist/affinda/{p-10288f13.entry.js → p-b6885a9a.entry.js} +2 -2
  27. package/dist/affinda/{p-10288f13.entry.js.map → p-b6885a9a.entry.js.map} +1 -1
  28. package/dist/affinda/{p-39e917eb.entry.js → p-d3b2ab0e.entry.js} +2 -2
  29. package/dist/affinda/{p-867c5141.entry.js → p-dec4c4d5.entry.js} +2 -2
  30. package/dist/affinda/{p-e2c40f4e.entry.js → p-e367e42b.entry.js} +2 -2
  31. package/dist/affinda/{p-23aedaa4.entry.js → p-f8ac0120.entry.js} +2 -2
  32. package/dist/cjs/af-aspect-ratio.cjs.entry.js +1 -1
  33. package/dist/cjs/af-button-group.cjs.entry.js +1 -1
  34. package/dist/cjs/af-button.cjs.entry.js +1 -1
  35. package/dist/cjs/af-card.cjs.entry.js +1 -1
  36. package/dist/cjs/af-client-carousel.cjs.entry.js +1 -1
  37. package/dist/cjs/af-color-swatch.cjs.entry.js +1 -1
  38. package/dist/cjs/af-container.cjs.entry.js +1 -1
  39. package/dist/cjs/af-cta-section.cjs.entry.js +32 -0
  40. package/dist/cjs/af-cta-section.entry.cjs.js.map +1 -0
  41. package/dist/cjs/af-feature-accordion.cjs.entry.js +108 -0
  42. package/dist/cjs/af-feature-accordion.entry.cjs.js.map +1 -0
  43. package/dist/cjs/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.cjs.js.map +1 -1
  44. package/dist/cjs/af-heading_5.cjs.entry.js +2 -2
  45. package/dist/cjs/af-hero-section.cjs.entry.js +2 -2
  46. package/dist/cjs/af-icon-button.cjs.entry.js +1 -1
  47. package/dist/cjs/af-logo-well.cjs.entry.js +3 -3
  48. package/dist/cjs/af-logo-well.entry.cjs.js.map +1 -1
  49. package/dist/cjs/af-section.cjs.entry.js +3 -3
  50. package/dist/cjs/af-testimonial-carousel.cjs.entry.js +3 -3
  51. package/dist/cjs/af-testimonial-stat.cjs.entry.js +2 -2
  52. package/dist/cjs/af-testimonial.cjs.entry.js +2 -2
  53. package/dist/cjs/af-typography-lockup.cjs.entry.js +1 -1
  54. package/dist/cjs/affinda.cjs.js +2 -2
  55. package/dist/cjs/{index-D_ItFcqt.js → index-DfEVhbS6.js} +42 -4
  56. package/dist/cjs/index-DfEVhbS6.js.map +1 -0
  57. package/dist/cjs/index.cjs.js +1 -1
  58. package/dist/cjs/loader.cjs.js +2 -2
  59. package/dist/collection/collection-manifest.json +2 -0
  60. package/dist/collection/components/af-cta-section/af-cta-section.css +175 -0
  61. package/dist/collection/components/af-cta-section/af-cta-section.js +183 -0
  62. package/dist/collection/components/af-cta-section/af-cta-section.js.map +1 -0
  63. package/dist/collection/components/af-feature-accordion/af-feature-accordion.css +220 -0
  64. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js +209 -0
  65. package/dist/collection/components/af-feature-accordion/af-feature-accordion.js.map +1 -0
  66. package/dist/collection/components/af-hero-section/af-hero-section.js +1 -1
  67. package/dist/collection/components/af-logo-well/af-logo-well.css +20 -5
  68. package/dist/collection/components/af-logo-well/af-logo-well.js +1 -1
  69. package/dist/collection/components/af-navbar/af-navbar.css +28 -2
  70. package/dist/collection/components/af-section/af-section.js +2 -2
  71. package/dist/collection/components/af-testimonial/af-testimonial.js +1 -1
  72. package/dist/collection/components/af-testimonial-carousel/af-testimonial-carousel.js +2 -2
  73. package/dist/collection/components/af-testimonial-stat/af-testimonial-stat.js +1 -1
  74. package/dist/components/af-aspect-ratio.js +1 -1
  75. package/dist/components/af-button-group.js +1 -1
  76. package/dist/components/af-button.js +1 -1
  77. package/dist/components/af-card.js +1 -1
  78. package/dist/components/af-client-carousel.js +1 -1
  79. package/dist/components/af-color-swatch.js +1 -1
  80. package/dist/components/af-container.js +1 -1
  81. package/dist/components/af-cta-section.d.ts +11 -0
  82. package/dist/components/af-cta-section.js +59 -0
  83. package/dist/components/af-cta-section.js.map +1 -0
  84. package/dist/components/af-feature-accordion.d.ts +11 -0
  85. package/dist/components/af-feature-accordion.js +136 -0
  86. package/dist/components/af-feature-accordion.js.map +1 -0
  87. package/dist/components/af-heading.js +1 -1
  88. package/dist/components/af-hero-section.js +3 -3
  89. package/dist/components/af-icon-button.js +1 -1
  90. package/dist/components/af-logo-well.js +3 -3
  91. package/dist/components/af-logo-well.js.map +1 -1
  92. package/dist/components/af-logo.js +1 -1
  93. package/dist/components/af-nav-item.js +1 -1
  94. package/dist/components/af-navbar.js +1 -1
  95. package/dist/components/af-section.js +4 -4
  96. package/dist/components/af-testimonial-carousel.js +3 -3
  97. package/dist/components/af-testimonial-stat.js +2 -2
  98. package/dist/components/af-testimonial.js +2 -2
  99. package/dist/components/af-text.js +1 -1
  100. package/dist/components/af-typography-lockup.js +1 -1
  101. package/dist/components/index.js +13 -13
  102. package/dist/components/{p-BeQlNDyY.js → p-7a3XpKXs.js} +3 -3
  103. package/dist/components/{p-BeQlNDyY.js.map → p-7a3XpKXs.js.map} +1 -1
  104. package/dist/components/{p-BSewwIfD.js → p-BBivIwbE.js} +3 -3
  105. package/dist/components/{p-BSewwIfD.js.map → p-BBivIwbE.js.map} +1 -1
  106. package/dist/components/{p-CcNomA2o.js → p-BKGrl8ua.js} +3 -3
  107. package/dist/components/{p-CcNomA2o.js.map → p-BKGrl8ua.js.map} +1 -1
  108. package/dist/components/{p-Vu-NeL7U.js → p-BTEblSAo.js} +3 -3
  109. package/dist/components/{p-Vu-NeL7U.js.map → p-BTEblSAo.js.map} +1 -1
  110. package/dist/components/{p-CUr7n62X.js → p-BekWfVfB.js} +3 -3
  111. package/dist/components/{p-CUr7n62X.js.map → p-BekWfVfB.js.map} +1 -1
  112. package/dist/components/{p-C1C1Him5.js → p-Bg7dSc4D.js} +3 -3
  113. package/dist/components/{p-C1C1Him5.js.map → p-Bg7dSc4D.js.map} +1 -1
  114. package/dist/components/{p-BpXkQGDQ.js → p-BkEmrXbw.js} +3 -3
  115. package/dist/components/{p-BpXkQGDQ.js.map → p-BkEmrXbw.js.map} +1 -1
  116. package/dist/components/{p-sJI0-JlJ.js → p-D4s4u7tL.js} +3 -3
  117. package/dist/components/{p-sJI0-JlJ.js.map → p-D4s4u7tL.js.map} +1 -1
  118. package/dist/components/{p-tFlyM2Th.js → p-DqOwXTsH.js} +3 -3
  119. package/dist/components/{p-tFlyM2Th.js.map → p-DqOwXTsH.js.map} +1 -1
  120. package/dist/components/{p-CZlTvZAm.js → p-Dt4Fpr3O.js} +33 -5
  121. package/dist/components/p-Dt4Fpr3O.js.map +1 -0
  122. package/dist/components/{p-BMl1ggbQ.js → p-PLXzXWgX.js} +3 -3
  123. package/dist/components/{p-BMl1ggbQ.js.map → p-PLXzXWgX.js.map} +1 -1
  124. package/dist/components/{p-Csie_upq.js → p-Thu9mUEn.js} +4 -4
  125. package/dist/components/p-Thu9mUEn.js.map +1 -0
  126. package/dist/components/{p-B_FOK5P6.js → p-emB0l5gm.js} +3 -3
  127. package/dist/components/{p-B_FOK5P6.js.map → p-emB0l5gm.js.map} +1 -1
  128. package/dist/esm/af-aspect-ratio.entry.js +1 -1
  129. package/dist/esm/af-button-group.entry.js +1 -1
  130. package/dist/esm/af-button.entry.js +1 -1
  131. package/dist/esm/af-card.entry.js +1 -1
  132. package/dist/esm/af-client-carousel.entry.js +1 -1
  133. package/dist/esm/af-color-swatch.entry.js +1 -1
  134. package/dist/esm/af-container.entry.js +1 -1
  135. package/dist/esm/af-cta-section.entry.js +30 -0
  136. package/dist/esm/af-cta-section.entry.js.map +1 -0
  137. package/dist/esm/af-feature-accordion.entry.js +106 -0
  138. package/dist/esm/af-feature-accordion.entry.js.map +1 -0
  139. package/dist/esm/af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js.map +1 -1
  140. package/dist/esm/af-heading_5.entry.js +2 -2
  141. package/dist/esm/af-hero-section.entry.js +2 -2
  142. package/dist/esm/af-icon-button.entry.js +1 -1
  143. package/dist/esm/af-logo-well.entry.js +3 -3
  144. package/dist/esm/af-logo-well.entry.js.map +1 -1
  145. package/dist/esm/af-section.entry.js +3 -3
  146. package/dist/esm/af-testimonial-carousel.entry.js +3 -3
  147. package/dist/esm/af-testimonial-stat.entry.js +2 -2
  148. package/dist/esm/af-testimonial.entry.js +2 -2
  149. package/dist/esm/af-typography-lockup.entry.js +1 -1
  150. package/dist/esm/affinda.js +3 -3
  151. package/dist/esm/{index-Agei6ZJQ.js → index-DI7b0bCy.js} +42 -4
  152. package/dist/esm/index-DI7b0bCy.js.map +1 -0
  153. package/dist/esm/index.js +1 -1
  154. package/dist/esm/loader.js +3 -3
  155. package/dist/types/components/af-cta-section/af-cta-section.d.ts +21 -0
  156. package/dist/types/components/af-feature-accordion/af-feature-accordion.d.ts +37 -0
  157. package/dist/types/components.d.ts +172 -0
  158. package/package.json +1 -1
  159. package/dist/affinda/p-13c30dd8.entry.js +0 -2
  160. package/dist/affinda/p-13c30dd8.entry.js.map +0 -1
  161. package/dist/affinda/p-Agei6ZJQ.js.map +0 -1
  162. package/dist/cjs/index-D_ItFcqt.js.map +0 -1
  163. package/dist/components/p-CZlTvZAm.js.map +0 -1
  164. package/dist/components/p-Csie_upq.js.map +0 -1
  165. package/dist/esm/index-Agei6ZJQ.js.map +0 -1
  166. /package/dist/affinda/{p-56a15842.entry.js.map → p-050f98cd.entry.js.map} +0 -0
  167. /package/dist/affinda/{p-cb10e4ca.entry.js.map → p-07990b1f.entry.js.map} +0 -0
  168. /package/dist/affinda/{p-0fb55acf.entry.js.map → p-173bc70b.entry.js.map} +0 -0
  169. /package/dist/affinda/{p-f6f2f1c4.entry.js.map → p-32fe4d5e.entry.js.map} +0 -0
  170. /package/dist/affinda/{p-430127fa.entry.js.map → p-3a9646e6.entry.js.map} +0 -0
  171. /package/dist/affinda/{p-45d0f3e3.entry.js.map → p-954963fa.entry.js.map} +0 -0
  172. /package/dist/affinda/{p-46edc753.entry.js.map → p-9bc092d7.entry.js.map} +0 -0
  173. /package/dist/affinda/{p-2c0d7eb7.entry.js.map → p-a3116a6b.entry.js.map} +0 -0
  174. /package/dist/affinda/{p-e69c34f1.entry.js.map → p-aac3792a.entry.js.map} +0 -0
  175. /package/dist/affinda/{p-e56182e4.entry.js.map → p-ac7efb48.entry.js.map} +0 -0
  176. /package/dist/affinda/{p-39e917eb.entry.js.map → p-d3b2ab0e.entry.js.map} +0 -0
  177. /package/dist/affinda/{p-867c5141.entry.js.map → p-dec4c4d5.entry.js.map} +0 -0
  178. /package/dist/affinda/{p-e2c40f4e.entry.js.map → p-e367e42b.entry.js.map} +0 -0
  179. /package/dist/affinda/{p-23aedaa4.entry.js.map → p-f8ac0120.entry.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, h } from './p-CZlTvZAm.js';
1
+ import { p as proxyCustomElement, H, h } from './p-Dt4Fpr3O.js';
2
2
 
3
3
  const afAspectRatioCss = ":host{display:block;width:100%}.aspect-ratio-container{width:100%;position:relative;overflow:hidden}.aspect-ratio-container ::slotted(*){width:100%;height:100%;object-fit:cover}";
4
4
 
@@ -97,6 +97,6 @@ function defineCustomElement() {
97
97
  }
98
98
 
99
99
  export { AfAspectRatio as A, defineCustomElement as d };
100
- //# sourceMappingURL=p-BMl1ggbQ.js.map
100
+ //# sourceMappingURL=p-PLXzXWgX.js.map
101
101
 
102
- //# sourceMappingURL=p-BMl1ggbQ.js.map
102
+ //# sourceMappingURL=p-PLXzXWgX.js.map
@@ -1 +1 @@
1
- {"file":"p-BMl1ggbQ.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,mLAAmL;;MCW/L,aAAa,iBAAAA,kBAAA,CAAA,MAAA,aAAA,SAAAC,CAAA,CAAA;AAL1B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAME;;;;;;;;AAQG;AACK,QAAA,IAAK,CAAA,KAAA,GAAW,KAAK;AAuE9B;IArES,aAAa,GAAA;;AAEnB,QAAA,MAAM,QAAQ,GAA8B;;AAE1C,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;;AAEd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;;AAEhB,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,WAAW;AAC3B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,mBAAmB,EAAE,WAAW;;AAEhC,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,KAAK,EAAE;SACR;;AAGD,QAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACxB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;;;QAI7B,OAAO,IAAI,CAAC,KAAK;;IAGnB,MAAM,GAAA;AACJ,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE;AAEvC,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,wBAAwB,EAC9B,KAAK,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAA,EAElC,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-aspect-ratio/af-aspect-ratio.css?tag=af-aspect-ratio&encapsulation=shadow","src/components/af-aspect-ratio/af-aspect-ratio.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.aspect-ratio-container {\n width: 100%;\n position: relative;\n overflow: hidden;\n}\n\n/* Ensure slotted content fills the container */\n.aspect-ratio-container ::slotted(*) {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * A container component that maintains a fixed aspect ratio for its content.\n * Useful for images, videos, or any content that needs to maintain specific proportions.\n */\n@Component({\n tag: 'af-aspect-ratio',\n styleUrl: 'af-aspect-ratio.css',\n shadow: true\n})\nexport class AfAspectRatio {\n /**\n * The aspect ratio to maintain. Can be:\n * - A predefined ratio: '1:1', '16:9', '4:3', 'golden-portrait', 'golden-landscape', 'a4-portrait', 'a4-landscape', 'letter-portrait', 'letter-landscape', etc.\n * - A custom ratio in format 'width / height': '16 / 9', '4 / 3', '1.618 / 1', etc.\n *\n * @example\n * <af-aspect-ratio ratio=\"16:9\">Content</af-aspect-ratio>\n * <af-aspect-ratio ratio=\"1.618 / 1\">Content</af-aspect-ratio>\n */\n @Prop() ratio: string = '1:1';\n\n private getRatioValue(): string {\n // Map common ratio shortcuts to actual CSS aspect-ratio values\n const ratioMap: { [key: string]: string } = {\n // Common ratios\n '1:1': '1 / 1',\n '1:2': '1 / 2',\n '2:1': '2 / 1',\n '2:3': '2 / 3',\n '3:1': '3 / 1',\n '3:2': '3 / 2',\n '3:4': '3 / 4',\n '4:1': '4 / 1',\n '4:3': '4 / 3',\n '4:5': '4 / 5',\n '5:2': '5 / 2',\n '5:4': '5 / 4',\n '8:3': '8 / 3',\n '8:5': '8 / 5',\n // Screen ratios\n '9:8': '9 / 8',\n '9:16': '9 / 16',\n '9:21': '9 / 21',\n '10:16': '10 / 16',\n '14:3': '14 / 3',\n '16:5': '16 / 5',\n '16:9': '16 / 9',\n '16:10': '16 / 10',\n '21:9': '21 / 9',\n '32:9': '32 / 9',\n // Golden ratio variants\n 'golden-portrait': '1 / 1.618',\n 'golden-landscape': '1.618 / 1',\n 'golden-portrait-half': '1 / 0.809',\n 'golden-landscape-half': '0.809 / 1',\n // Paper sizes - A4\n 'a4-portrait': '1 / 1.414',\n 'a4-landscape': '1.414 / 1',\n 'a4-portrait-half': '1 / 0.707',\n 'a4-landscape-half': '0.707 / 1',\n // Paper sizes - Letter\n 'letter-portrait': '1 / 1.294',\n 'letter-landscape': '1.294 / 1',\n 'letter-portrait-half': '1 / 0.647',\n 'letter-landscape-half': '0.647 / 1',\n // Special\n '6:7': '6 / 7'\n };\n\n // If it's a predefined ratio, return the mapped value\n if (ratioMap[this.ratio]) {\n return ratioMap[this.ratio];\n }\n\n // Otherwise, assume it's a custom ratio already in the correct format\n return this.ratio;\n }\n\n render() {\n const ratioValue = this.getRatioValue();\n\n return (\n <div\n class=\"aspect-ratio-container\"\n style={{ aspectRatio: ratioValue }}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-PLXzXWgX.js","mappings":";;AAAA,MAAM,gBAAgB,GAAG,mLAAmL;;MCW/L,aAAa,iBAAAA,kBAAA,CAAA,MAAA,aAAA,SAAAC,CAAA,CAAA;AAL1B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAME;;;;;;;;AAQG;AACK,QAAA,IAAK,CAAA,KAAA,GAAW,KAAK;AAuE9B;IArES,aAAa,GAAA;;AAEnB,QAAA,MAAM,QAAQ,GAA8B;;AAE1C,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;;AAEd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,MAAM,EAAE,QAAQ;;AAEhB,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,WAAW;AAC3B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,mBAAmB,EAAE,WAAW;;AAEhC,YAAA,iBAAiB,EAAE,WAAW;AAC9B,YAAA,kBAAkB,EAAE,WAAW;AAC/B,YAAA,sBAAsB,EAAE,WAAW;AACnC,YAAA,uBAAuB,EAAE,WAAW;;AAEpC,YAAA,KAAK,EAAE;SACR;;AAGD,QAAA,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACxB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;;;QAI7B,OAAO,IAAI,CAAC,KAAK;;IAGnB,MAAM,GAAA;AACJ,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE;AAEvC,QAAA,QACE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,wBAAwB,EAC9B,KAAK,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAA,EAElC,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-aspect-ratio/af-aspect-ratio.css?tag=af-aspect-ratio&encapsulation=shadow","src/components/af-aspect-ratio/af-aspect-ratio.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.aspect-ratio-container {\n width: 100%;\n position: relative;\n overflow: hidden;\n}\n\n/* Ensure slotted content fills the container */\n.aspect-ratio-container ::slotted(*) {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * A container component that maintains a fixed aspect ratio for its content.\n * Useful for images, videos, or any content that needs to maintain specific proportions.\n */\n@Component({\n tag: 'af-aspect-ratio',\n styleUrl: 'af-aspect-ratio.css',\n shadow: true\n})\nexport class AfAspectRatio {\n /**\n * The aspect ratio to maintain. Can be:\n * - A predefined ratio: '1:1', '16:9', '4:3', 'golden-portrait', 'golden-landscape', 'a4-portrait', 'a4-landscape', 'letter-portrait', 'letter-landscape', etc.\n * - A custom ratio in format 'width / height': '16 / 9', '4 / 3', '1.618 / 1', etc.\n *\n * @example\n * <af-aspect-ratio ratio=\"16:9\">Content</af-aspect-ratio>\n * <af-aspect-ratio ratio=\"1.618 / 1\">Content</af-aspect-ratio>\n */\n @Prop() ratio: string = '1:1';\n\n private getRatioValue(): string {\n // Map common ratio shortcuts to actual CSS aspect-ratio values\n const ratioMap: { [key: string]: string } = {\n // Common ratios\n '1:1': '1 / 1',\n '1:2': '1 / 2',\n '2:1': '2 / 1',\n '2:3': '2 / 3',\n '3:1': '3 / 1',\n '3:2': '3 / 2',\n '3:4': '3 / 4',\n '4:1': '4 / 1',\n '4:3': '4 / 3',\n '4:5': '4 / 5',\n '5:2': '5 / 2',\n '5:4': '5 / 4',\n '8:3': '8 / 3',\n '8:5': '8 / 5',\n // Screen ratios\n '9:8': '9 / 8',\n '9:16': '9 / 16',\n '9:21': '9 / 21',\n '10:16': '10 / 16',\n '14:3': '14 / 3',\n '16:5': '16 / 5',\n '16:9': '16 / 9',\n '16:10': '16 / 10',\n '21:9': '21 / 9',\n '32:9': '32 / 9',\n // Golden ratio variants\n 'golden-portrait': '1 / 1.618',\n 'golden-landscape': '1.618 / 1',\n 'golden-portrait-half': '1 / 0.809',\n 'golden-landscape-half': '0.809 / 1',\n // Paper sizes - A4\n 'a4-portrait': '1 / 1.414',\n 'a4-landscape': '1.414 / 1',\n 'a4-portrait-half': '1 / 0.707',\n 'a4-landscape-half': '0.707 / 1',\n // Paper sizes - Letter\n 'letter-portrait': '1 / 1.294',\n 'letter-landscape': '1.294 / 1',\n 'letter-portrait-half': '1 / 0.647',\n 'letter-landscape-half': '0.647 / 1',\n // Special\n '6:7': '6 / 7'\n };\n\n // If it's a predefined ratio, return the mapped value\n if (ratioMap[this.ratio]) {\n return ratioMap[this.ratio];\n }\n\n // Otherwise, assume it's a custom ratio already in the correct format\n return this.ratio;\n }\n\n render() {\n const ratioValue = this.getRatioValue();\n\n return (\n <div\n class=\"aspect-ratio-container\"\n style={{ aspectRatio: ratioValue }}\n >\n <slot></slot>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
- import { p as proxyCustomElement, H, h, c as Host } from './p-CZlTvZAm.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-Dt4Fpr3O.js';
2
2
 
3
- const afNavbarCss = ":host{display:block;width:100%;position:absolute;top:32px;left:0;right:0;z-index:10}.navbar-container{padding:0 80px;box-sizing:border-box;position:relative}.navbar{background:var(--colour-background-white, #ffffff);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box}.navbar-left{display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;flex-shrink:0}.mobile-menu-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;color:var(--colour-brand-inkwell, #14343b);margin-left:auto}.mobile-menu-toggle svg{display:block}.nav-links{display:flex;align-items:center;gap:8px}.navbar-right{display:flex;align-items:center;gap:20px}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 767px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:0}.navbar-left{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.mobile-menu-toggle{display:flex}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:16px}.nav-links.mobile-open{display:flex}.navbar-right{display:none;width:100%;flex-direction:column;gap:12px;align-items:stretch;margin-top:16px}.navbar-right.mobile-open{display:flex}.nav-actions{width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";
3
+ const afNavbarCss = ":host{display:block;width:100%;position:absolute;top:32px;left:0;right:0;z-index:10}.navbar-container{padding:0 80px;box-sizing:border-box;position:relative}.navbar{background:var(--colour-background-white, #ffffff);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box;flex-wrap:nowrap;}.navbar-left{display:flex;align-items:center;gap:32px;flex-shrink:0}.logo{display:flex;align-items:center;flex-shrink:0}.mobile-menu-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;color:var(--colour-brand-inkwell, #14343b);margin-left:auto}.mobile-menu-toggle svg{display:block}.nav-links{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.navbar-right{display:flex;align-items:center;gap:20px;flex-shrink:0}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1099px){.nav-actions{display:none}.navbar-right{gap:0}}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 991px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:0;flex-wrap:wrap;}.navbar-left{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.mobile-menu-toggle{display:flex}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:16px;flex-wrap:wrap}.nav-links.mobile-open{display:flex}.navbar-right{display:none;width:100%;flex-direction:column;gap:12px;align-items:stretch;margin-top:16px}.navbar-right.mobile-open{display:flex}.nav-actions{display:flex;width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";
4
4
 
5
5
  const AfNavbar = /*@__PURE__*/ proxyCustomElement(class AfNavbar extends H {
6
6
  constructor(registerHost) {
@@ -36,6 +36,6 @@ function defineCustomElement() {
36
36
  }
37
37
 
38
38
  export { AfNavbar as A, defineCustomElement as d };
39
- //# sourceMappingURL=p-Csie_upq.js.map
39
+ //# sourceMappingURL=p-Thu9mUEn.js.map
40
40
 
41
- //# sourceMappingURL=p-Csie_upq.js.map
41
+ //# sourceMappingURL=p-Thu9mUEn.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-Thu9mUEn.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/af-navbar/af-navbar.css?tag=af-navbar&encapsulation=shadow","src/components/af-navbar/af-navbar.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n position: absolute;\n top: 32px;\n left: 0;\n right: 0;\n z-index: 10;\n}\n\n.navbar-container {\n padding: 0 80px;\n box-sizing: border-box;\n position: relative;\n}\n\n.navbar {\n background: var(--colour-background-white, #ffffff);\n border-radius: 9999px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 8px 8px 40px;\n box-sizing: border-box;\n flex-wrap: nowrap; /* Prevent wrapping */\n}\n\n/* Left section */\n.navbar-left {\n display: flex;\n align-items: center;\n gap: 32px;\n flex-shrink: 0;\n}\n\n.logo {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n\n/* Mobile menu toggle button */\n.mobile-menu-toggle {\n display: none;\n background: none;\n border: none;\n padding: 8px;\n cursor: pointer;\n color: var(--colour-brand-inkwell, #14343b);\n margin-left: auto;\n}\n\n.mobile-menu-toggle svg {\n display: block;\n}\n\n.nav-links {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: nowrap;\n}\n\n/* Right section */\n.navbar-right {\n display: flex;\n align-items: center;\n gap: 20px;\n flex-shrink: 0;\n}\n\n.nav-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.nav-button {\n display: flex;\n align-items: center;\n}\n\n/* \n * Breakpoint 1: Hide \"Talk to us\" and \"Log in\" (nav-actions) \n * This happens first as the viewport gets narrower\n * Matches affinda.com behavior at ~1100px\n */\n@media (max-width: 1099px) {\n .nav-actions {\n display: none;\n }\n \n .navbar-right {\n gap: 0;\n }\n}\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .navbar-container {\n padding: 24px 40px 0;\n }\n\n .navbar-left {\n gap: 24px;\n }\n\n .nav-links {\n gap: 4px;\n }\n}\n\n/* \n * Breakpoint 2: Switch to hamburger menu\n * Matches affinda.com behavior at 991px\n */\n@media (max-width: 991px) {\n .navbar-container {\n padding: 16px 16px 0;\n }\n\n .navbar {\n padding: 8px 16px;\n flex-direction: column;\n border-radius: 16px;\n gap: 0;\n flex-wrap: wrap; /* Allow wrapping in mobile menu */\n }\n\n .navbar-left {\n width: 100%;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n }\n\n /* Show hamburger button on mobile */\n .mobile-menu-toggle {\n display: flex;\n }\n\n /* Hide nav links by default on mobile */\n .nav-links {\n display: none;\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n margin-top: 16px;\n flex-wrap: wrap;\n }\n\n /* Show nav links when menu is open */\n .nav-links.mobile-open {\n display: flex;\n }\n\n /* Hide right section by default on mobile */\n .navbar-right {\n display: none;\n width: 100%;\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n margin-top: 16px;\n }\n\n /* Show right section when menu is open */\n .navbar-right.mobile-open {\n display: flex;\n }\n\n /* Show nav-actions again in mobile menu */\n .nav-actions {\n display: flex;\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n }\n\n .nav-button {\n width: 100%;\n }\n}\n","import { Component, State, h, Host } from '@stencil/core';\n\n/**\n * A full-width navigation bar component that provides the main site navigation.\n * Features a pill-shaped container with logo, navigation links, and action buttons.\n * Includes mobile hamburger menu.\n */\n@Component({\n tag: 'af-navbar',\n styleUrl: 'af-navbar.css',\n shadow: true\n})\nexport class AfNavbar {\n @State() mobileMenuOpen: boolean = false;\n\n private toggleMobileMenu = () => {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n };\n\n render() {\n return (\n <Host>\n <nav class=\"navbar-container\">\n <div class=\"navbar\">\n {/* Left section: Logo + Nav Links */}\n <div class=\"navbar-left\">\n <div class=\"logo\">\n <slot name=\"logo\"></slot>\n </div>\n \n {/* Hamburger menu button - mobile only */}\n <button \n class=\"mobile-menu-toggle\"\n onClick={this.toggleMobileMenu}\n aria-label=\"Toggle navigation menu\"\n aria-expanded={this.mobileMenuOpen ? 'true' : 'false'}\n >\n {this.mobileMenuOpen ? (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M18 6L6 18M6 6l12 12\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n ) : (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M3 12h18M3 6h18M3 18h18\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n )}\n </button>\n \n <div class={`nav-links ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <slot name=\"start\"></slot>\n </div>\n </div>\n\n {/* Right section: Actions + Button */}\n <div class={`navbar-right ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <div class=\"nav-actions\">\n <slot name=\"end\"></slot>\n </div>\n <div class=\"nav-button\">\n <slot name=\"button\"></slot>\n </div>\n </div>\n </div>\n </nav>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { p as proxyCustomElement, H, h, c as Host } from './p-CZlTvZAm.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-Dt4Fpr3O.js';
2
2
 
3
3
  const afTypographyLockupCss = ":host{display:block}.lockup{display:flex;flex-direction:column;gap:40px}.text-left{align-items:flex-start}.text-center{align-items:center}.text-left .copy,.text-left .heading,.text-left .description{text-align:left}.text-center .copy,.text-center .heading,.text-center .description{text-align:center}.copy{display:flex;flex-direction:column;gap:16px;width:100%}.heading{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:400;color:var(--typography-heading-primary, #14343B);line-height:1;white-space:pre-wrap}.breakpoint-desktop.heading-1 .heading{font-size:56px;letter-spacing:-1.12px}.breakpoint-desktop.heading-2 .heading{font-size:44px;letter-spacing:-0.88px}.breakpoint-desktop.heading-3 .heading{font-size:34px;letter-spacing:-0.68px}.breakpoint-desktop.heading-4 .heading{font-size:24px;letter-spacing:-0.48px;line-height:1.2}.breakpoint-desktop.heading-5 .heading{font-size:20px;letter-spacing:-0.4px;line-height:1.2}.breakpoint-mobile.heading-1 .heading{font-size:38px;letter-spacing:-0.76px}.breakpoint-mobile.heading-2 .heading{font-size:32px;letter-spacing:-0.64px}.breakpoint-mobile.heading-3 .heading{font-size:25px;letter-spacing:-0.5px}.breakpoint-mobile.heading-4 .heading{font-size:20px;letter-spacing:-0.4px;line-height:1.1}.breakpoint-mobile.heading-5 .heading{font-size:18px;letter-spacing:-0.36px;line-height:1.1}.description{font-family:'Helvetica', var(--typography-primaryfont, 'NeuSans', sans-serif), sans-serif;font-size:18px;font-weight:400;line-height:26px;color:var(--typography-body-default, #2B484F);white-space:pre-wrap}.description:empty{display:none}.buttons{display:flex;gap:12px}.buttons:empty{display:none}.button-horizontal .buttons{flex-direction:row;align-items:center}.text-left.button-horizontal{flex-direction:row;align-items:center;gap:16px}.text-left.button-horizontal .copy{flex:1 0 0;max-width:950px}.text-left.button-horizontal .buttons{flex-shrink:0}.button-vertical .buttons{flex-direction:row;align-items:flex-start}.text-center.button-vertical .buttons{align-items:center}.text-center .copy{max-width:840px}::slotted(*){margin:0}";
4
4
 
@@ -63,6 +63,6 @@ function defineCustomElement() {
63
63
  }
64
64
 
65
65
  export { AfTypographyLockup as A, defineCustomElement as d };
66
- //# sourceMappingURL=p-B_FOK5P6.js.map
66
+ //# sourceMappingURL=p-emB0l5gm.js.map
67
67
 
68
- //# sourceMappingURL=p-B_FOK5P6.js.map
68
+ //# sourceMappingURL=p-emB0l5gm.js.map
@@ -1 +1 @@
1
- {"file":"p-B_FOK5P6.js","mappings":";;AAAA,MAAM,qBAAqB,GAAG,8jEAA8jE;;MCO/kE,kBAAkB,iBAAAA,kBAAA,CAAA,MAAA,kBAAA,SAAAC,CAAA,CAAA;AAL/B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAME;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAsB,CAAC;AAE1C;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAyB,SAAS;AAEpD;;AAEG;AACK,QAAA,IAAa,CAAA,aAAA,GAAsB,MAAM;AAEjD;;AAEG;AACK,QAAA,IAAe,CAAA,eAAA,GAA8B,UAAU;AAwChE;IAjCC,MAAM,GAAA;AACJ,QAAA,MAAM,gBAAgB,GAAG;AACvB,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAE,CAAA,GAAG,IAAI;AACpC,YAAA,CAAC,UAAU,IAAI,CAAC,eAAe,CAAE,CAAA,GAAG;SACrC;AAED,QAAA,MAAM,WAAW,GAAG;AAClB,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,CAAC,WAAW,IAAI,CAAC,WAAW,CAAE,CAAA,GAAG,IAAI;AACrC,YAAA,CAAC,cAAc,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG;SACpC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE,QAAQ,EAAE,CAAG,EAAA,IAAI,CAAC,QAAQ,CAAA,EAAA,CAAI,EAAE,GAAG,EAAE;AAEzE,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,gBAAgB,EAAA,EAC1B,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAA,EACvC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EACjC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAA,EAClC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,aAAa,EAAA,CAAQ,CAC5B,CACF,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EACjC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,CAAQ,CACxB,CACF,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;","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 gap: 40px;\n}\n\n/* Text alignment */\n.text-left {\n align-items: flex-start;\n}\n\n.text-center {\n align-items: center;\n}\n\n.text-left .copy,\n.text-left .heading,\n.text-left .description {\n text-align: left;\n}\n\n.text-center .copy,\n.text-center .heading,\n.text-center .description {\n text-align: center;\n}\n\n/* Copy section */\n.copy {\n display: flex;\n flex-direction: column;\n gap: 16px;\n width: 100%;\n}\n\n/* Heading styles */\n.heading {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n color: var(--typography-heading-primary, #14343B);\n line-height: 1;\n white-space: pre-wrap;\n}\n\n/* Desktop heading sizes */\n.breakpoint-desktop.heading-1 .heading {\n font-size: 56px;\n letter-spacing: -1.12px;\n}\n\n.breakpoint-desktop.heading-2 .heading {\n font-size: 44px;\n letter-spacing: -0.88px;\n}\n\n.breakpoint-desktop.heading-3 .heading {\n font-size: 34px;\n letter-spacing: -0.68px;\n}\n\n.breakpoint-desktop.heading-4 .heading {\n font-size: 24px;\n letter-spacing: -0.48px;\n line-height: 1.2;\n}\n\n.breakpoint-desktop.heading-5 .heading {\n font-size: 20px;\n letter-spacing: -0.4px;\n line-height: 1.2;\n}\n\n/* Mobile heading sizes */\n.breakpoint-mobile.heading-1 .heading {\n font-size: 38px;\n letter-spacing: -0.76px;\n}\n\n.breakpoint-mobile.heading-2 .heading {\n font-size: 32px;\n letter-spacing: -0.64px;\n}\n\n.breakpoint-mobile.heading-3 .heading {\n font-size: 25px;\n letter-spacing: -0.5px;\n}\n\n.breakpoint-mobile.heading-4 .heading {\n font-size: 20px;\n letter-spacing: -0.4px;\n line-height: 1.1;\n}\n\n.breakpoint-mobile.heading-5 .heading {\n font-size: 18px;\n letter-spacing: -0.36px;\n line-height: 1.1;\n}\n\n/* Description/body text */\n.description {\n font-family: 'Helvetica', var(--typography-primaryfont, 'NeuSans', sans-serif), sans-serif;\n font-size: 18px;\n font-weight: 400;\n line-height: 26px;\n color: var(--typography-body-default, #2B484F);\n white-space: pre-wrap;\n}\n\n.description:empty {\n display: none;\n}\n\n/* Buttons section */\n.buttons {\n display: flex;\n gap: 12px;\n}\n\n.buttons:empty {\n display: none;\n}\n\n/* Button alignment - horizontal */\n.button-horizontal .buttons {\n flex-direction: row;\n align-items: center;\n}\n\n.text-left.button-horizontal {\n flex-direction: row;\n align-items: center;\n gap: 16px;\n}\n\n.text-left.button-horizontal .copy {\n flex: 1 0 0;\n max-width: 950px;\n}\n\n.text-left.button-horizontal .buttons {\n flex-shrink: 0;\n}\n\n/* Button alignment - vertical */\n.button-vertical .buttons {\n flex-direction: row;\n align-items: flex-start;\n}\n\n.text-center.button-vertical .buttons {\n align-items: center;\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, h, Prop, Host } from '@stencil/core';\n\n@Component({\n tag: 'af-typography-lockup',\n styleUrl: 'af-typography-lockup.css',\n shadow: true\n})\nexport class AfTypographyLockup {\n /**\n * The heading size (1-5, where 1 is largest)\n */\n @Prop() headingSize: 1 | 2 | 3 | 4 | 5 = 2;\n\n /**\n * The breakpoint for responsive typography\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Text alignment\n */\n @Prop() textAlignment: 'left' | 'center' = 'left';\n\n /**\n * Button alignment (horizontal or vertical stacking)\n */\n @Prop() buttonAlignment: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Maximum width for the copy section (in pixels)\n */\n @Prop() maxWidth?: number;\n\n render() {\n const containerClasses = {\n 'lockup': true,\n [`text-${this.textAlignment}`]: true,\n [`button-${this.buttonAlignment}`]: true\n };\n\n const copyClasses = {\n 'copy': true,\n [`heading-${this.headingSize}`]: true,\n [`breakpoint-${this.breakpoint}`]: true\n };\n\n const copyStyle = this.maxWidth ? { maxWidth: `${this.maxWidth}px` } : {};\n\n return (\n <Host>\n <div class={containerClasses}>\n <div class={copyClasses} style={copyStyle}>\n <div class=\"heading\" part=\"heading\">\n <slot></slot>\n </div>\n <div class=\"description\" part=\"body\">\n <slot name=\"description\"></slot>\n </div>\n </div>\n <div class=\"buttons\" part=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-emB0l5gm.js","mappings":";;AAAA,MAAM,qBAAqB,GAAG,8jEAA8jE;;MCO/kE,kBAAkB,iBAAAA,kBAAA,CAAA,MAAA,kBAAA,SAAAC,CAAA,CAAA;AAL/B,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;AAME;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAsB,CAAC;AAE1C;;AAEG;AACK,QAAA,IAAU,CAAA,UAAA,GAAyB,SAAS;AAEpD;;AAEG;AACK,QAAA,IAAa,CAAA,aAAA,GAAsB,MAAM;AAEjD;;AAEG;AACK,QAAA,IAAe,CAAA,eAAA,GAA8B,UAAU;AAwChE;IAjCC,MAAM,GAAA;AACJ,QAAA,MAAM,gBAAgB,GAAG;AACvB,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAE,CAAA,GAAG,IAAI;AACpC,YAAA,CAAC,UAAU,IAAI,CAAC,eAAe,CAAE,CAAA,GAAG;SACrC;AAED,QAAA,MAAM,WAAW,GAAG;AAClB,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,CAAC,WAAW,IAAI,CAAC,WAAW,CAAE,CAAA,GAAG,IAAI;AACrC,YAAA,CAAC,cAAc,IAAI,CAAC,UAAU,CAAE,CAAA,GAAG;SACpC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE,QAAQ,EAAE,CAAG,EAAA,IAAI,CAAC,QAAQ,CAAA,EAAA,CAAI,EAAE,GAAG,EAAE;AAEzE,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,gBAAgB,EAAA,EAC1B,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAA,EACvC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EACjC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAA,EAClC,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,aAAa,EAAA,CAAQ,CAC5B,CACF,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAA,EACjC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,SAAS,EAAA,CAAQ,CACxB,CACF,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;","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 gap: 40px;\n}\n\n/* Text alignment */\n.text-left {\n align-items: flex-start;\n}\n\n.text-center {\n align-items: center;\n}\n\n.text-left .copy,\n.text-left .heading,\n.text-left .description {\n text-align: left;\n}\n\n.text-center .copy,\n.text-center .heading,\n.text-center .description {\n text-align: center;\n}\n\n/* Copy section */\n.copy {\n display: flex;\n flex-direction: column;\n gap: 16px;\n width: 100%;\n}\n\n/* Heading styles */\n.heading {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n color: var(--typography-heading-primary, #14343B);\n line-height: 1;\n white-space: pre-wrap;\n}\n\n/* Desktop heading sizes */\n.breakpoint-desktop.heading-1 .heading {\n font-size: 56px;\n letter-spacing: -1.12px;\n}\n\n.breakpoint-desktop.heading-2 .heading {\n font-size: 44px;\n letter-spacing: -0.88px;\n}\n\n.breakpoint-desktop.heading-3 .heading {\n font-size: 34px;\n letter-spacing: -0.68px;\n}\n\n.breakpoint-desktop.heading-4 .heading {\n font-size: 24px;\n letter-spacing: -0.48px;\n line-height: 1.2;\n}\n\n.breakpoint-desktop.heading-5 .heading {\n font-size: 20px;\n letter-spacing: -0.4px;\n line-height: 1.2;\n}\n\n/* Mobile heading sizes */\n.breakpoint-mobile.heading-1 .heading {\n font-size: 38px;\n letter-spacing: -0.76px;\n}\n\n.breakpoint-mobile.heading-2 .heading {\n font-size: 32px;\n letter-spacing: -0.64px;\n}\n\n.breakpoint-mobile.heading-3 .heading {\n font-size: 25px;\n letter-spacing: -0.5px;\n}\n\n.breakpoint-mobile.heading-4 .heading {\n font-size: 20px;\n letter-spacing: -0.4px;\n line-height: 1.1;\n}\n\n.breakpoint-mobile.heading-5 .heading {\n font-size: 18px;\n letter-spacing: -0.36px;\n line-height: 1.1;\n}\n\n/* Description/body text */\n.description {\n font-family: 'Helvetica', var(--typography-primaryfont, 'NeuSans', sans-serif), sans-serif;\n font-size: 18px;\n font-weight: 400;\n line-height: 26px;\n color: var(--typography-body-default, #2B484F);\n white-space: pre-wrap;\n}\n\n.description:empty {\n display: none;\n}\n\n/* Buttons section */\n.buttons {\n display: flex;\n gap: 12px;\n}\n\n.buttons:empty {\n display: none;\n}\n\n/* Button alignment - horizontal */\n.button-horizontal .buttons {\n flex-direction: row;\n align-items: center;\n}\n\n.text-left.button-horizontal {\n flex-direction: row;\n align-items: center;\n gap: 16px;\n}\n\n.text-left.button-horizontal .copy {\n flex: 1 0 0;\n max-width: 950px;\n}\n\n.text-left.button-horizontal .buttons {\n flex-shrink: 0;\n}\n\n/* Button alignment - vertical */\n.button-vertical .buttons {\n flex-direction: row;\n align-items: flex-start;\n}\n\n.text-center.button-vertical .buttons {\n align-items: center;\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, h, Prop, Host } from '@stencil/core';\n\n@Component({\n tag: 'af-typography-lockup',\n styleUrl: 'af-typography-lockup.css',\n shadow: true\n})\nexport class AfTypographyLockup {\n /**\n * The heading size (1-5, where 1 is largest)\n */\n @Prop() headingSize: 1 | 2 | 3 | 4 | 5 = 2;\n\n /**\n * The breakpoint for responsive typography\n */\n @Prop() breakpoint: 'desktop' | 'mobile' = 'desktop';\n\n /**\n * Text alignment\n */\n @Prop() textAlignment: 'left' | 'center' = 'left';\n\n /**\n * Button alignment (horizontal or vertical stacking)\n */\n @Prop() buttonAlignment: 'horizontal' | 'vertical' = 'vertical';\n\n /**\n * Maximum width for the copy section (in pixels)\n */\n @Prop() maxWidth?: number;\n\n render() {\n const containerClasses = {\n 'lockup': true,\n [`text-${this.textAlignment}`]: true,\n [`button-${this.buttonAlignment}`]: true\n };\n\n const copyClasses = {\n 'copy': true,\n [`heading-${this.headingSize}`]: true,\n [`breakpoint-${this.breakpoint}`]: true\n };\n\n const copyStyle = this.maxWidth ? { maxWidth: `${this.maxWidth}px` } : {};\n\n return (\n <Host>\n <div class={containerClasses}>\n <div class={copyClasses} style={copyStyle}>\n <div class=\"heading\" part=\"heading\">\n <slot></slot>\n </div>\n <div class=\"description\" part=\"body\">\n <slot name=\"description\"></slot>\n </div>\n </div>\n <div class=\"buttons\" part=\"buttons\">\n <slot name=\"buttons\"></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afAspectRatioCss = ":host{display:block;width:100%}.aspect-ratio-container{width:100%;position:relative;overflow:hidden}.aspect-ratio-container ::slotted(*){width:100%;height:100%;object-fit:cover}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afButtonGroupCss = ":host{display:inline-block}.button-group{display:inline-flex;align-items:center;box-sizing:border-box}.direction-horizontal{flex-direction:row}.direction-vertical{flex-direction:column}::slotted(*){flex-shrink:0}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afButtonCss = ":host{display:inline-block}.button{display:inline-flex;align-items:center;justify-content:center;gap:0;border-radius:9999px;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:500;text-decoration:none;cursor:pointer;transition:all 0.2s ease;border:1px solid transparent;box-sizing:border-box;white-space:nowrap}.size-default{padding:12px 24px;font-size:17px;line-height:20px}.size-small{padding:8px 16px;font-size:14px;line-height:16px}.icon-left:empty,.icon-right:empty{display:none}.icon-left,.icon-right{display:flex;align-items:center;justify-content:center;flex-shrink:0}.size-default .icon-left,.size-default .icon-right{width:24px;height:24px}.size-small .icon-left,.size-small .icon-right{width:20px;height:20px}.label{flex:0 1 auto;display:flex;align-items:center;justify-content:center;height:24px}.size-default .label{padding:0 12px;height:24px}.size-small .label{padding:0 8px;height:20px}.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-primary:hover:not(.disabled){background:#8FEBE3;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-primary:active:not(.disabled){background:#7FE2D4;transform:translateY(0)}.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-secondary:hover:not(.disabled){background:#F6FAF9;transform:translateY(-1px);box-shadow:0 2px 8px rgba(20, 52, 59, 0.15)}.variant-secondary:active:not(.disabled){background:#E8F1EF;transform:translateY(0)}.variant-outline{background:transparent;border-color:var(--colour-brand-inkwell, #14343B);color:var(--colour-brand-inkwell, #14343B)}.variant-outline:hover:not(.disabled){background:rgba(20, 52, 59, 0.04);transform:translateY(-1px)}.variant-outline:active:not(.disabled){background:rgba(20, 52, 59, 0.08);transform:translateY(0)}.variant-ghost{background:transparent;border-color:transparent;color:var(--colour-brand-inkwell, #14343B);padding-left:0;padding-right:0}.variant-ghost:hover:not(.disabled){text-decoration:underline}.variant-ghost:active:not(.disabled){opacity:0.7}.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}button.button{background:none;border:none;font:inherit;color:inherit;cursor:pointer}button.button.variant-primary{background:var(--colour-brand-ice, #A6FFFB);border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-secondary{background:var(--colour-brand-white, #FFFFFF);border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-outline{background:transparent;border:1px solid var(--colour-brand-inkwell, #14343B)}button.button.variant-ghost{background:transparent;border:1px solid transparent}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afCardCss = ".sc-af-card-h{display:block;width:100%;min-height:400px}.card.sc-af-card{background:var(--colour-background-level-1, #e8eeed);border-radius:var(--border-radius-card-level-1, 32px);overflow:hidden;position:relative;display:flex;flex-direction:column;min-height:400px;height:100%;box-sizing:border-box}.card--with-image.sc-af-card{background:var(--colour-brand-inkwell, #14343b);min-height:480px}.card__background.sc-af-card{position:absolute;inset:0;pointer-events:none;z-index:0}.card__background-image.sc-af-card{width:100%;height:100%;object-fit:cover;object-position:center}.card__content.sc-af-card{position:relative;padding:40px;display:flex;flex-direction:column;gap:24px;flex:1;box-sizing:border-box;z-index:1}.card__content.sc-af-card-s>img,.card__content .sc-af-card-s>img{width:100%;height:auto;min-height:200px;margin-top:auto;object-fit:cover;object-position:top center}.card__content.sc-af-card-s>af-heading,.card__content .sc-af-card-s>af-heading{margin-bottom:0}.card__content.sc-af-card-s>af-text,.card__content .sc-af-card-s>af-text{line-height:1.44}.card__content--overlay.sc-af-card{backdrop-filter:blur(2px);background:linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);padding:32px;padding-top:200px;justify-content:flex-end;--colour-typography-heading-primary:#ffffff;--colour-typography-heading-secondary:#ffffff;--colour-typography-body-default:#ffffff;--colour-typography-body-dark:#ffffff;color:#ffffff}.card__content--overlay.sc-af-card *.sc-af-card{color:#ffffff !important}.card.sc-af-card:not(.card--with-image):not(.card--dark-overlay) af-heading.sc-af-card,.card.sc-af-card:not(.card--with-image):not(.card--dark-overlay) af-text.sc-af-card{--colour-typography-heading-primary:var(--colour-brand-inkwell, #14343B);--colour-typography-body-default:#2B484F}.card--custom-bg.sc-af-card:not(.card--dark-overlay) af-heading.sc-af-card,.card--custom-bg.sc-af-card:not(.card--dark-overlay) af-text.sc-af-card{--colour-typography-heading-primary:var(--colour-brand-inkwell, #14343B);--colour-typography-body-default:#2B484F}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afClientCarouselCss = ":host{display:block;width:100%;background-color:var(--colour-brand-inkwell, #14343B)}.client-carousel{padding:48px 80px;display:flex;flex-direction:column;gap:40px;align-items:center}.headline{text-align:center;padding:24px 220px}.headline h3{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:500;font-size:34px;line-height:1;letter-spacing:-0.68px;color:var(--colour-brand-mist-green, #C6D5D1);margin:0}.carousel-container{display:flex;flex-direction:column;gap:16px;width:100%;overflow:hidden}.carousel-row{display:flex;width:100%;overflow:hidden;position:relative}.logo-track{display:flex;gap:16px;animation-timing-function:linear;animation-iteration-count:infinite}.scroll-left .logo-track{animation-name:scroll-left;animation-duration:40s}.scroll-right .logo-track{animation-name:scroll-right;animation-duration:40s}@keyframes scroll-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}@keyframes scroll-right{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}::slotted(*){flex-shrink:0}@media (max-width: 1024px){.client-carousel{padding:32px 40px}.headline{padding:16px 40px}}@media (max-width: 767px){.client-carousel{padding:24px 16px}.headline{padding:16px}.headline h3{font-size:25px}}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h } from './index-DI7b0bCy.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
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afContainerCss = ":host{display:block;width:100%}.container{width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box;padding-left:16px;padding-right:16px}@media (min-width: 375px){.container{padding-left:20px;padding-right:20px}}@media (min-width: 768px){.container{padding-left:32px;padding-right:32px}.max-width-medium{max-width:768px}}@media (min-width: 1024px){.container{padding-left:64px;padding-right:64px}.max-width-large{max-width:1024px}.max-width-medium{max-width:768px}}@media (min-width: 1440px){.container{padding-left:80px;padding-right:80px}.max-width-xlarge{max-width:1440px}.max-width-large{max-width:1024px}.max-width-medium{max-width:768px}}.max-width-fluid{max-width:none}";
4
4
 
@@ -0,0 +1,30 @@
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
+
3
+ const afCtaSectionCss = ".cta-section.sc-af-cta-section{padding:32px}.cta-section__container.sc-af-cta-section{position:relative;display:flex;align-items:center;gap:48px;padding:64px 80px;background-color:#D6E8E4;border-radius:24px;overflow:hidden;max-width:1200px;margin:0 auto}.cta-section__wave-bg.sc-af-cta-section{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden}.cta-section__wave-svg.sc-af-cta-section{position:absolute;bottom:-50px;right:-50px;width:120%;height:120%;opacity:0.8}.cta-section__illustration.sc-af-cta-section{position:relative;z-index:1;flex-shrink:0;width:200px;height:200px;display:flex;align-items:center;justify-content:center}.cta-section__illustration-img.sc-af-cta-section{width:100%;height:100%;object-fit:contain}.cta-section__illustration.sc-af-cta-section svg.sc-af-cta-section{width:100%;height:100%}.cta-section__content.sc-af-cta-section{position:relative;z-index:1;flex:1}.cta-section__heading.sc-af-cta-section{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:400;font-size:clamp(28px, 4vw, 40px);line-height:1.1;letter-spacing:-0.02em;color:var(--colour-brand-inkwell, #14343b);margin:0 0 12px 0;font-style:normal}.cta-section__description.sc-af-cta-section{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:400;font-size:18px;line-height:1.5;color:var(--colour-brand-inkwell, #14343b);margin:0 0 24px 0;opacity:0.85}.cta-section__buttons.sc-af-cta-section{display:flex;gap:12px;flex-wrap:wrap}.cta-section__button.sc-af-cta-section{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:100px;font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:500;font-size:16px;line-height:1.25;text-decoration:none;transition:all 0.2s ease;cursor:pointer}.cta-section__button--primary.sc-af-cta-section{background-color:var(--colour-brand-teal, #6ECCC8);color:var(--colour-brand-inkwell, #14343b);border:2px solid var(--colour-brand-inkwell, #14343b)}.cta-section__button--primary.sc-af-cta-section:hover{background-color:#5BBBB7}.cta-section__button--secondary.sc-af-cta-section{background-color:white;color:var(--colour-brand-inkwell, #14343b);border:2px solid var(--colour-brand-inkwell, #14343b)}.cta-section__button--secondary.sc-af-cta-section:hover{background-color:var(--colour-brand-inkwell, #14343b);color:white}@media (max-width: 768px){.cta-section__container.sc-af-cta-section{flex-direction:column;padding:48px 32px;gap:32px;text-align:center}.cta-section__illustration.sc-af-cta-section{width:150px;height:150px}.cta-section__buttons.sc-af-cta-section{justify-content:center}.cta-section__heading.sc-af-cta-section{font-size:28px}}@media (max-width: 480px){.cta-section.sc-af-cta-section{padding:16px}.cta-section__container.sc-af-cta-section{padding:32px 24px}.cta-section__buttons.sc-af-cta-section{flex-direction:column;width:100%}.cta-section__button.sc-af-cta-section{width:100%}}";
4
+
5
+ const AfCtaSection = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ /** Section heading */
9
+ this.heading = 'See what our AI agents can do for you';
10
+ /** Section description */
11
+ this.description = 'Upload your documents and watch our AI agents get to work.';
12
+ /** Primary button text */
13
+ this.primaryButtonText = 'Try for free';
14
+ /** Primary button URL */
15
+ this.primaryButtonUrl = '#';
16
+ /** Secondary button text */
17
+ this.secondaryButtonText = 'Talk to us';
18
+ /** Secondary button URL */
19
+ this.secondaryButtonUrl = '#';
20
+ /** Illustration URL - if provided, displays this image */
21
+ this.illustrationUrl = '';
22
+ }
23
+ render() {
24
+ return (h(Host, { key: '4799cecb74e6ed366615d0f6431b801b697104c1' }, h("div", { key: '5ec289c687484ea343bbe235b8e5ff275834bb1c', class: "cta-section" }, h("div", { key: 'd4ace70049c68d389e4ad6bfa0c33df90e40228c', class: "cta-section__container" }, h("div", { key: '44bff410dfa32e62d71d07a083ac796d8f2c4701', class: "cta-section__wave-bg" }, h("svg", { key: 'eaaa575510c3c9eb0151c3a9b429b05d63f091d2', viewBox: "0 0 1200 400", preserveAspectRatio: "none", class: "cta-section__wave-svg" }, h("ellipse", { key: '3efdf781f5d90f3a6171ce89d05b47d031dba87d', cx: "900", cy: "450", rx: "600", ry: "350", fill: "rgba(255,255,255,0.2)" }), h("ellipse", { key: '1b8bb8fe8629e8c1a38401a437f9ebc81448fd89', cx: "1000", cy: "500", rx: "400", ry: "250", fill: "rgba(255,255,255,0.15)" }))), h("div", { key: 'd5b18a8738c88cebe47501bbd3f4f8cb21e5b570', class: "cta-section__illustration" }, this.illustrationUrl ? (h("img", { src: this.illustrationUrl, alt: "", class: "cta-section__illustration-img" })) : (h("slot", { name: "illustration" }))), h("div", { key: 'a1aaf9056f0f4efbc1e8932c2bd7499c2109fe53', class: "cta-section__content" }, h("h2", { key: '6615663e27005aceab17e23cfc393b4d34c2eeec', class: "cta-section__heading" }, this.heading), h("p", { key: '13cd23b082ff90d2aaefcded32695ab64c0be51a', class: "cta-section__description" }, this.description), h("div", { key: '60c1b7e486fabc5bca71e1d4ec6e7ef5a88250e7', class: "cta-section__buttons" }, h("a", { key: '8b38088923d1b558bf9600957c36ea21468ea4f7', href: this.primaryButtonUrl, class: "cta-section__button cta-section__button--primary" }, this.primaryButtonText), h("a", { key: '9f38363587db152fb6cc04f0349ba4e7a8eac125', href: this.secondaryButtonUrl, class: "cta-section__button cta-section__button--secondary" }, this.secondaryButtonText)))))));
25
+ }
26
+ };
27
+ AfCtaSection.style = afCtaSectionCss;
28
+
29
+ export { AfCtaSection as af_cta_section };
30
+ //# sourceMappingURL=af-cta-section.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-cta-section.entry.js","sources":["src/components/af-cta-section/af-cta-section.css?tag=af-cta-section&encapsulation=scoped","src/components/af-cta-section/af-cta-section.tsx"],"sourcesContent":[".cta-section {\n padding: 32px;\n}\n\n.cta-section__container {\n position: relative;\n display: flex;\n align-items: center;\n gap: 48px;\n padding: 64px 80px;\n /* Match the exact background color from affinda.com */\n background-color: #D6E8E4;\n border-radius: 24px;\n overflow: hidden;\n max-width: 1200px;\n margin: 0 auto;\n}\n\n/* Decorative wave background */\n.cta-section__wave-bg {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n overflow: hidden;\n}\n\n.cta-section__wave-svg {\n position: absolute;\n bottom: -50px;\n right: -50px;\n width: 120%;\n height: 120%;\n opacity: 0.8;\n}\n\n/* Illustration container */\n.cta-section__illustration {\n position: relative;\n z-index: 1;\n flex-shrink: 0;\n width: 200px;\n height: 200px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.cta-section__illustration-img {\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.cta-section__illustration svg {\n width: 100%;\n height: 100%;\n}\n\n/* Content area */\n.cta-section__content {\n position: relative;\n z-index: 1;\n flex: 1;\n}\n\n.cta-section__heading {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n font-size: clamp(28px, 4vw, 40px);\n line-height: 1.1;\n letter-spacing: -0.02em;\n color: var(--colour-brand-inkwell, #14343b);\n margin: 0 0 12px 0;\n /* Remove italic - use normal style */\n font-style: normal;\n}\n\n.cta-section__description {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n color: var(--colour-brand-inkwell, #14343b);\n margin: 0 0 24px 0;\n opacity: 0.85;\n}\n\n.cta-section__buttons {\n display: flex;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.cta-section__button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 12px 24px;\n border-radius: 100px;\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 500;\n font-size: 16px;\n line-height: 1.25;\n text-decoration: none;\n transition: all 0.2s ease;\n cursor: pointer;\n}\n\n/* Primary button - matches other CTA buttons on the page */\n.cta-section__button--primary {\n background-color: var(--colour-brand-teal, #6ECCC8);\n color: var(--colour-brand-inkwell, #14343b);\n border: 2px solid var(--colour-brand-inkwell, #14343b);\n}\n\n.cta-section__button--primary:hover {\n background-color: #5BBBB7;\n}\n\n/* Secondary button - white with black outline */\n.cta-section__button--secondary {\n background-color: white;\n color: var(--colour-brand-inkwell, #14343b);\n border: 2px solid var(--colour-brand-inkwell, #14343b);\n}\n\n.cta-section__button--secondary:hover {\n background-color: var(--colour-brand-inkwell, #14343b);\n color: white;\n}\n\n/* Responsive adjustments */\n@media (max-width: 768px) {\n .cta-section__container {\n flex-direction: column;\n padding: 48px 32px;\n gap: 32px;\n text-align: center;\n }\n\n .cta-section__illustration {\n width: 150px;\n height: 150px;\n }\n\n .cta-section__buttons {\n justify-content: center;\n }\n\n .cta-section__heading {\n font-size: 28px;\n }\n}\n\n@media (max-width: 480px) {\n .cta-section {\n padding: 16px;\n }\n\n .cta-section__container {\n padding: 32px 24px;\n }\n\n .cta-section__buttons {\n flex-direction: column;\n width: 100%;\n }\n\n .cta-section__button {\n width: 100%;\n }\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n/**\n * Call-to-action section component with illustration and decorative background\n * Styled to match the affinda.com \"See what our AI agents can do for you\" section\n */\n@Component({\n tag: 'af-cta-section',\n styleUrl: 'af-cta-section.css',\n shadow: false,\n scoped: true,\n})\nexport class AfCtaSection {\n /** Section heading */\n @Prop() heading: string = 'See what our AI agents can do for you';\n\n /** Section description */\n @Prop() description: string = 'Upload your documents and watch our AI agents get to work.';\n\n /** Primary button text */\n @Prop() primaryButtonText: string = 'Try for free';\n\n /** Primary button URL */\n @Prop() primaryButtonUrl: string = '#';\n\n /** Secondary button text */\n @Prop() secondaryButtonText: string = 'Talk to us';\n\n /** Secondary button URL */\n @Prop() secondaryButtonUrl: string = '#';\n\n /** Illustration URL - if provided, displays this image */\n @Prop() illustrationUrl: string = '';\n\n render() {\n return (\n <Host>\n <div class=\"cta-section\">\n <div class=\"cta-section__container\">\n {/* Decorative wave background */}\n <div class=\"cta-section__wave-bg\">\n <svg viewBox=\"0 0 1200 400\" preserveAspectRatio=\"none\" class=\"cta-section__wave-svg\">\n {/* Large curved wave */}\n <ellipse \n cx=\"900\" \n cy=\"450\" \n rx=\"600\" \n ry=\"350\" \n fill=\"rgba(255,255,255,0.2)\"\n />\n {/* Smaller accent curve */}\n <ellipse \n cx=\"1000\" \n cy=\"500\" \n rx=\"400\" \n ry=\"250\" \n fill=\"rgba(255,255,255,0.15)\"\n />\n </svg>\n </div>\n\n {/* Illustration */}\n <div class=\"cta-section__illustration\">\n {this.illustrationUrl ? (\n <img src={this.illustrationUrl} alt=\"\" class=\"cta-section__illustration-img\" />\n ) : (\n <slot name=\"illustration\"></slot>\n )}\n </div>\n\n {/* Content */}\n <div class=\"cta-section__content\">\n <h2 class=\"cta-section__heading\">{this.heading}</h2>\n <p class=\"cta-section__description\">{this.description}</p>\n <div class=\"cta-section__buttons\">\n <a href={this.primaryButtonUrl} class=\"cta-section__button cta-section__button--primary\">\n {this.primaryButtonText}\n </a>\n <a href={this.secondaryButtonUrl} class=\"cta-section__button cta-section__button--secondary\">\n {this.secondaryButtonText}\n </a>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,eAAe,GAAG,+4FAA+4F;;MCY15F,YAAY,GAAA,MAAA;AANzB,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAQU,QAAA,IAAO,CAAA,OAAA,GAAW,uCAAuC;;AAGzD,QAAA,IAAW,CAAA,WAAA,GAAW,4DAA4D;;AAGlF,QAAA,IAAiB,CAAA,iBAAA,GAAW,cAAc;;AAG1C,QAAA,IAAgB,CAAA,gBAAA,GAAW,GAAG;;AAG9B,QAAA,IAAmB,CAAA,mBAAA,GAAW,YAAY;;AAG1C,QAAA,IAAkB,CAAA,kBAAA,GAAW,GAAG;;AAGhC,QAAA,IAAe,CAAA,eAAA,GAAW,EAAE;AAwDrC;IAtDC,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,EAAA,EACtB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,wBAAwB,EAAA,EAEjC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAC,cAAc,EAAC,mBAAmB,EAAC,MAAM,EAAC,KAAK,EAAC,uBAAuB,EAAA,EAElF,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,EAAE,EAAC,KAAK,EACR,EAAE,EAAC,KAAK,EACR,EAAE,EAAC,KAAK,EACR,EAAE,EAAC,KAAK,EACR,IAAI,EAAC,uBAAuB,EAC5B,CAAA,EAEF,CACE,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,MAAM,EACT,EAAE,EAAC,KAAK,EACR,EAAE,EAAC,KAAK,EACR,EAAE,EAAC,KAAK,EACR,IAAI,EAAC,wBAAwB,EAC7B,CAAA,CACE,CACF,EAGN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,2BAA2B,EACnC,EAAA,IAAI,CAAC,eAAe,IACnB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAC,EAAE,EAAC,KAAK,EAAC,+BAA+B,GAAG,KAE/E,CAAM,CAAA,MAAA,EAAA,EAAA,IAAI,EAAC,cAAc,EAAA,CAAQ,CAClC,CACG,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/B,CAAA,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAI,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,OAAO,CAAM,EACpD,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAG,KAAK,EAAC,0BAA0B,IAAE,IAAI,CAAC,WAAW,CAAK,EAC1D,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/B,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAG,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAC,kDAAkD,EAAA,EACrF,IAAI,CAAC,iBAAiB,CACrB,EACJ,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,EAAC,oDAAoD,EAAA,EACzF,IAAI,CAAC,mBAAmB,CACvB,CACA,CACF,CACF,CACF,CACD;;;;;;;"}
@@ -0,0 +1,106 @@
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-DI7b0bCy.js';
2
+
3
+ const afFeatureAccordionCss = ".sc-af-feature-accordion-h{display:block;width:100%}.feature-accordion.sc-af-feature-accordion{background-color:var(--colour-background-level1, #E8EFED);padding:80px 0}.feature-accordion__container.sc-af-feature-accordion{max-width:1280px;margin:0 auto;padding:0 40px}.feature-accordion__heading.sc-af-feature-accordion{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:400;font-size:clamp(36px, 5vw, 52px);line-height:1.05;letter-spacing:-0.025em;color:var(--colour-brand-inkwell, #14343B);margin:0 0 56px 0}.feature-accordion__content.sc-af-feature-accordion{display:flex;gap:48px}.feature-accordion__list.sc-af-feature-accordion{display:flex;flex-direction:column;flex:1;min-width:0}.accordion-item.sc-af-feature-accordion{border-bottom:1px solid rgba(20, 52, 59, 0.12)}.accordion-item.sc-af-feature-accordion:first-child{border-top:1px solid rgba(20, 52, 59, 0.12)}.accordion-item__header.sc-af-feature-accordion{display:flex;align-items:center;justify-content:space-between;width:100%;padding:24px 0;background:none;border:none;cursor:pointer;text-align:left;gap:16px}.accordion-item__header.sc-af-feature-accordion:hover .accordion-item__title.sc-af-feature-accordion{color:var(--colour-brand-inkwell, #14343B)}.accordion-item__title.sc-af-feature-accordion{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:500;font-size:22px;line-height:1.25;color:var(--colour-brand-inkwell, #14343B);margin:0;flex:1;transition:color 0.2s ease}.accordion-item.sc-af-feature-accordion:not(.accordion-item--expanded) .accordion-item__title.sc-af-feature-accordion{color:rgba(20, 52, 59, 0.7)}.accordion-item__icon.sc-af-feature-accordion{flex-shrink:0;width:24px;height:24px;color:var(--colour-brand-inkwell, #14343B);transition:transform 0.2s ease}.accordion-item.sc-af-feature-accordion:not(.accordion-item--expanded) .accordion-item__icon.sc-af-feature-accordion{color:rgba(20, 52, 59, 0.5)}.accordion-item__content.sc-af-feature-accordion{overflow:hidden;transition:max-height 0.3s ease, opacity 0.3s ease}.accordion-item__description.sc-af-feature-accordion{font-family:var(--typography-primaryfont, 'NeuSans', sans-serif);font-weight:400;font-size:17px;line-height:1.6;color:rgba(20, 52, 59, 0.85);margin:0 0 20px 0;padding-right:40px}.accordion-item__timer-track.sc-af-feature-accordion{height:3px;background-color:rgba(20, 52, 59, 0.1);border-radius:2px;margin-bottom:8px;overflow:hidden;display:flex;justify-content:flex-start}.accordion-item__timer-progress.sc-af-feature-accordion{height:100%;background-color:var(--colour-brand-teal, #00B5AD);border-radius:2px;transition:width 0.05s linear}.feature-accordion__image-container.sc-af-feature-accordion{display:flex;align-items:center;justify-content:center;background-color:#B8C9C5;border-radius:20px;overflow:hidden;flex:1;min-width:0}.feature-accordion__image-wrapper.sc-af-feature-accordion{display:flex;align-items:center;justify-content:center;width:100%;padding:32px}.feature-accordion__image.sc-af-feature-accordion{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 8px 32px rgba(0, 0, 0, 0.12)}.feature-accordion__image-placeholder.sc-af-feature-accordion{width:100%;height:100%;display:flex;align-items:center;justify-content:center}@media (max-width: 1024px){.feature-accordion.sc-af-feature-accordion{padding:60px 0}.feature-accordion__container.sc-af-feature-accordion{padding:0 24px}.feature-accordion__content.sc-af-feature-accordion{gap:32px}.feature-accordion__heading.sc-af-feature-accordion{margin-bottom:40px}.accordion-item__title.sc-af-feature-accordion{font-size:20px}}@media (max-width: 768px){.feature-accordion.sc-af-feature-accordion{padding:48px 0}.feature-accordion__content.sc-af-feature-accordion{flex-direction:column;gap:32px}.feature-accordion__image-container.sc-af-feature-accordion{order:-1;min-height:280px;flex:none}.feature-accordion__list.sc-af-feature-accordion{flex:none}.accordion-item__title.sc-af-feature-accordion{font-size:18px}.accordion-item__description.sc-af-feature-accordion{font-size:15px;padding-right:0}}";
4
+
5
+ const AfFeatureAccordion = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ /** Section heading */
9
+ this.heading = 'Give AI agents your paperwork';
10
+ /** JSON string of accordion items */
11
+ this.items = '[]';
12
+ /** Auto-cycle interval in milliseconds (default: 6000ms = 6 seconds) */
13
+ this.cycleInterval = 6000;
14
+ /** Whether auto-cycling is enabled */
15
+ this.autoCycle = true;
16
+ /** Currently expanded item index */
17
+ this.expandedIndex = 0;
18
+ /** Progress of current timer (0-100) */
19
+ this.timerProgress = 100;
20
+ this.progressTimer = null;
21
+ this.progressStartTime = 0;
22
+ }
23
+ componentDidLoad() {
24
+ if (this.autoCycle) {
25
+ this.startCycling();
26
+ }
27
+ }
28
+ disconnectedCallback() {
29
+ this.stopCycling();
30
+ }
31
+ handleAutoCycleChange(newValue) {
32
+ if (newValue) {
33
+ this.startCycling();
34
+ }
35
+ else {
36
+ this.stopCycling();
37
+ }
38
+ }
39
+ getItems() {
40
+ try {
41
+ return JSON.parse(this.items);
42
+ }
43
+ catch {
44
+ return [];
45
+ }
46
+ }
47
+ startCycling() {
48
+ this.stopCycling();
49
+ this.progressStartTime = Date.now();
50
+ this.timerProgress = 100;
51
+ // Progress animation frame
52
+ const updateProgress = () => {
53
+ const elapsed = Date.now() - this.progressStartTime;
54
+ const remaining = this.cycleInterval - elapsed;
55
+ if (remaining <= 0) {
56
+ this.moveToNextItem();
57
+ }
58
+ else {
59
+ this.timerProgress = (remaining / this.cycleInterval) * 100;
60
+ this.progressTimer = requestAnimationFrame(updateProgress);
61
+ }
62
+ };
63
+ this.progressTimer = requestAnimationFrame(updateProgress);
64
+ }
65
+ stopCycling() {
66
+ if (this.progressTimer) {
67
+ cancelAnimationFrame(this.progressTimer);
68
+ this.progressTimer = null;
69
+ }
70
+ }
71
+ moveToNextItem() {
72
+ const items = this.getItems();
73
+ if (items.length === 0)
74
+ return;
75
+ this.expandedIndex = (this.expandedIndex + 1) % items.length;
76
+ // Restart the cycling timer for the new item
77
+ this.startCycling();
78
+ }
79
+ handleItemClick(index) {
80
+ // Reset timer when user clicks
81
+ this.expandedIndex = index;
82
+ // Restart the cycling timer for the clicked item
83
+ if (this.autoCycle) {
84
+ this.startCycling();
85
+ }
86
+ }
87
+ render() {
88
+ const items = this.getItems();
89
+ const currentItem = items[this.expandedIndex];
90
+ return (h(Host, { key: '7825aa3ce7bc01d0a2ca8d9bda5b8198aa76271c' }, h("div", { key: '0f6256791b7f0df695b73fbbfac13062441efe5d', class: "feature-accordion" }, h("div", { key: '325051f2986b59513be4911ebb74ea07e06d51aa', class: "feature-accordion__container" }, h("h2", { key: '03d56b844bb0683030cf180ad73c861411be6d97', class: "feature-accordion__heading" }, this.heading), h("div", { key: '3016a08061e853af3886c147f1cdead2e275da47', class: "feature-accordion__content" }, h("div", { key: '2810385a3c67d49dc4a7c5516aa88764c31cea38', class: "feature-accordion__list" }, items.map((item, index) => (h("div", { class: {
91
+ 'accordion-item': true,
92
+ 'accordion-item--expanded': this.expandedIndex === index
93
+ }, key: index }, h("button", { class: "accordion-item__header", onClick: () => this.handleItemClick(index), "aria-expanded": this.expandedIndex === index ? 'true' : 'false' }, h("h4", { class: "accordion-item__title" }, item.title), h("span", { class: "accordion-item__icon" }, this.expandedIndex === index ? (h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M5 12H19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" }))) : (h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M12 5V19M5 12H19", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" }))))), h("div", { class: "accordion-item__content", style: {
94
+ maxHeight: this.expandedIndex === index ? '200px' : '0',
95
+ opacity: this.expandedIndex === index ? '1' : '0'
96
+ } }, h("p", { class: "accordion-item__description" }, item.description), this.expandedIndex === index && this.autoCycle && (h("div", { class: "accordion-item__timer-track" }, h("div", { class: "accordion-item__timer-progress", style: { width: `${this.timerProgress}%` } })))))))), h("div", { key: '91407477630dfe4287aa84750a3ec344d4d929fe', class: "feature-accordion__image-container" }, h("div", { key: '5a5f537b6e38f250ed821e0dfaecf059e88e4251', class: "feature-accordion__image-wrapper" }, currentItem?.imageUrl && (h("img", { key: 'e974ce7cc07d28768447a106eeb7f714e93069a9', src: currentItem.imageUrl, alt: currentItem.imageAlt || currentItem.title, class: "feature-accordion__image" })), !currentItem?.imageUrl && (h("div", { key: '4e0e981e30d9ad3a10048715f71681dfacff76b4', class: "feature-accordion__image-placeholder" }, h("slot", { key: 'c98c9302c6fdd0db75b63ae20a56273bf64638b6', name: "image" }))))))))));
97
+ }
98
+ get el() { return getElement(this); }
99
+ static get watchers() { return {
100
+ "autoCycle": ["handleAutoCycleChange"]
101
+ }; }
102
+ };
103
+ AfFeatureAccordion.style = afFeatureAccordionCss;
104
+
105
+ export { AfFeatureAccordion as af_feature_accordion };
106
+ //# sourceMappingURL=af-feature-accordion.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"af-feature-accordion.entry.js","sources":["src/components/af-feature-accordion/af-feature-accordion.css?tag=af-feature-accordion&encapsulation=scoped","src/components/af-feature-accordion/af-feature-accordion.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n\n.feature-accordion {\n background-color: var(--colour-background-level1, #E8EFED);\n padding: 80px 0;\n}\n\n.feature-accordion__container {\n max-width: 1280px;\n margin: 0 auto;\n padding: 0 40px;\n}\n\n.feature-accordion__heading {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n font-size: clamp(36px, 5vw, 52px);\n line-height: 1.05;\n letter-spacing: -0.025em;\n color: var(--colour-brand-inkwell, #14343B);\n margin: 0 0 56px 0;\n}\n\n.feature-accordion__content {\n display: flex;\n gap: 48px;\n}\n\n/* Accordion List */\n.feature-accordion__list {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n}\n\n/* Accordion Item */\n.accordion-item {\n border-bottom: 1px solid rgba(20, 52, 59, 0.12);\n}\n\n.accordion-item:first-child {\n border-top: 1px solid rgba(20, 52, 59, 0.12);\n}\n\n.accordion-item__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 24px 0;\n background: none;\n border: none;\n cursor: pointer;\n text-align: left;\n gap: 16px;\n}\n\n.accordion-item__header:hover .accordion-item__title {\n color: var(--colour-brand-inkwell, #14343B);\n}\n\n.accordion-item__title {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 500;\n font-size: 22px;\n line-height: 1.25;\n color: var(--colour-brand-inkwell, #14343B);\n margin: 0;\n flex: 1;\n transition: color 0.2s ease;\n}\n\n/* Collapsed items have lighter text */\n.accordion-item:not(.accordion-item--expanded) .accordion-item__title {\n color: rgba(20, 52, 59, 0.7);\n}\n\n.accordion-item__icon {\n flex-shrink: 0;\n width: 24px;\n height: 24px;\n color: var(--colour-brand-inkwell, #14343B);\n transition: transform 0.2s ease;\n}\n\n.accordion-item:not(.accordion-item--expanded) .accordion-item__icon {\n color: rgba(20, 52, 59, 0.5);\n}\n\n.accordion-item__content {\n overflow: hidden;\n transition: max-height 0.3s ease, opacity 0.3s ease;\n}\n\n.accordion-item__description {\n font-family: var(--typography-primaryfont, 'NeuSans', sans-serif);\n font-weight: 400;\n font-size: 17px;\n line-height: 1.6;\n color: rgba(20, 52, 59, 0.85);\n margin: 0 0 20px 0;\n padding-right: 40px;\n}\n\n/* Timer track - the progress bar at the bottom of expanded items */\n.accordion-item__timer-track {\n height: 3px;\n background-color: rgba(20, 52, 59, 0.1);\n border-radius: 2px;\n margin-bottom: 8px;\n overflow: hidden;\n /* Right-align the progress bar so it drains from right to left */\n display: flex;\n justify-content: flex-start;\n}\n\n.accordion-item__timer-progress {\n height: 100%;\n background-color: var(--colour-brand-teal, #00B5AD);\n border-radius: 2px;\n /* Smooth animation for progress */\n transition: width 0.05s linear;\n}\n\n/* Image Container - stretches full height to align with accordion */\n.feature-accordion__image-container {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #B8C9C5;\n border-radius: 20px;\n overflow: hidden;\n /* Take up remaining space and stretch full height */\n flex: 1;\n min-width: 0;\n}\n\n.feature-accordion__image-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n padding: 32px;\n}\n\n.feature-accordion__image {\n max-width: 100%;\n max-height: 100%;\n width: auto;\n height: auto;\n object-fit: contain;\n border-radius: 12px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);\n}\n\n.feature-accordion__image-placeholder {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Tablet */\n@media (max-width: 1024px) {\n .feature-accordion {\n padding: 60px 0;\n }\n\n .feature-accordion__container {\n padding: 0 24px;\n }\n\n .feature-accordion__content {\n gap: 32px;\n }\n\n .feature-accordion__heading {\n margin-bottom: 40px;\n }\n\n .accordion-item__title {\n font-size: 20px;\n }\n}\n\n/* Mobile */\n@media (max-width: 768px) {\n .feature-accordion {\n padding: 48px 0;\n }\n\n .feature-accordion__content {\n flex-direction: column;\n gap: 32px;\n }\n\n .feature-accordion__image-container {\n order: -1;\n min-height: 280px;\n flex: none;\n }\n\n .feature-accordion__list {\n flex: none;\n }\n\n .accordion-item__title {\n font-size: 18px;\n }\n\n .accordion-item__description {\n font-size: 15px;\n padding-right: 0;\n }\n}\n","import { Component, h, Host, Prop, State, Element, Watch } from '@stencil/core';\n\nexport interface FeatureAccordionItem {\n title: string;\n description: string;\n imageUrl?: string;\n imageAlt?: string;\n}\n\n/**\n * Feature accordion component with expandable items and accompanying image\n * Used for showcasing product features with visual examples\n * Features auto-cycling through items with a progress timer\n */\n@Component({\n tag: 'af-feature-accordion',\n styleUrl: 'af-feature-accordion.css',\n shadow: false,\n scoped: true,\n})\nexport class AfFeatureAccordion {\n @Element() el!: HTMLElement;\n\n /** Section heading */\n @Prop() heading: string = 'Give AI agents your paperwork';\n\n /** JSON string of accordion items */\n @Prop() items: string = '[]';\n\n /** Auto-cycle interval in milliseconds (default: 6000ms = 6 seconds) */\n @Prop() cycleInterval: number = 6000;\n\n /** Whether auto-cycling is enabled */\n @Prop() autoCycle: boolean = true;\n\n /** Currently expanded item index */\n @State() expandedIndex: number = 0;\n\n /** Progress of current timer (0-100) */\n @State() timerProgress: number = 100;\n\n private progressTimer: number | null = null;\n private progressStartTime: number = 0;\n\n componentDidLoad() {\n if (this.autoCycle) {\n this.startCycling();\n }\n }\n\n disconnectedCallback() {\n this.stopCycling();\n }\n\n @Watch('autoCycle')\n handleAutoCycleChange(newValue: boolean) {\n if (newValue) {\n this.startCycling();\n } else {\n this.stopCycling();\n }\n }\n\n private getItems(): FeatureAccordionItem[] {\n try {\n return JSON.parse(this.items);\n } catch {\n return [];\n }\n }\n\n private startCycling() {\n this.stopCycling();\n this.progressStartTime = Date.now();\n this.timerProgress = 100;\n \n // Progress animation frame\n const updateProgress = () => {\n const elapsed = Date.now() - this.progressStartTime;\n const remaining = this.cycleInterval - elapsed;\n \n if (remaining <= 0) {\n this.moveToNextItem();\n } else {\n this.timerProgress = (remaining / this.cycleInterval) * 100;\n this.progressTimer = requestAnimationFrame(updateProgress);\n }\n };\n \n this.progressTimer = requestAnimationFrame(updateProgress);\n }\n\n private stopCycling() {\n if (this.progressTimer) {\n cancelAnimationFrame(this.progressTimer);\n this.progressTimer = null;\n }\n }\n\n private moveToNextItem() {\n const items = this.getItems();\n if (items.length === 0) return;\n \n this.expandedIndex = (this.expandedIndex + 1) % items.length;\n // Restart the cycling timer for the new item\n this.startCycling();\n }\n\n private handleItemClick(index: number) {\n // Reset timer when user clicks\n this.expandedIndex = index;\n // Restart the cycling timer for the clicked item\n if (this.autoCycle) {\n this.startCycling();\n }\n }\n\n render() {\n const items = this.getItems();\n const currentItem = items[this.expandedIndex];\n\n return (\n <Host>\n <div class=\"feature-accordion\">\n <div class=\"feature-accordion__container\">\n <h2 class=\"feature-accordion__heading\">{this.heading}</h2>\n \n <div class=\"feature-accordion__content\">\n {/* Left side - Accordion */}\n <div class=\"feature-accordion__list\">\n {items.map((item, index) => (\n <div \n class={{\n 'accordion-item': true,\n 'accordion-item--expanded': this.expandedIndex === index\n }}\n key={index}\n >\n <button \n class=\"accordion-item__header\"\n onClick={() => this.handleItemClick(index)}\n aria-expanded={this.expandedIndex === index ? 'true' : 'false'}\n >\n <h4 class=\"accordion-item__title\">{item.title}</h4>\n <span class=\"accordion-item__icon\">\n {this.expandedIndex === index ? (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5 12H19\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"/>\n </svg>\n ) : (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 5V19M5 12H19\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"/>\n </svg>\n )}\n </span>\n </button>\n <div \n class=\"accordion-item__content\"\n style={{ \n maxHeight: this.expandedIndex === index ? '200px' : '0',\n opacity: this.expandedIndex === index ? '1' : '0'\n }}\n >\n <p class=\"accordion-item__description\">{item.description}</p>\n {this.expandedIndex === index && this.autoCycle && (\n <div class=\"accordion-item__timer-track\">\n <div \n class=\"accordion-item__timer-progress\"\n style={{ width: `${this.timerProgress}%` }}\n ></div>\n </div>\n )}\n </div>\n </div>\n ))}\n </div>\n\n {/* Right side - Image */}\n <div class=\"feature-accordion__image-container\">\n <div class=\"feature-accordion__image-wrapper\">\n {currentItem?.imageUrl && (\n <img \n src={currentItem.imageUrl} \n alt={currentItem.imageAlt || currentItem.title}\n class=\"feature-accordion__image\"\n />\n )}\n {!currentItem?.imageUrl && (\n <div class=\"feature-accordion__image-placeholder\">\n <slot name=\"image\"></slot>\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"names":[],"mappings":";;AAAA,MAAM,qBAAqB,GAAG,0hIAA0hI;;MCoB3iI,kBAAkB,GAAA,MAAA;AAN/B,IAAA,WAAA,CAAA,OAAA,EAAA;;;AAUU,QAAA,IAAO,CAAA,OAAA,GAAW,+BAA+B;;AAGjD,QAAA,IAAK,CAAA,KAAA,GAAW,IAAI;;AAGpB,QAAA,IAAa,CAAA,aAAA,GAAW,IAAI;;AAG5B,QAAA,IAAS,CAAA,SAAA,GAAY,IAAI;;AAGxB,QAAA,IAAa,CAAA,aAAA,GAAW,CAAC;;AAGzB,QAAA,IAAa,CAAA,aAAA,GAAW,GAAG;AAE5B,QAAA,IAAa,CAAA,aAAA,GAAkB,IAAI;AACnC,QAAA,IAAiB,CAAA,iBAAA,GAAW,CAAC;AA8JtC;IA5JC,gBAAgB,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,YAAY,EAAE;;;IAIvB,oBAAoB,GAAA;QAClB,IAAI,CAAC,WAAW,EAAE;;AAIpB,IAAA,qBAAqB,CAAC,QAAiB,EAAA;QACrC,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,YAAY,EAAE;;aACd;YACL,IAAI,CAAC,WAAW,EAAE;;;IAId,QAAQ,GAAA;AACd,QAAA,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;;AAC7B,QAAA,MAAM;AACN,YAAA,OAAO,EAAE;;;IAIL,YAAY,GAAA;QAClB,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE;AACnC,QAAA,IAAI,CAAC,aAAa,GAAG,GAAG;;QAGxB,MAAM,cAAc,GAAG,MAAK;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB;AACnD,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,OAAO;AAE9C,YAAA,IAAI,SAAS,IAAI,CAAC,EAAE;gBAClB,IAAI,CAAC,cAAc,EAAE;;iBAChB;AACL,gBAAA,IAAI,CAAC,aAAa,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,GAAG;AAC3D,gBAAA,IAAI,CAAC,aAAa,GAAG,qBAAqB,CAAC,cAAc,CAAC;;AAE9D,SAAC;AAED,QAAA,IAAI,CAAC,aAAa,GAAG,qBAAqB,CAAC,cAAc,CAAC;;IAGpD,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC;AACxC,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI;;;IAIrB,cAAc,GAAA;AACpB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;AAC7B,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE;AAExB,QAAA,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM;;QAE5D,IAAI,CAAC,YAAY,EAAE;;AAGb,IAAA,eAAe,CAAC,KAAa,EAAA;;AAEnC,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;;AAE1B,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,YAAY,EAAE;;;IAIvB,MAAM,GAAA;AACJ,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;QAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;QAE7C,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,mBAAmB,EAAA,EAC5B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,8BAA8B,EAAA,EACvC,CAAA,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAI,KAAK,EAAC,4BAA4B,IAAE,IAAI,CAAC,OAAO,CAAM,EAE1D,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,4BAA4B,EAAA,EAErC,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,yBAAyB,IACjC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MACrB,CAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,gBAAA,gBAAgB,EAAE,IAAI;AACtB,gBAAA,0BAA0B,EAAE,IAAI,CAAC,aAAa,KAAK;aACpD,EACD,GAAG,EAAE,KAAK,EAAA,EAEV,CAAA,CAAA,QAAA,EAAA,EACE,KAAK,EAAC,wBAAwB,EAC9B,OAAO,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAA,eAAA,EAC3B,IAAI,CAAC,aAAa,KAAK,KAAK,GAAG,MAAM,GAAG,OAAO,EAAA,EAE9D,CAAA,CAAA,IAAA,EAAA,EAAI,KAAK,EAAC,uBAAuB,IAAE,IAAI,CAAC,KAAK,CAAM,EACnD,CAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAC,sBAAsB,EAAA,EAC/B,IAAI,CAAC,aAAa,KAAK,KAAK,IAC3B,WAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EAC5F,CAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,UAAU,EAAC,MAAM,EAAC,cAAc,EAAA,cAAA,EAAc,GAAG,EAAA,gBAAA,EAAgB,OAAO,EAAE,CAAA,CAC9E,KAEN,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,4BAA4B,EAAA,EAC5F,CAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,kBAAkB,EAAC,MAAM,EAAC,cAAc,EAAc,cAAA,EAAA,GAAG,oBAAgB,OAAO,EAAA,CAAE,CACtF,CACP,CACI,CACA,EACT,CAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAC,yBAAyB,EAC/B,KAAK,EAAE;AACL,gBAAA,SAAS,EAAE,IAAI,CAAC,aAAa,KAAK,KAAK,GAAG,OAAO,GAAG,GAAG;AACvD,gBAAA,OAAO,EAAE,IAAI,CAAC,aAAa,KAAK,KAAK,GAAG,GAAG,GAAG;AAC/C,aAAA,EAAA,EAED,CAAA,CAAA,GAAA,EAAA,EAAG,KAAK,EAAC,6BAA6B,IAAE,IAAI,CAAC,WAAW,CAAK,EAC5D,IAAI,CAAC,aAAa,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,KAC7C,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,6BAA6B,EAAA,EACtC,CACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,gCAAgC,EACtC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAG,EAAA,IAAI,CAAC,aAAa,GAAG,EAAE,EACrC,CAAA,CACH,CACP,CACG,CACF,CACP,CAAC,CACE,EAGN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,oCAAoC,EAAA,EAC7C,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,kCAAkC,EAAA,EAC1C,WAAW,EAAE,QAAQ,KACpB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,GAAG,EAAE,WAAW,CAAC,QAAQ,EACzB,GAAG,EAAE,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,KAAK,EAC9C,KAAK,EAAC,0BAA0B,EAAA,CAChC,CACH,EACA,CAAC,WAAW,EAAE,QAAQ,KACrB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sCAAsC,EAAA,EAC/C,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,OAAO,EAAA,CAAQ,CACtB,CACP,CACG,CACF,CACF,CACF,CACF,CACD;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js","sources":["src/components/af-heading/af-heading.css?tag=af-heading&encapsulation=shadow","src/components/af-heading/af-heading.tsx","src/components/af-text/af-text.css?tag=af-text&encapsulation=shadow","src/components/af-text/af-text.tsx","src/components/af-nav-item/af-nav-item.css?tag=af-nav-item&encapsulation=shadow","src/components/af-nav-item/af-nav-item.tsx","src/components/af-navbar/af-navbar.css?tag=af-navbar&encapsulation=shadow","src/components/af-navbar/af-navbar.tsx","src/components/af-logo/af-logo.css?tag=af-logo&encapsulation=shadow","src/components/af-logo/af-logo.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.heading {\n margin: 0;\n padding: 0;\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 400;\n color: var(--colour-typography-heading-primary, #14343b);\n letter-spacing: -0.02em;\n}\n\n/* Alignment */\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/* Theme variants */\n.theme-dark {\n color: var(--colour-brand-mist-green, #C6D5D1);\n}\n\n.theme-light {\n color: var(--colour-typography-heading-primary, #14343b);\n}\n\n/* Heading XL */\n.level-xl {\n font-size: 50px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-xl {\n font-size: 80px;\n }\n}\n\n/* Heading 1 */\n.level-1 {\n font-size: 38px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-1 {\n font-size: 56px;\n }\n}\n\n/* Heading 2 */\n.level-2 {\n font-size: 32px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-2 {\n font-size: 44px;\n }\n}\n\n/* Heading 3 */\n.level-3 {\n font-size: 25px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-3 {\n font-size: 34px;\n }\n}\n\n/* Heading 4 */\n.level-4 {\n font-size: 20px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-4 {\n font-size: 24px;\n line-height: 1.2;\n }\n}\n\n/* Heading 5 */\n.level-5 {\n font-size: 18px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-5 {\n font-size: 20px;\n line-height: 1.2;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\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 */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n \n /** Theme for dark backgrounds */\n @Prop() theme: 'light' | 'dark' = 'light';\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 [`theme-${this.theme}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.text {\n margin: 0;\n padding: 0;\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 400;\n color: var(--colour-typography-body-default, #14343b);\n letter-spacing: 0;\n}\n\n/* Alignment */\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/* Theme variants */\n.theme-dark {\n color: var(--colour-brand-mist-green, #C6D5D1);\n}\n\n.theme-light {\n color: var(--colour-typography-body-default, #14343b);\n}\n\n/* Body variants */\n.variant-xlarge {\n font-size: 22px;\n line-height: 28px;\n}\n\n.variant-large {\n font-size: 18px;\n line-height: 26px;\n}\n\n.variant-medium {\n font-size: 16px;\n line-height: 24px;\n}\n\n.variant-small {\n font-size: 14px;\n line-height: 20px;\n}\n\n/* Label variants - use NeuSans Book */\n.variant-label-button {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 17px;\n line-height: 20px;\n}\n\n.variant-label-tag {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 14px;\n line-height: 1;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-text',\n styleUrl: 'af-text.css',\n shadow: true\n})\nexport class AfText {\n /** Text variant */\n @Prop() variant: 'xlarge' | 'large' | 'medium' | 'small' | 'label-button' | 'label-tag' = 'medium';\n\n /** Visual alignment */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n\n /** Semantic element to render */\n @Prop() as: 'p' | 'span' | 'div' | 'label' = 'p';\n \n /** Theme for dark backgrounds */\n @Prop() theme: 'light' | 'dark' = 'light';\n\n render() {\n const Tag = this.as as any;\n\n return (\n <Tag\n class={{\n 'text': true,\n [`variant-${this.variant}`]: true,\n [`align-${this.align}`]: true,\n [`theme-${this.theme}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n\n.nav-link {\n text-decoration: none;\n color: inherit;\n display: block;\n}\n\n.nav-item {\n display: flex;\n align-items: center;\n gap: 8px;\n box-sizing: border-box;\n cursor: pointer;\n}\n\n/* Primary hierarchy - bold main navigation */\n.hierarchy-primary {\n padding: 12px;\n justify-content: center;\n}\n\n.hierarchy-primary .label-container {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n gap: 10px;\n}\n\n/* Primary variant 01 - darker */\n.hierarchy-primary.variant-01 {\n font-family: var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);\n font-size: 16px;\n font-weight: var(--font-weight-book, 500);\n line-height: 20px;\n color: var(--colour-typography-nav-item-primary, #14343b);\n}\n\n/* Primary variant 02 - lighter for light backgrounds */\n.hierarchy-primary.variant-02 {\n font-family: var(--typography-bodyfont, 'Helvetica', 'Inter', system-ui, sans-serif);\n font-size: 16px;\n font-weight: var(--font-weight-regular, 400);\n line-height: 20px;\n color: var(--colour-typography-nav-item-secondary, #2b484f);\n}\n\n/* Hover state for primary variant-01 (dark backgrounds) - underline */\n.hierarchy-primary.variant-01:hover .label-container {\n border-bottom: 1px solid currentColor;\n}\n\n/* Active state for primary variant-01 - thicker border */\n.hierarchy-primary.variant-01.active .label-container {\n border-bottom: 2px solid #8a7049;\n}\n\n/* Hover and active states for variant-02 (light backgrounds) - no border */\n.hierarchy-primary.variant-02:hover {\n background-color: rgba(20, 52, 59, 0.04);\n border-radius: 8px;\n}\n\n.hierarchy-primary.variant-02.active {\n background-color: rgba(20, 52, 59, 0.08);\n border-radius: 8px;\n}\n\n/* Secondary hierarchy - smaller sub-navigation */\n.hierarchy-secondary {\n padding: 4px 0;\n}\n\n.hierarchy-secondary .label-container {\n display: flex;\n align-items: center;\n flex: 1;\n min-height: 24px;\n gap: 8px;\n}\n\n/* Secondary variant 01 - medium weight */\n.hierarchy-secondary.variant-01 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n color: #14343b;\n}\n\n/* Secondary variant 02 - regular weight */\n.hierarchy-secondary.variant-02 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n color: #2b484f;\n}\n\n/* Hover state for secondary - underline text */\n.hierarchy-secondary:hover ::slotted(*) {\n text-decoration: underline;\n}\n\n/* Mobile styles */\n@media (max-width: 767px) {\n .hierarchy-primary {\n padding: 20px 12px;\n border-bottom: 1px solid #e8eeed;\n width: 100%;\n }\n\n .hierarchy-primary .label-container {\n flex: 1;\n justify-content: flex-start;\n }\n\n .hierarchy-primary.variant-01 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n }\n\n .hierarchy-primary.variant-02 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n color: #60767b;\n }\n}\n\n/* Icon sizing */\n::slotted([slot=\"icon-left\"]),\n::slotted([slot=\"icon-right\"]) {\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n}\n\n.hierarchy-secondary ::slotted([slot=\"icon-right\"]) {\n width: 20px;\n height: 20px;\n}\n","import { Component, h, Prop, Host } from '@stencil/core';\n\n/**\n * A generic navigation item component that can be used in navigation bars, menus, and sidebars.\n * Supports multiple hierarchy levels, variants, and states (active, hover).\n */\n@Component({\n tag: 'af-nav-item',\n styleUrl: 'af-nav-item.css',\n shadow: true\n})\nexport class AfNavItem {\n /**\n * Visual hierarchy level of the navigation item\n * - 'primary': Bold, main navigation (larger text, prominent styling)\n * - 'secondary': Lighter, sub-navigation (smaller text, subtle styling)\n */\n @Prop() hierarchy: 'primary' | 'secondary' = 'primary';\n\n /**\n * Visual variant within the hierarchy level\n * - '01': Darker/more prominent styling\n * - '02': Lighter/more subtle styling\n */\n @Prop() variant: '01' | '02' = '01';\n\n /**\n * URL to navigate to when clicked\n */\n @Prop() href?: string;\n\n /**\n * Whether this nav item is currently active/selected\n */\n @Prop() active: boolean = false;\n\n render() {\n const classes = {\n 'nav-item': true,\n [`hierarchy-${this.hierarchy}`]: true,\n [`variant-${this.variant}`]: true,\n 'active': this.active\n };\n\n const content = (\n <div class={classes}>\n <slot name=\"icon-left\"></slot>\n <div class=\"label-container\">\n <slot></slot>\n </div>\n <slot name=\"icon-right\"></slot>\n </div>\n );\n\n if (this.href) {\n return (\n <Host>\n <a href={this.href} class=\"nav-link\">\n {content}\n </a>\n </Host>\n );\n }\n\n return <Host>{content}</Host>;\n }\n}\n",":host {\n display: block;\n width: 100%;\n position: absolute;\n top: 32px;\n left: 0;\n right: 0;\n z-index: 10;\n}\n\n.navbar-container {\n padding: 0 80px;\n box-sizing: border-box;\n position: relative;\n}\n\n.navbar {\n background: var(--colour-background-white, #ffffff);\n border-radius: 9999px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 8px 8px 40px;\n box-sizing: border-box;\n}\n\n/* Left section */\n.navbar-left {\n display: flex;\n align-items: center;\n gap: 32px;\n}\n\n.logo {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n\n/* Mobile menu toggle button */\n.mobile-menu-toggle {\n display: none;\n background: none;\n border: none;\n padding: 8px;\n cursor: pointer;\n color: var(--colour-brand-inkwell, #14343b);\n margin-left: auto;\n}\n\n.mobile-menu-toggle svg {\n display: block;\n}\n\n.nav-links {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n/* Right section */\n.navbar-right {\n display: flex;\n align-items: center;\n gap: 20px;\n}\n\n.nav-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.nav-button {\n display: flex;\n align-items: center;\n}\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .navbar-container {\n padding: 24px 40px 0;\n }\n\n .navbar-left {\n gap: 24px;\n }\n\n .nav-links {\n gap: 4px;\n }\n}\n\n/* Mobile adjustments */\n@media (max-width: 767px) {\n .navbar-container {\n padding: 16px 16px 0;\n }\n\n .navbar {\n padding: 8px 16px;\n flex-direction: column;\n border-radius: 16px;\n gap: 0;\n }\n\n .navbar-left {\n width: 100%;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n }\n\n /* Show hamburger button on mobile */\n .mobile-menu-toggle {\n display: flex;\n }\n\n /* Hide nav links by default on mobile */\n .nav-links {\n display: none;\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n margin-top: 16px;\n }\n\n /* Show nav links when menu is open */\n .nav-links.mobile-open {\n display: flex;\n }\n\n /* Hide right section by default on mobile */\n .navbar-right {\n display: none;\n width: 100%;\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n margin-top: 16px;\n }\n\n /* Show right section when menu is open */\n .navbar-right.mobile-open {\n display: flex;\n }\n\n .nav-actions {\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n }\n\n .nav-button {\n width: 100%;\n }\n}\n","import { Component, State, h, Host } from '@stencil/core';\n\n/**\n * A full-width navigation bar component that provides the main site navigation.\n * Features a pill-shaped container with logo, navigation links, and action buttons.\n * Includes mobile hamburger menu.\n */\n@Component({\n tag: 'af-navbar',\n styleUrl: 'af-navbar.css',\n shadow: true\n})\nexport class AfNavbar {\n @State() mobileMenuOpen: boolean = false;\n\n private toggleMobileMenu = () => {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n };\n\n render() {\n return (\n <Host>\n <nav class=\"navbar-container\">\n <div class=\"navbar\">\n {/* Left section: Logo + Nav Links */}\n <div class=\"navbar-left\">\n <div class=\"logo\">\n <slot name=\"logo\"></slot>\n </div>\n \n {/* Hamburger menu button - mobile only */}\n <button \n class=\"mobile-menu-toggle\"\n onClick={this.toggleMobileMenu}\n aria-label=\"Toggle navigation menu\"\n aria-expanded={this.mobileMenuOpen ? 'true' : 'false'}\n >\n {this.mobileMenuOpen ? (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M18 6L6 18M6 6l12 12\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n ) : (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M3 12h18M3 6h18M3 18h18\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n )}\n </button>\n \n <div class={`nav-links ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <slot name=\"start\"></slot>\n </div>\n </div>\n\n {/* Right section: Actions + Button */}\n <div class={`navbar-right ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <div class=\"nav-actions\">\n <slot name=\"end\"></slot>\n </div>\n <div class=\"nav-button\">\n <slot name=\"button\"></slot>\n </div>\n </div>\n </div>\n </nav>\n </Host>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n\n.logo-img {\n display: block;\n height: 22px;\n width: 141px;\n object-fit: contain;\n}\n","import { Component, h, Host } from '@stencil/core';\n\n/**\n * Affinda logo component\n */\n@Component({\n tag: 'af-logo',\n styleUrl: 'af-logo.css',\n shadow: true\n})\nexport class AfLogo {\n render() {\n return (\n <Host>\n <img\n src=\"https://www.figma.com/api/mcp/asset/2cfec484-7ba9-4258-94f3-ef4d0ba1e8fe\"\n alt=\"Affinda\"\n class=\"logo-img\"\n />\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"af-heading.af-logo.af-nav-item.af-navbar.af-text.entry.js","sources":["src/components/af-heading/af-heading.css?tag=af-heading&encapsulation=shadow","src/components/af-heading/af-heading.tsx","src/components/af-text/af-text.css?tag=af-text&encapsulation=shadow","src/components/af-text/af-text.tsx","src/components/af-nav-item/af-nav-item.css?tag=af-nav-item&encapsulation=shadow","src/components/af-nav-item/af-nav-item.tsx","src/components/af-navbar/af-navbar.css?tag=af-navbar&encapsulation=shadow","src/components/af-navbar/af-navbar.tsx","src/components/af-logo/af-logo.css?tag=af-logo&encapsulation=shadow","src/components/af-logo/af-logo.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.heading {\n margin: 0;\n padding: 0;\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 400;\n color: var(--colour-typography-heading-primary, #14343b);\n letter-spacing: -0.02em;\n}\n\n/* Alignment */\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/* Theme variants */\n.theme-dark {\n color: var(--colour-brand-mist-green, #C6D5D1);\n}\n\n.theme-light {\n color: var(--colour-typography-heading-primary, #14343b);\n}\n\n/* Heading XL */\n.level-xl {\n font-size: 50px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-xl {\n font-size: 80px;\n }\n}\n\n/* Heading 1 */\n.level-1 {\n font-size: 38px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-1 {\n font-size: 56px;\n }\n}\n\n/* Heading 2 */\n.level-2 {\n font-size: 32px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-2 {\n font-size: 44px;\n }\n}\n\n/* Heading 3 */\n.level-3 {\n font-size: 25px;\n line-height: 1;\n}\n\n@media (min-width: 768px) {\n .level-3 {\n font-size: 34px;\n }\n}\n\n/* Heading 4 */\n.level-4 {\n font-size: 20px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-4 {\n font-size: 24px;\n line-height: 1.2;\n }\n}\n\n/* Heading 5 */\n.level-5 {\n font-size: 18px;\n line-height: 1.1;\n}\n\n@media (min-width: 768px) {\n .level-5 {\n font-size: 20px;\n line-height: 1.2;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\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 */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n \n /** Theme for dark backgrounds */\n @Prop() theme: 'light' | 'dark' = 'light';\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 [`theme-${this.theme}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.text {\n margin: 0;\n padding: 0;\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 400;\n color: var(--colour-typography-body-default, #14343b);\n letter-spacing: 0;\n}\n\n/* Alignment */\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/* Theme variants */\n.theme-dark {\n color: var(--colour-brand-mist-green, #C6D5D1);\n}\n\n.theme-light {\n color: var(--colour-typography-body-default, #14343b);\n}\n\n/* Body variants */\n.variant-xlarge {\n font-size: 22px;\n line-height: 28px;\n}\n\n.variant-large {\n font-size: 18px;\n line-height: 26px;\n}\n\n.variant-medium {\n font-size: 16px;\n line-height: 24px;\n}\n\n.variant-small {\n font-size: 14px;\n line-height: 20px;\n}\n\n/* Label variants - use NeuSans Book */\n.variant-label-button {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 17px;\n line-height: 20px;\n}\n\n.variant-label-tag {\n font-family: 'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;\n font-weight: 500;\n font-size: 14px;\n line-height: 1;\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'af-text',\n styleUrl: 'af-text.css',\n shadow: true\n})\nexport class AfText {\n /** Text variant */\n @Prop() variant: 'xlarge' | 'large' | 'medium' | 'small' | 'label-button' | 'label-tag' = 'medium';\n\n /** Visual alignment */\n @Prop() align: 'left' | 'center' | 'right' = 'left';\n\n /** Semantic element to render */\n @Prop() as: 'p' | 'span' | 'div' | 'label' = 'p';\n \n /** Theme for dark backgrounds */\n @Prop() theme: 'light' | 'dark' = 'light';\n\n render() {\n const Tag = this.as as any;\n\n return (\n <Tag\n class={{\n 'text': true,\n [`variant-${this.variant}`]: true,\n [`align-${this.align}`]: true,\n [`theme-${this.theme}`]: true\n }}\n part=\"base\"\n >\n <slot />\n </Tag>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n\n.nav-link {\n text-decoration: none;\n color: inherit;\n display: block;\n}\n\n.nav-item {\n display: flex;\n align-items: center;\n gap: 8px;\n box-sizing: border-box;\n cursor: pointer;\n}\n\n/* Primary hierarchy - bold main navigation */\n.hierarchy-primary {\n padding: 12px;\n justify-content: center;\n}\n\n.hierarchy-primary .label-container {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n gap: 10px;\n}\n\n/* Primary variant 01 - darker */\n.hierarchy-primary.variant-01 {\n font-family: var(--typography-headingfont, 'NeuSans', 'Inter', system-ui, sans-serif);\n font-size: 16px;\n font-weight: var(--font-weight-book, 500);\n line-height: 20px;\n color: var(--colour-typography-nav-item-primary, #14343b);\n}\n\n/* Primary variant 02 - lighter for light backgrounds */\n.hierarchy-primary.variant-02 {\n font-family: var(--typography-bodyfont, 'Helvetica', 'Inter', system-ui, sans-serif);\n font-size: 16px;\n font-weight: var(--font-weight-regular, 400);\n line-height: 20px;\n color: var(--colour-typography-nav-item-secondary, #2b484f);\n}\n\n/* Hover state for primary variant-01 (dark backgrounds) - underline */\n.hierarchy-primary.variant-01:hover .label-container {\n border-bottom: 1px solid currentColor;\n}\n\n/* Active state for primary variant-01 - thicker border */\n.hierarchy-primary.variant-01.active .label-container {\n border-bottom: 2px solid #8a7049;\n}\n\n/* Hover and active states for variant-02 (light backgrounds) - no border */\n.hierarchy-primary.variant-02:hover {\n background-color: rgba(20, 52, 59, 0.04);\n border-radius: 8px;\n}\n\n.hierarchy-primary.variant-02.active {\n background-color: rgba(20, 52, 59, 0.08);\n border-radius: 8px;\n}\n\n/* Secondary hierarchy - smaller sub-navigation */\n.hierarchy-secondary {\n padding: 4px 0;\n}\n\n.hierarchy-secondary .label-container {\n display: flex;\n align-items: center;\n flex: 1;\n min-height: 24px;\n gap: 8px;\n}\n\n/* Secondary variant 01 - medium weight */\n.hierarchy-secondary.variant-01 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n color: #14343b;\n}\n\n/* Secondary variant 02 - regular weight */\n.hierarchy-secondary.variant-02 {\n font-family: 'NeuSans', 'Inter', system-ui, sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n color: #2b484f;\n}\n\n/* Hover state for secondary - underline text */\n.hierarchy-secondary:hover ::slotted(*) {\n text-decoration: underline;\n}\n\n/* Mobile styles */\n@media (max-width: 767px) {\n .hierarchy-primary {\n padding: 20px 12px;\n border-bottom: 1px solid #e8eeed;\n width: 100%;\n }\n\n .hierarchy-primary .label-container {\n flex: 1;\n justify-content: flex-start;\n }\n\n .hierarchy-primary.variant-01 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n }\n\n .hierarchy-primary.variant-02 {\n font-size: 20px;\n line-height: 1.1;\n letter-spacing: -0.4px;\n color: #60767b;\n }\n}\n\n/* Icon sizing */\n::slotted([slot=\"icon-left\"]),\n::slotted([slot=\"icon-right\"]) {\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n}\n\n.hierarchy-secondary ::slotted([slot=\"icon-right\"]) {\n width: 20px;\n height: 20px;\n}\n","import { Component, h, Prop, Host } from '@stencil/core';\n\n/**\n * A generic navigation item component that can be used in navigation bars, menus, and sidebars.\n * Supports multiple hierarchy levels, variants, and states (active, hover).\n */\n@Component({\n tag: 'af-nav-item',\n styleUrl: 'af-nav-item.css',\n shadow: true\n})\nexport class AfNavItem {\n /**\n * Visual hierarchy level of the navigation item\n * - 'primary': Bold, main navigation (larger text, prominent styling)\n * - 'secondary': Lighter, sub-navigation (smaller text, subtle styling)\n */\n @Prop() hierarchy: 'primary' | 'secondary' = 'primary';\n\n /**\n * Visual variant within the hierarchy level\n * - '01': Darker/more prominent styling\n * - '02': Lighter/more subtle styling\n */\n @Prop() variant: '01' | '02' = '01';\n\n /**\n * URL to navigate to when clicked\n */\n @Prop() href?: string;\n\n /**\n * Whether this nav item is currently active/selected\n */\n @Prop() active: boolean = false;\n\n render() {\n const classes = {\n 'nav-item': true,\n [`hierarchy-${this.hierarchy}`]: true,\n [`variant-${this.variant}`]: true,\n 'active': this.active\n };\n\n const content = (\n <div class={classes}>\n <slot name=\"icon-left\"></slot>\n <div class=\"label-container\">\n <slot></slot>\n </div>\n <slot name=\"icon-right\"></slot>\n </div>\n );\n\n if (this.href) {\n return (\n <Host>\n <a href={this.href} class=\"nav-link\">\n {content}\n </a>\n </Host>\n );\n }\n\n return <Host>{content}</Host>;\n }\n}\n",":host {\n display: block;\n width: 100%;\n position: absolute;\n top: 32px;\n left: 0;\n right: 0;\n z-index: 10;\n}\n\n.navbar-container {\n padding: 0 80px;\n box-sizing: border-box;\n position: relative;\n}\n\n.navbar {\n background: var(--colour-background-white, #ffffff);\n border-radius: 9999px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 8px 8px 40px;\n box-sizing: border-box;\n flex-wrap: nowrap; /* Prevent wrapping */\n}\n\n/* Left section */\n.navbar-left {\n display: flex;\n align-items: center;\n gap: 32px;\n flex-shrink: 0;\n}\n\n.logo {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n\n/* Mobile menu toggle button */\n.mobile-menu-toggle {\n display: none;\n background: none;\n border: none;\n padding: 8px;\n cursor: pointer;\n color: var(--colour-brand-inkwell, #14343b);\n margin-left: auto;\n}\n\n.mobile-menu-toggle svg {\n display: block;\n}\n\n.nav-links {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: nowrap;\n}\n\n/* Right section */\n.navbar-right {\n display: flex;\n align-items: center;\n gap: 20px;\n flex-shrink: 0;\n}\n\n.nav-actions {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.nav-button {\n display: flex;\n align-items: center;\n}\n\n/* \n * Breakpoint 1: Hide \"Talk to us\" and \"Log in\" (nav-actions) \n * This happens first as the viewport gets narrower\n * Matches affinda.com behavior at ~1100px\n */\n@media (max-width: 1099px) {\n .nav-actions {\n display: none;\n }\n \n .navbar-right {\n gap: 0;\n }\n}\n\n/* Tablet adjustments */\n@media (max-width: 1024px) {\n .navbar-container {\n padding: 24px 40px 0;\n }\n\n .navbar-left {\n gap: 24px;\n }\n\n .nav-links {\n gap: 4px;\n }\n}\n\n/* \n * Breakpoint 2: Switch to hamburger menu\n * Matches affinda.com behavior at 991px\n */\n@media (max-width: 991px) {\n .navbar-container {\n padding: 16px 16px 0;\n }\n\n .navbar {\n padding: 8px 16px;\n flex-direction: column;\n border-radius: 16px;\n gap: 0;\n flex-wrap: wrap; /* Allow wrapping in mobile menu */\n }\n\n .navbar-left {\n width: 100%;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n }\n\n /* Show hamburger button on mobile */\n .mobile-menu-toggle {\n display: flex;\n }\n\n /* Hide nav links by default on mobile */\n .nav-links {\n display: none;\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n margin-top: 16px;\n flex-wrap: wrap;\n }\n\n /* Show nav links when menu is open */\n .nav-links.mobile-open {\n display: flex;\n }\n\n /* Hide right section by default on mobile */\n .navbar-right {\n display: none;\n width: 100%;\n flex-direction: column;\n gap: 12px;\n align-items: stretch;\n margin-top: 16px;\n }\n\n /* Show right section when menu is open */\n .navbar-right.mobile-open {\n display: flex;\n }\n\n /* Show nav-actions again in mobile menu */\n .nav-actions {\n display: flex;\n width: 100%;\n flex-direction: column;\n align-items: stretch;\n gap: 0;\n }\n\n .nav-button {\n width: 100%;\n }\n}\n","import { Component, State, h, Host } from '@stencil/core';\n\n/**\n * A full-width navigation bar component that provides the main site navigation.\n * Features a pill-shaped container with logo, navigation links, and action buttons.\n * Includes mobile hamburger menu.\n */\n@Component({\n tag: 'af-navbar',\n styleUrl: 'af-navbar.css',\n shadow: true\n})\nexport class AfNavbar {\n @State() mobileMenuOpen: boolean = false;\n\n private toggleMobileMenu = () => {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n };\n\n render() {\n return (\n <Host>\n <nav class=\"navbar-container\">\n <div class=\"navbar\">\n {/* Left section: Logo + Nav Links */}\n <div class=\"navbar-left\">\n <div class=\"logo\">\n <slot name=\"logo\"></slot>\n </div>\n \n {/* Hamburger menu button - mobile only */}\n <button \n class=\"mobile-menu-toggle\"\n onClick={this.toggleMobileMenu}\n aria-label=\"Toggle navigation menu\"\n aria-expanded={this.mobileMenuOpen ? 'true' : 'false'}\n >\n {this.mobileMenuOpen ? (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M18 6L6 18M6 6l12 12\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n ) : (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\n <path d=\"M3 12h18M3 6h18M3 18h18\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n )}\n </button>\n \n <div class={`nav-links ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <slot name=\"start\"></slot>\n </div>\n </div>\n\n {/* Right section: Actions + Button */}\n <div class={`navbar-right ${this.mobileMenuOpen ? 'mobile-open' : ''}`}>\n <div class=\"nav-actions\">\n <slot name=\"end\"></slot>\n </div>\n <div class=\"nav-button\">\n <slot name=\"button\"></slot>\n </div>\n </div>\n </div>\n </nav>\n </Host>\n );\n }\n}\n",":host {\n display: inline-block;\n}\n\n.logo-img {\n display: block;\n height: 22px;\n width: 141px;\n object-fit: contain;\n}\n","import { Component, h, Host } from '@stencil/core';\n\n/**\n * Affinda logo component\n */\n@Component({\n tag: 'af-logo',\n styleUrl: 'af-logo.css',\n shadow: true\n})\nexport class AfLogo {\n render() {\n return (\n <Host>\n <img\n src=\"https://www.figma.com/api/mcp/asset/2cfec484-7ba9-4258-94f3-ef4d0ba1e8fe\"\n alt=\"Affinda\"\n class=\"logo-img\"\n />\n </Host>\n );\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afHeadingCss = ":host{display:block}.heading{margin:0;padding:0;font-family:'NeuSans', 'Inter', 'Segoe UI', system-ui, sans-serif;font-weight:400;color:var(--colour-typography-heading-primary, #14343b);letter-spacing:-0.02em}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.theme-dark{color:var(--colour-brand-mist-green, #C6D5D1)}.theme-light{color:var(--colour-typography-heading-primary, #14343b)}.level-xl{font-size:50px;line-height:1}@media (min-width: 768px){.level-xl{font-size:80px}}.level-1{font-size:38px;line-height:1}@media (min-width: 768px){.level-1{font-size:56px}}.level-2{font-size:32px;line-height:1}@media (min-width: 768px){.level-2{font-size:44px}}.level-3{font-size:25px;line-height:1}@media (min-width: 768px){.level-3{font-size:34px}}.level-4{font-size:20px;line-height:1.1}@media (min-width: 768px){.level-4{font-size:24px;line-height:1.2}}.level-5{font-size:18px;line-height:1.1}@media (min-width: 768px){.level-5{font-size:20px;line-height:1.2}}";
4
4
 
@@ -100,7 +100,7 @@ const AfNavItem = class {
100
100
  };
101
101
  AfNavItem.style = afNavItemCss;
102
102
 
103
- const afNavbarCss = ":host{display:block;width:100%;position:absolute;top:32px;left:0;right:0;z-index:10}.navbar-container{padding:0 80px;box-sizing:border-box;position:relative}.navbar{background:var(--colour-background-white, #ffffff);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box}.navbar-left{display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;flex-shrink:0}.mobile-menu-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;color:var(--colour-brand-inkwell, #14343b);margin-left:auto}.mobile-menu-toggle svg{display:block}.nav-links{display:flex;align-items:center;gap:8px}.navbar-right{display:flex;align-items:center;gap:20px}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 767px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:0}.navbar-left{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.mobile-menu-toggle{display:flex}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:16px}.nav-links.mobile-open{display:flex}.navbar-right{display:none;width:100%;flex-direction:column;gap:12px;align-items:stretch;margin-top:16px}.navbar-right.mobile-open{display:flex}.nav-actions{width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";
103
+ const afNavbarCss = ":host{display:block;width:100%;position:absolute;top:32px;left:0;right:0;z-index:10}.navbar-container{padding:0 80px;box-sizing:border-box;position:relative}.navbar{background:var(--colour-background-white, #ffffff);border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 40px;box-sizing:border-box;flex-wrap:nowrap;}.navbar-left{display:flex;align-items:center;gap:32px;flex-shrink:0}.logo{display:flex;align-items:center;flex-shrink:0}.mobile-menu-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;color:var(--colour-brand-inkwell, #14343b);margin-left:auto}.mobile-menu-toggle svg{display:block}.nav-links{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.navbar-right{display:flex;align-items:center;gap:20px;flex-shrink:0}.nav-actions{display:flex;align-items:center;gap:12px}.nav-button{display:flex;align-items:center}@media (max-width: 1099px){.nav-actions{display:none}.navbar-right{gap:0}}@media (max-width: 1024px){.navbar-container{padding:24px 40px 0}.navbar-left{gap:24px}.nav-links{gap:4px}}@media (max-width: 991px){.navbar-container{padding:16px 16px 0}.navbar{padding:8px 16px;flex-direction:column;border-radius:16px;gap:0;flex-wrap:wrap;}.navbar-left{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.mobile-menu-toggle{display:flex}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;margin-top:16px;flex-wrap:wrap}.nav-links.mobile-open{display:flex}.navbar-right{display:none;width:100%;flex-direction:column;gap:12px;align-items:stretch;margin-top:16px}.navbar-right.mobile-open{display:flex}.nav-actions{display:flex;width:100%;flex-direction:column;align-items:stretch;gap:0}.nav-button{width:100%}}";
104
104
 
105
105
  const AfNavbar = class {
106
106
  constructor(hostRef) {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-Agei6ZJQ.js';
1
+ import { r as registerInstance, h, H as Host } from './index-DI7b0bCy.js';
2
2
 
3
3
  const afHeroSectionCss = ".sc-af-hero-section-h{display:block;width:100%}.hero-section.sc-af-hero-section{width:100%;padding-top:clamp(6rem, 12vh, 8rem);padding-bottom:clamp(3rem, 8vh, 5rem);display:flex;align-items:center;justify-content:center;margin-top:0;position:relative;z-index:1;overflow:hidden}.variant-light.sc-af-hero-section{background-color:var(--colour-background-white, #FFFFFF)}.variant-dark.sc-af-hero-section{background-color:var(--colour-brand-inkwell, #14343B)}.variant-dark.sc-af-hero-section af-heading.sc-af-hero-section,.variant-dark.sc-af-hero-section af-text.sc-af-hero-section{--typography-heading-primary:var(--colour-brand-mist-green, #C6D5D1);--typography-body-default:var(--colour-brand-mist-green, #C6D5D1)}.hero-decoration.sc-af-hero-section{position:absolute;inset:0;pointer-events:none;z-index:0;height:0;width:0;overflow:visible}.hero-decoration.sc-af-hero-section-s>*,.hero-decoration .sc-af-hero-section-s>*{position:absolute !important;bottom:-440px;right:-1200px;width:1250px;height:820px;opacity:0.5}.hero-content.sc-af-hero-section{text-align:center;max-width:1000px;margin:0 auto;position:relative;z-index:1}@media (max-width: 768px){.hero-section.sc-af-hero-section{padding:3rem 1.5rem 2.5rem}}";
4
4
 
@@ -13,7 +13,7 @@ const AfHeroSection = class {
13
13
  this.minHeight = '60vh';
14
14
  }
15
15
  render() {
16
- return (h(Host, { key: '85061979e5f4d2a766574cbc355e2f833160050b' }, h("div", { key: 'f0c1f36c7f5f241d5a3ce590a2eff5b5e9c6f3bc', class: `hero-section variant-${this.variant}`, style: { minHeight: this.minHeight } }, this.withDecoration && (h("div", { key: '4a680dcbb970ea9c31fdcd1d4e16ec9b43e859b6', class: "hero-decoration" }, h("slot", { key: 'f8c629d60b6fbb0627e0720967bbc5bfeecbfecd', name: "decoration" }))), h("af-container", { key: '07ed025ef1b11880896a0ca72916592f4b36dddf' }, h("div", { key: 'dbe586394c6e10ed672d12326e21832376661ed1', class: "hero-content" }, h("slot", { key: 'd3906e6fd0bdb1439df2c4e6b48e090472bcc2e5' }))))));
16
+ return (h(Host, { key: '632fa6929a3cfbf9cc563419289bf794f95c7579' }, h("div", { key: 'a69a52476a7e891e9b78a00dcd40c53ec9b93977', class: `hero-section variant-${this.variant}`, style: { minHeight: this.minHeight } }, this.withDecoration && (h("div", { key: '50514445b760b9b8c00b7605409431799caef0a8', class: "hero-decoration" }, h("slot", { key: 'd46b422d9e9f0f2a62dc02e3f2d7f0c497e4eb3c', name: "decoration" }))), h("af-container", { key: 'd4bf7bd11a621ce964aa9c502010b5d585cc54db' }, h("div", { key: '0c9d2e67f747fc58e394b9d8e7255a542625b8bd', class: "hero-content" }, h("slot", { key: '82e132764ad876f796ca2b94787be349ccffdcf3' }))))));
17
17
  }
18
18
  };
19
19
  AfHeroSection.style = afHeroSectionCss;