@duetds/components 10.0.0-alpha.24 → 10.0.0-alpha.26

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 (429) hide show
  1. package/hydrate/index.js +488 -287
  2. package/hydrate/index.mjs +488 -287
  3. package/lib/cjs/{a11y-utils-CZnG1VYN.js → a11y-utils-CnLnSK4z.js} +1 -1
  4. package/lib/cjs/{app-globals-B36JTAfq.js → app-globals-B3iie8Hv.js} +1 -1
  5. package/lib/cjs/{common-strings-DQ3xONmA.js → common-strings-CSqtNIxt.js} +23 -0
  6. package/lib/cjs/duet-action-button.cjs.entry.js +4 -4
  7. package/lib/cjs/duet-alert.cjs.entry.js +24 -33
  8. package/lib/cjs/duet-badge.cjs.entry.js +16 -4
  9. package/lib/cjs/duet-banner.cjs.entry.js +7 -7
  10. package/lib/cjs/duet-breadcrumb.cjs.entry.js +7 -7
  11. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +6 -6
  12. package/lib/cjs/duet-button_2.cjs.entry.js +13 -13
  13. package/lib/cjs/duet-callout.cjs.entry.js +5 -5
  14. package/lib/cjs/duet-caption_4.cjs.entry.js +15 -14
  15. package/lib/cjs/duet-card.cjs.entry.js +14 -8
  16. package/lib/cjs/duet-checkbox.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-checkmark.cjs.entry.js +4 -4
  18. package/lib/cjs/duet-chip.cjs.entry.js +3 -3
  19. package/lib/cjs/duet-choice_2.cjs.entry.js +35 -28
  20. package/lib/cjs/duet-collapsible.cjs.entry.js +3 -3
  21. package/lib/cjs/duet-combobox.cjs.entry.js +4 -4
  22. package/lib/cjs/duet-contact-card.cjs.entry.js +5 -5
  23. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  24. package/lib/cjs/duet-date-picker.cjs.entry.js +19 -9
  25. package/lib/cjs/duet-divider_2.cjs.entry.js +4 -4
  26. package/lib/cjs/duet-editable-table_3.cjs.entry.js +9 -9
  27. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  28. package/lib/cjs/duet-fieldset.cjs.entry.js +6 -6
  29. package/lib/cjs/duet-file-chooser.cjs.entry.js +2 -2
  30. package/lib/cjs/duet-footer.cjs.entry.js +5 -5
  31. package/lib/cjs/duet-grid_2.cjs.entry.js +4 -4
  32. package/lib/cjs/duet-header_2.cjs.entry.js +7 -6
  33. package/lib/cjs/duet-hero.cjs.entry.js +6 -6
  34. package/lib/cjs/duet-icon.cjs.entry.js +6 -6
  35. package/lib/cjs/duet-input_2.cjs.entry.js +7 -7
  36. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-list_2.cjs.entry.js +4 -4
  38. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +4 -4
  39. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +4 -4
  40. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +6 -6
  41. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +8 -8
  42. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +4 -4
  43. package/lib/cjs/duet-menu-bar.cjs.entry.js +3 -3
  44. package/lib/cjs/duet-modal.cjs.entry.js +38 -21
  45. package/lib/cjs/duet-multiselect.cjs.entry.js +5 -5
  46. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  47. package/lib/cjs/duet-notification_2.cjs.entry.js +5 -5
  48. package/lib/cjs/duet-number-input.cjs.entry.js +14 -9
  49. package/lib/cjs/duet-overlay.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-page-heading.cjs.entry.js +4 -4
  51. package/lib/cjs/duet-pagination_2.cjs.entry.js +6 -6
  52. package/lib/cjs/duet-panel.cjs.entry.js +53 -0
  53. package/lib/cjs/duet-phone-input.cjs.entry.js +4 -4
  54. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +6 -6
  55. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-promo-card.cjs.entry.js +6 -6
  57. package/lib/cjs/duet-radio_2.cjs.entry.js +7 -7
  58. package/lib/cjs/duet-range-slider.cjs.entry.js +6 -6
  59. package/lib/cjs/duet-scrollable_3.cjs.entry.js +26 -23
  60. package/lib/cjs/duet-section-layout.cjs.entry.js +4 -4
  61. package/lib/cjs/duet-select.cjs.entry.js +9 -9
  62. package/lib/cjs/duet-shaped-image.cjs.entry.js +4 -4
  63. package/lib/cjs/duet-share-chart-item.cjs.entry.js +2 -2
  64. package/lib/cjs/duet-share-chart.cjs.entry.js +9 -7
  65. package/lib/cjs/duet-show-more.cjs.entry.js +5 -5
  66. package/lib/cjs/duet-slideout-lang.cjs.entry.js +4 -4
  67. package/lib/cjs/duet-slideout-link.cjs.entry.js +8 -8
  68. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +6 -6
  69. package/lib/cjs/duet-slideout-panel.cjs.entry.js +12 -12
  70. package/lib/cjs/duet-slideout.cjs.entry.js +10 -10
  71. package/lib/cjs/duet-status-icon.cjs.entry.js +3 -3
  72. package/lib/cjs/duet-step_2.cjs.entry.js +7 -7
  73. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +4 -4
  74. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +6 -6
  75. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +7 -7
  76. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +3 -3
  77. package/lib/cjs/duet-submenu-bar.cjs.entry.js +7 -7
  78. package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
  79. package/lib/cjs/duet-toggle.cjs.entry.js +6 -6
  80. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +4 -4
  81. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +6 -6
  82. package/lib/cjs/duet-toolbar-item.cjs.entry.js +9 -9
  83. package/lib/cjs/duet-toolbar-link.cjs.entry.js +4 -4
  84. package/lib/cjs/duet-toolbar.cjs.entry.js +4 -4
  85. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +8 -8
  86. package/lib/cjs/duet-tooltip.cjs.entry.js +4 -4
  87. package/lib/cjs/duet-tray.cjs.entry.js +5 -5
  88. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
  89. package/lib/cjs/duet-upload-item.cjs.entry.js +6 -6
  90. package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
  91. package/lib/cjs/duet.cjs.js +3 -3
  92. package/lib/cjs/{errorcodes.utils-C58jiu8o.js → errorcodes.utils-BgHe-1YU.js} +1 -1
  93. package/lib/cjs/{focus-utils-tY80LFI3.js → focus-utils-CT74z9Qb.js} +1 -1
  94. package/lib/cjs/{index-C1crwqC7.js → index-C6D9Bly8.js} +5 -1
  95. package/lib/cjs/{label-ClSVuKQ_.js → label-tyZX3oPG.js} +1 -1
  96. package/lib/cjs/{language-utils-BtiS-RGS.js → language-utils-DcgSN-KH.js} +1 -1
  97. package/lib/cjs/loader.cjs.js +3 -3
  98. package/lib/cjs/{slot-utils-DZVD8m30.js → slot-utils-ByPWwvPp.js} +1 -1
  99. package/lib/cjs/{themeable-component-6YQpZOSC.js → themeable-component-Doq36ycm.js} +1 -1
  100. package/lib/cjs/{token-utils-CHLLcMzU.js → token-utils-DsVwGXGM.js} +75 -7
  101. package/lib/collection/collection-manifest.json +1 -0
  102. package/lib/collection/common-strings.js +22 -0
  103. package/lib/collection/components/duet-alert/duet-alert.js +21 -30
  104. package/lib/collection/components/duet-badge/duet-badge.js +13 -2
  105. package/lib/collection/components/duet-banner/duet-banner.css +1 -0
  106. package/lib/collection/components/duet-banner/duet-banner.js +3 -3
  107. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -4
  108. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -2
  109. package/lib/collection/components/duet-button/duet-button.css +14 -5
  110. package/lib/collection/components/duet-button/duet-button.js +5 -5
  111. package/lib/collection/components/duet-callout/duet-callout.js +2 -2
  112. package/lib/collection/components/duet-card/duet-card.js +36 -4
  113. package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
  114. package/lib/collection/components/duet-choice/duet-choice.js +6 -27
  115. package/lib/collection/components/duet-choice-group/duet-choice-group.js +24 -15
  116. package/lib/collection/components/duet-contact-card/duet-contact-card.js +2 -2
  117. package/lib/collection/components/duet-date-picker/date-picker-day.js +6 -1
  118. package/lib/collection/components/duet-date-picker/date-utils.js +6 -1
  119. package/lib/collection/components/duet-date-picker/duet-date-picker.css +2 -2
  120. package/lib/collection/components/duet-fieldset/duet-fieldset.js +3 -3
  121. package/lib/collection/components/duet-grid-item/duet-grid-item.js +2 -2
  122. package/lib/collection/components/duet-header/duet-header.js +3 -2
  123. package/lib/collection/components/duet-heading/duet-heading.css +1 -0
  124. package/lib/collection/components/duet-hero/duet-hero.css +95 -0
  125. package/lib/collection/components/duet-icon/duet-icon.js +3 -3
  126. package/lib/collection/components/duet-label/duet-label.js +1 -1
  127. package/lib/collection/components/duet-link/duet-link.js +5 -4
  128. package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
  129. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +2 -2
  130. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +4 -4
  131. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -2
  132. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +2 -2
  133. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -2
  134. package/lib/collection/components/duet-modal/duet-modal.js +96 -15
  135. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  136. package/lib/collection/components/duet-notification/duet-notification.js +2 -2
  137. package/lib/collection/components/duet-number-input/duet-number-input.js +11 -6
  138. package/lib/collection/components/duet-page-heading/duet-page-heading.js +2 -2
  139. package/lib/collection/components/duet-panel/duet-panel.css +98 -0
  140. package/lib/collection/components/duet-panel/duet-panel.js +234 -0
  141. package/lib/collection/components/duet-paragraph/duet-paragraph.js +2 -2
  142. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  143. package/lib/collection/components/duet-promo-card/duet-promo-card.js +3 -3
  144. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  145. package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
  146. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  147. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -2
  148. package/lib/collection/components/duet-scrollable/duet-scrollable.js +6 -6
  149. package/lib/collection/components/duet-section-layout/duet-section-layout.js +3 -3
  150. package/lib/collection/components/duet-select/duet-select.js +5 -5
  151. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +2 -2
  152. package/lib/collection/components/duet-share-chart/duet-share-chart.js +4 -2
  153. package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +1 -1
  154. package/lib/collection/components/duet-show-more/duet-show-more.js +2 -2
  155. package/lib/collection/components/duet-slideout/duet-slideout.js +4 -4
  156. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +1 -1
  157. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -2
  158. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +6 -6
  159. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +4 -4
  160. package/lib/collection/components/duet-spacer/duet-spacer.js +1 -1
  161. package/lib/collection/components/duet-spinner/duet-spinner.js +2 -2
  162. package/lib/collection/components/duet-status-icon/duet-status-icon.js +2 -2
  163. package/lib/collection/components/duet-step/duet-step.js +2 -2
  164. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  165. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +5 -5
  166. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +4 -4
  167. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -2
  168. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +1 -1
  169. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +1 -1
  170. package/lib/collection/components/duet-tab/duet-tab.js +2 -2
  171. package/lib/collection/components/duet-tab-group/duet-tab-group.js +14 -11
  172. package/lib/collection/components/duet-table/duet-table.js +2 -2
  173. package/lib/collection/components/duet-textarea/duet-textarea.js +3 -3
  174. package/lib/collection/components/duet-toggle/duet-toggle.js +2 -2
  175. package/lib/collection/components/duet-toolbar/duet-toolbar.js +2 -2
  176. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +4 -4
  177. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -2
  178. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +3 -3
  179. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -2
  180. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +3 -3
  181. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +2 -2
  182. package/lib/collection/components/duet-tray/duet-tray.js +2 -2
  183. package/lib/collection/components/duet-upload/duet-upload.js +2 -2
  184. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +1 -1
  185. package/lib/collection/components/duet-upload-item/duet-upload-item.js +2 -2
  186. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
  187. package/lib/collection/utils/token-utils.js +59 -7
  188. package/lib/collection/utils/turva2-color-tokens.js +42 -0
  189. package/lib/duet/duet.esm.js +1 -1
  190. package/lib/duet/{p-8a852600.entry.js → p-02ba799f.entry.js} +1 -1
  191. package/lib/duet/{p-5018b536.entry.js → p-066f855b.entry.js} +1 -1
  192. package/lib/duet/p-0864a12e.entry.js +4 -0
  193. package/lib/duet/{p-9ef5fe85.entry.js → p-0964b56d.entry.js} +1 -1
  194. package/lib/duet/{p-034efb8b.entry.js → p-0e15fd30.entry.js} +1 -1
  195. package/lib/duet/p-0fccda7b.entry.js +4 -0
  196. package/lib/duet/{p-156d2362.entry.js → p-117970c7.entry.js} +1 -1
  197. package/lib/duet/{p-3cee5337.entry.js → p-148b6203.entry.js} +1 -1
  198. package/lib/duet/p-15859eb3.entry.js +4 -0
  199. package/lib/duet/{p-ca626317.entry.js → p-15a7a9be.entry.js} +1 -1
  200. package/lib/duet/{p-db110424.entry.js → p-16f691fd.entry.js} +1 -1
  201. package/lib/duet/p-1ec554c6.entry.js +4 -0
  202. package/lib/duet/{p-ff564afe.entry.js → p-1f9c5d58.entry.js} +1 -1
  203. package/lib/duet/{p-5f18c78a.entry.js → p-22641f21.entry.js} +1 -1
  204. package/lib/duet/{p-f4a44d9d.entry.js → p-23475050.entry.js} +1 -1
  205. package/lib/duet/{p-f234f837.entry.js → p-288da581.entry.js} +1 -1
  206. package/lib/duet/{p-2bc683b8.entry.js → p-2a563d22.entry.js} +1 -1
  207. package/lib/duet/{p-32ac2068.entry.js → p-2d62148e.entry.js} +1 -1
  208. package/lib/duet/{p-f6c347b4.entry.js → p-2f150cd4.entry.js} +1 -1
  209. package/lib/duet/{p-c28dc621.entry.js → p-34706bbb.entry.js} +1 -1
  210. package/lib/duet/{p-b0484b68.entry.js → p-433a9f98.entry.js} +1 -1
  211. package/lib/duet/{p-7c19dac5.entry.js → p-44deeddc.entry.js} +1 -1
  212. package/lib/duet/{p-bb468aae.entry.js → p-4a325ef1.entry.js} +1 -1
  213. package/lib/duet/p-4c118ad6.entry.js +4 -0
  214. package/lib/duet/{p-da1914c5.entry.js → p-4c37165a.entry.js} +1 -1
  215. package/lib/duet/p-4cd019a5.entry.js +4 -0
  216. package/lib/duet/{p-be397530.entry.js → p-4da25e3d.entry.js} +1 -1
  217. package/lib/duet/{p-3d8dc9a3.entry.js → p-4da439ae.entry.js} +1 -1
  218. package/lib/duet/{p-b4e2e77d.entry.js → p-4fc62376.entry.js} +1 -1
  219. package/lib/duet/p-534180fa.entry.js +4 -0
  220. package/lib/duet/p-57165bf0.entry.js +4 -0
  221. package/lib/duet/{p-908b3a74.entry.js → p-5a6fd350.entry.js} +1 -1
  222. package/lib/duet/p-5bfa5e5d.entry.js +4 -0
  223. package/lib/duet/{p-bf586daf.entry.js → p-5fdfb13d.entry.js} +1 -1
  224. package/lib/duet/{p-7dceae70.entry.js → p-62df87ea.entry.js} +1 -1
  225. package/lib/duet/{p-a2a94d9a.entry.js → p-66cb6021.entry.js} +1 -1
  226. package/lib/duet/{p-416cbbf6.entry.js → p-6b2697ad.entry.js} +1 -1
  227. package/lib/duet/{p-b463cb8b.entry.js → p-6dca8f77.entry.js} +1 -1
  228. package/lib/duet/p-6fa7de01.entry.js +4 -0
  229. package/lib/duet/{p-abec4876.entry.js → p-6fdb09d1.entry.js} +1 -1
  230. package/lib/duet/{p-815c955b.entry.js → p-78a9b684.entry.js} +1 -1
  231. package/lib/duet/p-7b849d35.entry.js +4 -0
  232. package/lib/duet/p-7c1e8291.entry.js +4 -0
  233. package/lib/duet/{p-f4a0f95a.entry.js → p-7f0aa937.entry.js} +1 -1
  234. package/lib/duet/{p-038b8ea1.entry.js → p-804b326c.entry.js} +1 -1
  235. package/lib/duet/{p-db50a06b.entry.js → p-806121b1.entry.js} +1 -1
  236. package/lib/duet/p-8194b05d.entry.js +4 -0
  237. package/lib/duet/{p-58bd2e53.entry.js → p-829482da.entry.js} +1 -1
  238. package/lib/duet/{p-4427fd7d.entry.js → p-84777c03.entry.js} +1 -1
  239. package/lib/duet/{p-72ad01cb.entry.js → p-8625d3ce.entry.js} +1 -1
  240. package/lib/duet/{p-662331c7.entry.js → p-88216acf.entry.js} +1 -1
  241. package/lib/duet/p-92b13088.entry.js +4 -0
  242. package/lib/duet/{p-caf145ea.entry.js → p-9440a479.entry.js} +1 -1
  243. package/lib/duet/{p-6104db31.entry.js → p-98aa7ac5.entry.js} +1 -1
  244. package/lib/duet/{p-88422e6a.entry.js → p-9a7382a4.entry.js} +1 -1
  245. package/lib/duet/p-9c838ec0.entry.js +4 -0
  246. package/lib/duet/p-B5RO_CRT.js +4 -0
  247. package/lib/duet/{p-CsVaeVlH.js → p-BPFqbaxm.js} +1 -1
  248. package/lib/duet/p-BWvtXbhA.js +4 -0
  249. package/lib/duet/{p-DglOA-oE.js → p-BkHWWyft.js} +1 -1
  250. package/lib/duet/{p-uJz71_4x.js → p-C-YpEPL-.js} +1 -1
  251. package/lib/duet/p-C2xFZ1pZ.js +4 -0
  252. package/lib/duet/{p-wJIv584C.js → p-CwVyzidG.js} +1 -1
  253. package/lib/duet/p-D5MfS1RP.js +4 -0
  254. package/lib/duet/p-DixsuovU.js +4 -0
  255. package/lib/duet/p-DoTAjqzf.js +4 -0
  256. package/lib/duet/p-Dr2j33H2.js +4 -0
  257. package/lib/duet/{p-D5_4M8f7.js → p-Z0D6Gy9e.js} +1 -1
  258. package/lib/duet/{p-688ea42b.entry.js → p-a64da31d.entry.js} +1 -1
  259. package/lib/duet/{p-b8c10f92.entry.js → p-a704d617.entry.js} +1 -1
  260. package/lib/duet/{p-2ba227ae.entry.js → p-a745298d.entry.js} +1 -1
  261. package/lib/duet/{p-1d5bdc66.entry.js → p-ad08429f.entry.js} +1 -1
  262. package/lib/duet/p-ad3d8ac8.entry.js +4 -0
  263. package/lib/duet/{p-6cafd585.entry.js → p-b1f362dc.entry.js} +1 -1
  264. package/lib/duet/p-b9acaca1.entry.js +4 -0
  265. package/lib/duet/{p-66861503.entry.js → p-babe244b.entry.js} +1 -1
  266. package/lib/duet/{p-42539282.entry.js → p-c35c9198.entry.js} +1 -1
  267. package/lib/duet/{p-f4be7b00.entry.js → p-c62aeb2e.entry.js} +1 -1
  268. package/lib/duet/p-c8a66d4b.entry.js +4 -0
  269. package/lib/duet/p-cfd5c934.entry.js +4 -0
  270. package/lib/duet/{p-933da99a.entry.js → p-d05bbd77.entry.js} +1 -1
  271. package/lib/duet/{p-d8b7a8da.entry.js → p-d079278e.entry.js} +1 -1
  272. package/lib/duet/p-d110954d.entry.js +4 -0
  273. package/lib/duet/p-d71a366e.entry.js +4 -0
  274. package/lib/duet/{p-218b0dc3.entry.js → p-d92c5cfa.entry.js} +1 -1
  275. package/lib/duet/p-dbab30ea.entry.js +4 -0
  276. package/lib/duet/p-dd8216e7.entry.js +4 -0
  277. package/lib/duet/{p-545e9dd3.entry.js → p-e18a1599.entry.js} +1 -1
  278. package/lib/duet/p-e76051c3.entry.js +4 -0
  279. package/lib/duet/{p-1c2d8dfc.entry.js → p-e9886226.entry.js} +1 -1
  280. package/lib/duet/{p-3aeaed85.entry.js → p-e9becc58.entry.js} +1 -1
  281. package/lib/duet/{p-74d7480d.entry.js → p-ec72f3a2.entry.js} +1 -1
  282. package/lib/duet/{p-7bc24df3.entry.js → p-ecb4e99d.entry.js} +1 -1
  283. package/lib/duet/p-f2ae56b2.entry.js +4 -0
  284. package/lib/duet/{p-0e288f30.entry.js → p-f51c072f.entry.js} +1 -1
  285. package/lib/duet/{p-f237085e.entry.js → p-f82079f2.entry.js} +1 -1
  286. package/lib/duet/{p-9b757818.entry.js → p-f82a2ab7.entry.js} +1 -1
  287. package/lib/esm/{a11y-utils-ehCV15cK.js → a11y-utils-C6cn5C3e.js} +1 -1
  288. package/lib/esm/{app-globals-BWEEyeBa.js → app-globals-CcxHDwb4.js} +1 -1
  289. package/lib/esm/{common-strings-MxsWrBCY.js → common-strings-BWvtXbhA.js} +23 -1
  290. package/lib/esm/duet-action-button.entry.js +5 -5
  291. package/lib/esm/duet-alert.entry.js +24 -33
  292. package/lib/esm/duet-badge.entry.js +16 -4
  293. package/lib/esm/duet-banner.entry.js +8 -8
  294. package/lib/esm/duet-breadcrumb.entry.js +7 -7
  295. package/lib/esm/duet-breadcrumbs.entry.js +7 -7
  296. package/lib/esm/duet-button_2.entry.js +14 -14
  297. package/lib/esm/duet-callout.entry.js +5 -5
  298. package/lib/esm/duet-caption_4.entry.js +16 -15
  299. package/lib/esm/duet-card.entry.js +15 -9
  300. package/lib/esm/duet-checkbox.entry.js +2 -2
  301. package/lib/esm/duet-checkmark.entry.js +4 -4
  302. package/lib/esm/duet-chip.entry.js +3 -3
  303. package/lib/esm/duet-choice_2.entry.js +35 -28
  304. package/lib/esm/duet-collapsible.entry.js +3 -3
  305. package/lib/esm/duet-combobox.entry.js +4 -4
  306. package/lib/esm/duet-contact-card.entry.js +5 -5
  307. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  308. package/lib/esm/duet-date-picker.entry.js +19 -9
  309. package/lib/esm/duet-divider_2.entry.js +5 -5
  310. package/lib/esm/duet-editable-table_3.entry.js +10 -10
  311. package/lib/esm/duet-empty-state.entry.js +2 -2
  312. package/lib/esm/duet-fieldset.entry.js +6 -6
  313. package/lib/esm/duet-file-chooser.entry.js +2 -2
  314. package/lib/esm/duet-footer.entry.js +5 -5
  315. package/lib/esm/duet-grid_2.entry.js +4 -4
  316. package/lib/esm/duet-header_2.entry.js +8 -7
  317. package/lib/esm/duet-hero.entry.js +6 -6
  318. package/lib/esm/duet-icon.entry.js +7 -7
  319. package/lib/esm/duet-input_2.entry.js +8 -8
  320. package/lib/esm/duet-layout.entry.js +2 -2
  321. package/lib/esm/duet-list_2.entry.js +4 -4
  322. package/lib/esm/duet-menu-bar-button.entry.js +4 -4
  323. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +4 -4
  324. package/lib/esm/duet-menu-bar-dropdown.entry.js +6 -6
  325. package/lib/esm/duet-menu-bar-item.entry.js +8 -8
  326. package/lib/esm/duet-menu-bar-link.entry.js +4 -4
  327. package/lib/esm/duet-menu-bar.entry.js +3 -3
  328. package/lib/esm/duet-modal.entry.js +38 -21
  329. package/lib/esm/duet-multiselect.entry.js +5 -5
  330. package/lib/esm/duet-nav.entry.js +3 -3
  331. package/lib/esm/duet-notification_2.entry.js +5 -5
  332. package/lib/esm/duet-number-input.entry.js +14 -9
  333. package/lib/esm/duet-overlay.entry.js +2 -2
  334. package/lib/esm/duet-page-heading.entry.js +4 -4
  335. package/lib/esm/duet-pagination_2.entry.js +7 -7
  336. package/lib/esm/duet-panel.entry.js +51 -0
  337. package/lib/esm/duet-phone-input.entry.js +4 -4
  338. package/lib/esm/duet-popup-menu_2.entry.js +7 -7
  339. package/lib/esm/duet-progress.entry.js +3 -3
  340. package/lib/esm/duet-promo-card.entry.js +7 -7
  341. package/lib/esm/duet-radio_2.entry.js +7 -7
  342. package/lib/esm/duet-range-slider.entry.js +7 -7
  343. package/lib/esm/duet-scrollable_3.entry.js +27 -24
  344. package/lib/esm/duet-section-layout.entry.js +4 -4
  345. package/lib/esm/duet-select.entry.js +9 -9
  346. package/lib/esm/duet-shaped-image.entry.js +4 -4
  347. package/lib/esm/duet-share-chart-item.entry.js +2 -2
  348. package/lib/esm/duet-share-chart.entry.js +10 -8
  349. package/lib/esm/duet-show-more.entry.js +5 -5
  350. package/lib/esm/duet-slideout-lang.entry.js +4 -4
  351. package/lib/esm/duet-slideout-link.entry.js +8 -8
  352. package/lib/esm/duet-slideout-panel-dropdown.entry.js +6 -6
  353. package/lib/esm/duet-slideout-panel.entry.js +13 -13
  354. package/lib/esm/duet-slideout.entry.js +11 -11
  355. package/lib/esm/duet-status-icon.entry.js +3 -3
  356. package/lib/esm/duet-step_2.entry.js +7 -7
  357. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +4 -4
  358. package/lib/esm/duet-submenu-bar-dropdown.entry.js +6 -6
  359. package/lib/esm/duet-submenu-bar-item.entry.js +7 -7
  360. package/lib/esm/duet-submenu-bar-link.entry.js +3 -3
  361. package/lib/esm/duet-submenu-bar.entry.js +7 -7
  362. package/lib/esm/duet-textarea.entry.js +8 -8
  363. package/lib/esm/duet-toggle.entry.js +6 -6
  364. package/lib/esm/duet-toolbar-dropdown-link.entry.js +4 -4
  365. package/lib/esm/duet-toolbar-dropdown.entry.js +6 -6
  366. package/lib/esm/duet-toolbar-item.entry.js +9 -9
  367. package/lib/esm/duet-toolbar-link.entry.js +4 -4
  368. package/lib/esm/duet-toolbar.entry.js +4 -4
  369. package/lib/esm/duet-tooltip-button_2.entry.js +8 -8
  370. package/lib/esm/duet-tooltip.entry.js +4 -4
  371. package/lib/esm/duet-tray.entry.js +6 -6
  372. package/lib/esm/duet-upload-aria-status.entry.js +2 -2
  373. package/lib/esm/duet-upload-item.entry.js +6 -6
  374. package/lib/esm/duet-visually-hidden.entry.js +2 -2
  375. package/lib/esm/duet.js +4 -4
  376. package/lib/esm/{errorcodes.utils-DM0J2eP4.js → errorcodes.utils-CEyBUBSM.js} +1 -1
  377. package/lib/esm/{focus-utils-BSQKWOQJ.js → focus-utils-BhO5oz9w.js} +1 -1
  378. package/lib/esm/{index-CsVaeVlH.js → index-BPFqbaxm.js} +5 -1
  379. package/lib/esm/{label-J3UGBylH.js → label-BGqhM4kx.js} +1 -1
  380. package/lib/esm/{language-utils-B79DRNQM.js → language-utils-CNMTW_pZ.js} +1 -1
  381. package/lib/esm/loader.js +4 -4
  382. package/lib/esm/{slot-utils-DYWEum3Y.js → slot-utils-BABbKvvc.js} +1 -1
  383. package/lib/esm/{themeable-component-CcmXnsoX.js → themeable-component-Csv1RXxf.js} +1 -1
  384. package/lib/esm/{token-utils-orOLyKQw.js → token-utils-BGFYWQ6j.js} +76 -9
  385. package/lib/esm/{tokens.module-D5_4M8f7.js → tokens.module-Z0D6Gy9e.js} +1 -1
  386. package/lib/types/common-strings.d.ts +2 -0
  387. package/lib/types/components/duet-alert/duet-alert.d.ts +5 -2
  388. package/lib/types/components/duet-badge/duet-badge.d.ts +1 -0
  389. package/lib/types/components/duet-card/duet-card.d.ts +6 -0
  390. package/lib/types/components/duet-choice/duet-choice.d.ts +0 -4
  391. package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +2 -2
  392. package/lib/types/components/duet-modal/duet-modal.d.ts +17 -1
  393. package/lib/types/components/duet-number-input/duet-number-input.d.ts +3 -1
  394. package/lib/types/components/duet-panel/duet-panel.d.ts +47 -0
  395. package/lib/types/components.d.ts +123 -11
  396. package/lib/types/utils/token-utils.d.ts +4 -0
  397. package/lib/types/utils/turva2-color-tokens.d.ts +39 -0
  398. package/package.json +3 -3
  399. package/lib/duet/p-08f98123.entry.js +0 -4
  400. package/lib/duet/p-0b358066.entry.js +0 -4
  401. package/lib/duet/p-11a4fb44.entry.js +0 -4
  402. package/lib/duet/p-24d04bd7.entry.js +0 -4
  403. package/lib/duet/p-3897c6bf.entry.js +0 -4
  404. package/lib/duet/p-3baa3eaa.entry.js +0 -4
  405. package/lib/duet/p-3d904355.entry.js +0 -4
  406. package/lib/duet/p-3e42346e.entry.js +0 -4
  407. package/lib/duet/p-41ef0467.entry.js +0 -4
  408. package/lib/duet/p-5816e147.entry.js +0 -4
  409. package/lib/duet/p-5c2e03bf.entry.js +0 -4
  410. package/lib/duet/p-64731e35.entry.js +0 -4
  411. package/lib/duet/p-6f635395.entry.js +0 -4
  412. package/lib/duet/p-70757ffa.entry.js +0 -4
  413. package/lib/duet/p-86669a06.entry.js +0 -4
  414. package/lib/duet/p-90efef7f.entry.js +0 -4
  415. package/lib/duet/p-C4JF-vDv.js +0 -4
  416. package/lib/duet/p-DpD8uhf3.js +0 -4
  417. package/lib/duet/p-DyjhCDQL.js +0 -4
  418. package/lib/duet/p-MxsWrBCY.js +0 -4
  419. package/lib/duet/p-R41sfCqP.js +0 -4
  420. package/lib/duet/p-SyNakUqS.js +0 -4
  421. package/lib/duet/p-a6173e93.entry.js +0 -4
  422. package/lib/duet/p-aad8dac7.entry.js +0 -4
  423. package/lib/duet/p-abda9682.entry.js +0 -4
  424. package/lib/duet/p-bae186c7.entry.js +0 -4
  425. package/lib/duet/p-d4a03e18.entry.js +0 -4
  426. package/lib/duet/p-e99bccef.entry.js +0 -4
  427. package/lib/duet/p-ee3ca3a8.entry.js +0 -4
  428. package/lib/duet/p-ef3083e7.entry.js +0 -4
  429. package/lib/duet/p-ymqr0QD0.js +0 -4
package/hydrate/index.js CHANGED
@@ -4216,7 +4216,31 @@ var tokens$2 = /*#__PURE__*/Object.freeze({
4216
4216
  zIndexToast: zIndexToast
4217
4217
  });
4218
4218
 
4219
+ const turva2ColorTokens = {
4220
+ "color-turva2-red-600": "#e61740",
4221
+ "color-turva2-red-700": "#b90329",
4222
+ "color-turva2-red-800": "#8c001e",
4223
+ "color-turva2-gray-00": "#f5f6f7",
4224
+ "color-turva2-gray-100": "#d4dde2",
4225
+ "color-turva2-gray-200": "#b2c2cd",
4226
+ "color-turva2-gray-400": "#7891a4",
4227
+ "color-turva2-gray-500": "#5f7a8f",
4228
+ "color-turva2-gray-900": "#172a3b"};
4229
+
4219
4230
  const allowedThemes = ["turva"];
4231
+ const MATCH_CAPITAL_CASE = /[A-Z]/g;
4232
+ function isTurva2() {
4233
+ var _a;
4234
+ if (typeof document === "undefined") {
4235
+ return false;
4236
+ }
4237
+ return !!((_a = document.documentElement.attributes.getNamedItem("class")) === null || _a === void 0 ? void 0 : _a.value.includes("duet-theme-turva2"));
4238
+ }
4239
+ function isCamelCase(str) {
4240
+ const camel = MATCH_CAPITAL_CASE.test(str);
4241
+ const barredString = !str.includes("_") && !str.includes("-") && !str.includes(" ");
4242
+ return camel && barredString;
4243
+ }
4220
4244
  function isDashCase(str) {
4221
4245
  const dash = str.includes("-");
4222
4246
  const barredString = str.includes(" ") || str.includes("_");
@@ -4262,18 +4286,61 @@ function addTheme(str, theme) {
4262
4286
  }
4263
4287
  return str;
4264
4288
  }
4289
+ /**
4290
+ * Add "-turva" to color names (or "Turva" to camelCase color names)
4291
+ */
4292
+ function postfixTheme(name, theme) {
4293
+ if (!name) {
4294
+ return undefined;
4295
+ }
4296
+ if (["", "default"].includes(theme)) {
4297
+ return name;
4298
+ }
4299
+ if ((isDashCase(name) && name.endsWith(`-${theme}`)) || (isCamelCase(name) && name.endsWith(capitalize(theme)))) {
4300
+ return name;
4301
+ }
4302
+ if (tokens$2[`color${camelize(name)}${capitalizeFirstLetter(theme)}`]) {
4303
+ return !isCamelCase(name) ? `${name}-${theme}` : `${name}${capitalize(theme)}`;
4304
+ }
4305
+ return name;
4306
+ }
4265
4307
  function getColorByName(name, theme = "") {
4266
4308
  if (!name) {
4267
4309
  return undefined;
4268
4310
  }
4269
- const defaultColor = convertToColorName(name);
4270
- const themedColor = convertToColorName(name, theme);
4271
- // lets just try to get the color first to save some cycles
4272
- let resolvedToken = tokens$2[themedColor];
4273
- if (!resolvedToken) {
4274
- resolvedToken = tokens$2[defaultColor];
4311
+ if ((theme === "turva" || name.endsWith("-turva")) && isTurva2()) {
4312
+ switch (name.replace(/-turva$/, "")) {
4313
+ case "primary-lightest":
4314
+ return turva2ColorTokens["color-turva2-nude-00"];
4315
+ case "primary-lighter":
4316
+ return turva2ColorTokens["color-turva2-nude-50"];
4317
+ case "primary-light":
4318
+ return turva2ColorTokens["color-turva2-nude-200"];
4319
+ case "primary":
4320
+ return turva2ColorTokens["color-turva2-red-600"];
4321
+ case "primary-darker":
4322
+ return turva2ColorTokens["color-turva2-red-700"];
4323
+ case "primary-dark":
4324
+ return turva2ColorTokens["color-turva2-red-800"];
4325
+ case "secondary":
4326
+ return turva2ColorTokens["color-turva2-gray-900"];
4327
+ case "gray-lighter":
4328
+ return turva2ColorTokens["color-turva2-gray-00"];
4329
+ case "gray-light":
4330
+ return turva2ColorTokens["color-turva2-gray-100"];
4331
+ case "gray":
4332
+ return turva2ColorTokens["color-turva2-gray-200"];
4333
+ case "gray-dark":
4334
+ return turva2ColorTokens["color-turva2-gray-400"];
4335
+ case "gray-darker":
4336
+ return turva2ColorTokens["color-turva2-gray-500"];
4337
+ // carry on to old turva colors
4338
+ }
4275
4339
  }
4276
- return resolvedToken;
4340
+ const defaultColor = convertToColorName(name);
4341
+ const themedColor = theme && convertToColorName(name, theme);
4342
+ // return themed color if it exists
4343
+ return tokens$2[themedColor] || tokens$2[defaultColor];
4277
4344
  }
4278
4345
  function convertToColorName(name = "", theme = "") {
4279
4346
  let colorResolution = name;
@@ -4585,6 +4652,54 @@ class DuetActionButton {
4585
4652
  }; }
4586
4653
  }
4587
4654
 
4655
+ const DuetStringsDownloadLinkDefaults = {
4656
+ fi: "Linkki tallennetaan laitteellesi",
4657
+ sv: "Nedladdningslänk",
4658
+ en: "Download link",
4659
+ };
4660
+ const DuetStringsExternalDefaults = {
4661
+ fi: "Avautuu uuteen ikkunaan",
4662
+ sv: "Öppnas i nytt fönster",
4663
+ en: "Opens in a new window",
4664
+ };
4665
+ const DuetStringsLoadingDefaults = {
4666
+ fi: "Ladataan",
4667
+ sv: "Laddas",
4668
+ en: "Loading…",
4669
+ };
4670
+ const DuetStringsPleaseWaitDefaults = {
4671
+ fi: "Odota, ole hyvä.",
4672
+ sv: "Vänligen vänta.",
4673
+ en: "Please wait.",
4674
+ };
4675
+ const DuetStringsListStepOfTotal = {
4676
+ fi: "Lista jossa {total} kohtaa. Olet kohdassa {current}.",
4677
+ en: "List with {total} steps. You are on step {current}.",
4678
+ sv: "Lista med {total} steg. Du är på steg {current}.",
4679
+ };
4680
+ const DuetStatusLabels = {
4681
+ default: {
4682
+ fi: "Huomioithan",
4683
+ en: "Please note",
4684
+ sv: "Observera",
4685
+ },
4686
+ success: {
4687
+ fi: "Onnistunut toiminto",
4688
+ en: "Action completed successfully",
4689
+ sv: "Lyckad åtgärd",
4690
+ },
4691
+ danger: {
4692
+ fi: "Tärkeä varoitus",
4693
+ en: "Important warning",
4694
+ sv: "Viktig varning",
4695
+ },
4696
+ warning: {
4697
+ fi: "Varoitus",
4698
+ en: "Warning",
4699
+ sv: "Varning",
4700
+ },
4701
+ };
4702
+
4588
4703
  const getElementsFromNamedSlot = (element, slotName) => {
4589
4704
  const childElements = Array.from(element.children );
4590
4705
  return childElements.filter(el => el.matches(`[slot='${slotName}']`));
@@ -4648,28 +4763,6 @@ class DuetAlert {
4648
4763
  this.duetCloseComplete = createEvent$2(this, "duetCloseComplete", 7);
4649
4764
  this.descriptiveId = createID("DuetAlert");
4650
4765
  this.hasShowMoreSlot = false;
4651
- this.labels = {
4652
- default: {
4653
- fi: "Huomioithan",
4654
- en: "Please note",
4655
- sv: "Observera",
4656
- },
4657
- success: {
4658
- fi: "Onnistunut toiminto",
4659
- en: "Action completed successfully",
4660
- sv: "Lyckad åtgärd",
4661
- },
4662
- danger: {
4663
- fi: "Tärkeä varoitus",
4664
- en: "Important warning",
4665
- sv: "Viktig varning",
4666
- },
4667
- warning: {
4668
- fi: "Varoitus",
4669
- en: "Warning",
4670
- sv: "Varning",
4671
- },
4672
- };
4673
4766
  /**
4674
4767
  * Theme of the card.
4675
4768
  */
@@ -4714,7 +4807,10 @@ class DuetAlert {
4714
4807
  */
4715
4808
  this.padding = "auto";
4716
4809
  /**
4717
- * Style variation of the alert.
4810
+ * Status variation of the alert. "danger" and "warning" will render the alert with role "alert" (unless announcements
4811
+ * has been set to false). Other variations will have role "status". Use "danger" only when something serious has happened
4812
+ * or the user must take immediate action. Use "warning" for unexpected situations that are potentially harmful, but
4813
+ * don't require immediate action.
4718
4814
  */
4719
4815
  this.variation = "default";
4720
4816
  /**
@@ -4752,6 +4848,15 @@ class DuetAlert {
4752
4848
  this.handleExpandToggle = () => {
4753
4849
  this.isExpanded = !this.isExpanded;
4754
4850
  };
4851
+ this.getRole = () => {
4852
+ if (!this.announcements) {
4853
+ return undefined;
4854
+ }
4855
+ if (["warning", "danger"].includes(this.variation)) {
4856
+ return "alert";
4857
+ }
4858
+ return "status";
4859
+ };
4755
4860
  }
4756
4861
  /**
4757
4862
  * Component lifecycle events.
@@ -4810,18 +4915,18 @@ class DuetAlert {
4810
4915
  const variation = ["default", "success", "danger", "warning"].includes(this.variation)
4811
4916
  ? this.variation
4812
4917
  : "default";
4813
- const variationLabel = getLocaleString(this.labels[variation]);
4814
- return (hAsync(Host, { key: '5584475286356ac3d444c97e9429aaddc5e6153e', class: {
4918
+ const variationLabel = getLocaleString(DuetStatusLabels[variation]);
4919
+ return (hAsync(Host, { key: 'b204a657de629955d04058f3c43813aa00980c1e', class: {
4815
4920
  "duet-theme-turva": this.theme === "turva",
4816
4921
  "duet-alert-is-dismissed": this.isDismissed,
4817
- }, role: this.announcements ? "alert" : undefined }, hAsync("div", { key: '7a3ef0cee9f7e304eac829dfbfd834f1123867fd', class: {
4922
+ }, role: this.getRole() }, hAsync("div", { key: '0d573c37ae4013f7fdef0d89a7d2cfff38157b44', class: {
4818
4923
  "duet-alert-wrapper": true,
4819
4924
  "duet-p-0": this.padding === "none",
4820
4925
  "duet-m-0": this.margin === "none",
4821
4926
  [variation]: true,
4822
4927
  [this.position]: true,
4823
4928
  "duet-theme-turva": this.theme === "turva",
4824
- } }, hAsync("div", { key: '27797a4ea2296ac70ac133f3ec1a4fedaa07b78d', class: {
4929
+ } }, hAsync("div", { key: 'ecb946bd29811c5ee207804498810a6cd3c83889', class: {
4825
4930
  "duet-alert": true,
4826
4931
  "duet-alert-expandable": !!this.expandingTitle,
4827
4932
  "duet-alert-expanded": this.isExpanded,
@@ -4832,9 +4937,9 @@ class DuetAlert {
4832
4937
  "duet-m-0": this.margin === "none",
4833
4938
  [variation]: true,
4834
4939
  "duet-theme-turva": this.theme === "turva",
4835
- } }, hAsync("div", { key: '3030a95fb19791465f75a74a6803a1bbd0f9b5dd', class: "duet-alert-container", ref: element => {
4940
+ } }, hAsync("div", { key: '88e63f17d9d316a933266a2d98be63f1cf6fa939', class: "duet-alert-container", ref: element => {
4836
4941
  this.alertContainer = element;
4837
- }, tabindex: this.focusable ? "0" : undefined }, this.position !== "below-nav" && (hAsync("div", { key: 'e990ae6cf89ef89c0c3445af06402f8202583796', class: "duet-alert-icon" }, (this.icon && hAsync("duet-icon", { key: 'f4b0bd5ca292239cb7a98379b10dd965d4173509', size: "auto", name: this.icon, color: "currentColor" })) || (hAsync("duet-status-icon", { key: 'ad9b6952c1af47501fe6bf7298d69a66bb1223b9', strong: true, variation: variation, margin: "none", size: "auto" })))), this.position === "below-nav" && (hAsync("div", { key: '479a41fafb16793a51eb71e8e892088b6ede41ef', class: "duet-alert-icon below-nav" }, hAsync("duet-status-icon", { key: '249c1b1f9a763ce5725982a2c0a00597698bccc7', strong: true, variation: variation, margin: "none", size: "auto" }))), hAsync("div", { key: '577fa13d2a0682a3fe079a4a098e11bb99fc8dc9', class: "duet-alert-content", id: this.descriptiveId }, this.expandingTitle && (hAsync("button", { key: '4fb68ee1545889ee3c0090bcbc3cd7e952e4d6c9', "aria-expanded": this.isExpanded.toString(), "aria-controls": `${this.descriptiveId}-content`, class: "duet-alert-expander", onClick: this.handleExpandToggle }, hAsync("span", { key: '9ab35209919d1fe4aa6f3db6c16e593828985434', class: "expanding-title" }, this.expandingTitle), hAsync("duet-icon", { key: 'd387939b25c676cd7c17ec6962da00383935ade3', name: "action-arrow-down", color: variation === "default" ? "lt-blue-800" : `${variation}-800`, margin: "none", size: "x-small" }))), (!this.expandingTitle || this.isExpanded) && (hAsync("div", { key: '989a79e16a74690dc7c78da3cc40ef4d02ecb513', id: `${this.descriptiveId}-content` }, hAsync("duet-visually-hidden", { key: '4792b5aa92cefc69907c6325a3c89bd5d9476ae3' }, variationLabel), hAsync("slot", { key: '662c5673bd1118e9effdd083eba7b13ea349ac39' }))))), this.hasShowMoreSlot && (hAsync("duet-show-more", { key: '7b7b917b785c74924ef13550a9866ab4d724f9ce', margin: "none", class: "duet-alert-show-more" }, hAsync("slot", { key: '6370fcc4b7e689d1997c7e224e6f71ca27772689', name: "show-more" }))), this.dismissible && !this.expandingTitle && (hAsync("div", { key: '70e609bdf62b90448894c3f107c435d9b9b9f7ca', class: "duet-alert-dismiss" }, hAsync("duet-button", { key: '1b230dc424387b18799431608c1aab1e63e7035f', variation: "plain", accessibleLabel: this.accessibleLabel, accessibleDescribedBy: this.descriptiveId, iconSize: "medium", icon: "navigation-close", iconOnly: true, margin: "none", color: variation === "default" ? "lt-blue-800" : `${variation}-800`, theme: this.theme, onClick: this.handleDismiss, fixed: true })))))));
4942
+ }, tabindex: this.focusable ? "0" : undefined }, this.position !== "below-nav" && (hAsync("div", { key: 'd0e266b3c576ec9c2532053c292c3bfbbc9d92b0', class: "duet-alert-icon" }, (this.icon && hAsync("duet-icon", { key: 'efa5d1133ba832aa3e88fb419b8f2b454b5536c1', size: "auto", name: this.icon, color: "currentColor" })) || (hAsync("duet-status-icon", { key: '7e00c8f29fb7a33a041acfbd82d1c359eadaf605', strong: true, variation: variation, margin: "none", size: "auto" })))), this.position === "below-nav" && (hAsync("div", { key: '0314c3a000a06a357a7850f6c72002df3d32a541', class: "duet-alert-icon below-nav" }, hAsync("duet-status-icon", { key: 'aec093d7be9e0c0d8940a5e0813495f707daefc0', strong: true, variation: variation, margin: "none", size: "auto" }))), hAsync("div", { key: '97522cbf67c23477ae71603418f85f3d1a13d3c2', class: "duet-alert-content", id: this.descriptiveId }, this.expandingTitle && (hAsync("button", { key: '08d8a6d3b089bad3c54727907f6ba1df213a9103', "aria-expanded": this.isExpanded.toString(), "aria-controls": `${this.descriptiveId}-content`, class: "duet-alert-expander", onClick: this.handleExpandToggle }, hAsync("span", { key: '4efe686cc2dff3077ea3efed7a52c79c3b8c090a', class: "expanding-title" }, this.expandingTitle), hAsync("duet-icon", { key: '2da0cd85883d2e850d65e0682c391079bcce2001', name: "action-arrow-down", color: variation === "default" ? "lt-blue-800" : `${variation}-800`, margin: "none", size: "x-small" }))), (!this.expandingTitle || this.isExpanded) && (hAsync("div", { key: 'dd67482dc47bb4b23d8ff7fdbc7f50a09fd7f355', id: `${this.descriptiveId}-content` }, hAsync("duet-visually-hidden", { key: '0f892f87996b79076b9c04e9d66fadbe681cf913' }, variationLabel), hAsync("slot", { key: 'fac36116e1b9128ad398c4cf997d8c0fd3bca795' }))))), this.hasShowMoreSlot && (hAsync("duet-show-more", { key: '10530ff533c94cb9c85eb23cae9ed3475f3567f2', margin: "none", class: "duet-alert-show-more" }, hAsync("slot", { key: '06e77a909ef86b0ae2e83e818e88c75b8caa9969', name: "show-more" }))), this.dismissible && !this.expandingTitle && (hAsync("div", { key: '65f541e6bf54abcfa91757571cffb18013188c39', class: "duet-alert-dismiss" }, hAsync("duet-button", { key: 'a2e00a7f2d07d04bf388544893ddb56d332c8929', variation: "plain", accessibleLabel: this.accessibleLabel, accessibleDescribedBy: this.descriptiveId, iconSize: "medium", icon: "navigation-close", iconOnly: true, margin: "none", color: variation === "default" ? "lt-blue-800" : `${variation}-800`, theme: this.theme, onClick: this.handleDismiss, fixed: true })))))));
4838
4943
  }
4839
4944
  get element() { return getElement(this); }
4840
4945
  static get style() { return duetAlertCss; }
@@ -4890,6 +4995,15 @@ class DuetBadge {
4890
4995
  * Controls the margin of the component.
4891
4996
  */
4892
4997
  this.margin = "auto";
4998
+ this.getVariationLabel = () => {
4999
+ if (this.variation === "subtle") {
5000
+ return "";
5001
+ }
5002
+ const variation = ["default", "success", "danger", "warning"].includes(this.variation)
5003
+ ? this.variation
5004
+ : "default";
5005
+ return getLocaleString(DuetStatusLabels[variation]);
5006
+ };
4893
5007
  }
4894
5008
  /**
4895
5009
  * Component lifecycle events.
@@ -4903,12 +5017,12 @@ class DuetBadge {
4903
5017
  */
4904
5018
  render() {
4905
5019
  const backgroundClass = `background-${this.background}`;
4906
- return (hAsync(Host, { key: '3095cb737865cb18f99b8a16ef6f93357cb51e13', class: { "duet-m-0": this.margin === "none" } }, hAsync("span", { key: '0b542a92e2e25d7999fd6d6642a3f0ee3c2bff3d', class: {
5020
+ return (hAsync(Host, { key: 'b14e614dd4023904fc135cd76117c4c80a32cfc0', class: { "duet-m-0": this.margin === "none" } }, hAsync("span", { key: '30f4bceaecb891f532f693953286c38a23c9a6a7', class: {
4907
5021
  "duet-badge": true,
4908
5022
  [this.variation]: true,
4909
5023
  [backgroundClass]: true,
4910
5024
  "duet-theme-turva": this.theme === "turva",
4911
- } }, hAsync("slot", { key: '384164367bb8240ec2917a7ca295c43cad4600b2' }))));
5025
+ } }, hAsync("duet-visually-hidden", { key: 'e42b91566e1f09c725692fbe706fd068a7e1ac6f' }, this.getVariationLabel()), hAsync("slot", { key: '7290ab4b6702d3f5a3f5444a8eb66f37163956f1' }))));
4912
5026
  }
4913
5027
  get element() { return getElement(this); }
4914
5028
  static get style() { return duetBadgeCss; }
@@ -4934,7 +5048,7 @@ const DuetPicture = ({ img, sources }) => {
4934
5048
  hAsync("img", Object.assign({}, img))));
4935
5049
  };
4936
5050
 
4937
- const duetBannerCss = "*,\n*::after,\n*::before {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n:host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n margin-right: 36px !important;\n margin-bottom: 36px !important;\n display: flex;\n justify-content: center;\n width: auto;\n container: duet-banner-container;\n container-type: inline-size;\n}\n:host:last-child, :host:last-of-type {\n margin-right: 0 !important;\n}\n\n:host(.duet-m-0) {\n margin: 0 !important;\n}\n\n.duet-banner {\n display: grid;\n grid-template-rows: min-content 1fr;\n width: 100%;\n height: 100%;\n font-family: \"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-style: normal;\n text-align: left;\n border-radius: 16px;\n}\n.duet-banner.duet-p-0 {\n padding: 0 !important;\n}\n.duet-banner.duet-m-0 {\n margin: 0 !important;\n}\n.duet-banner .visual {\n position: relative;\n display: none;\n overflow: hidden;\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 0px) {\n .duet-banner .visual {\n /* stylelint-enable */\n display: block;\n }\n}\n.duet-banner .visual .image-container {\n position: relative;\n aspect-ratio: 2/1;\n overflow: hidden;\n}\n.duet-banner .visual .image {\n position: relative;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n.duet-banner .visual .icon {\n position: absolute;\n}\n.duet-banner .visual .brand-shape {\n position: absolute;\n top: 0;\n left: 72%;\n display: none;\n width: 100%;\n height: 100%;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20344%22%20fill%3D%22none%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M2.72641e-07%2091.1902C0.000476976%2097.9034%200.626077%20104.726%201.92282%20111.592L42.7493%20327.771C43.8045%20333.358%2045.2667%20338.776%2047.0996%20344H160V0H51.1439C19.7799%2019.1253%200.00268143%2053.4178%202.72641e-07%2091.1749C-9.08807e-08%2091.18%20-9.08875e-08%2091.1851%202.72641e-07%2091.1902Z%22%20fill%3D%22%23E6F2F8%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E\");\n}\n.duet-banner .content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 16px 20px 28px;\n}\n.duet-banner .content .description {\n hyphens: auto;\n}\n.duet-banner .action {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n align-items: flex-start;\n justify-content: flex-end;\n padding-top: 16px;\n}\n.duet-banner .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 16px;\n}\n.duet-banner .visual .image-container {\n width: 100%;\n height: auto;\n border-radius: 0;\n}\n.duet-banner .visual .icon {\n bottom: 30px;\n left: 15px;\n}\n.duet-banner.duet-theme-turva {\n font-family: \"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n}\n.duet-banner.duet-theme-turva .visual .brand-shape {\n mask-image: url(\"data:image/svg+xml,%3Csvg viewBox='0 0 160 344' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_7920_3801)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.58983 142.533C0.751086 155.147 0.0746585 167.857 0.00796847 179.225C0.00263853 179.814 0 180.409 0 181.007C0 194.845 1.41172 210.806 3.58065 223.171C5.6528 234.934 8.58716 246.495 12.5981 257.779C21.2249 282.059 34.0151 304.109 50.8401 323.977C56.7824 330.993 63.0921 337.68 69.8162 344H160V0H65.0733C52.1771 10.7866 41.4339 23.4177 32.7528 37.7978C21.1154 57.0822 14.0367 77.9583 9.75424 99.7913C9.09214 103.157 8.55049 106.545 8.00901 109.933C7.75185 111.542 7.49474 113.15 7.22478 114.756C6.74308 117.618 6.24543 120.479 5.74776 123.34C4.6361 129.729 3.52432 136.12 2.58983 142.533Z' fill='%23F5F5F7'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_7920_3801'%3E%3Crect width='160' height='344' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A\");\n}\n.duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-disable */\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-enable */\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-medium .visual, .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-medium .visual .image-container, .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-medium .visual .image, .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-medium .visual .icon, .duet-banner.size-large .visual .icon {\n top: 36px;\n left: 168px;\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-medium .content, .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 28px 28px 28px 0;\n }\n .duet-banner.size-medium .action, .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n@container duet-banner-container (min-width: 586px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-enable */\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n left: 80%;\n }\n}\n.duet-banner.size-large {\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 900px) {\n .duet-banner.size-large {\n /* stylelint-enable */\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-large .visual .icon {\n top: 40px;\n bottom: auto;\n left: 335px;\n }\n .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 48px 48px 48px 0;\n }\n .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n.duet-banner.no-image {\n display: flex;\n justify-content: center;\n padding: 36px 20px;\n}\n.duet-banner.no-image .visual {\n display: none;\n}\n.duet-banner.no-image .content {\n width: 100%;\n max-width: 720px;\n padding: 0;\n}\n.duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n /* stylelint-enable */\n padding: 48px;\n }\n}";
5051
+ const duetBannerCss = "*,\n*::after,\n*::before {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n:host {\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n background: transparent;\n border: 0;\n -moz-appearance: none;\n -webkit-appearance: none;\n appearance: none;\n margin-right: 36px !important;\n margin-bottom: 36px !important;\n display: flex;\n justify-content: center;\n width: auto;\n container: duet-banner-container;\n container-type: inline-size;\n}\n:host:last-child, :host:last-of-type {\n margin-right: 0 !important;\n}\n\n:host(.duet-m-0) {\n margin: 0 !important;\n}\n\n.duet-banner {\n display: grid;\n grid-template-rows: min-content 1fr;\n width: 100%;\n height: 100%;\n font-family: \"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-style: normal;\n text-align: left;\n border-radius: 16px;\n}\n.duet-banner.duet-p-0 {\n padding: 0 !important;\n}\n.duet-banner.duet-m-0 {\n margin: 0 !important;\n}\n.duet-banner .visual {\n position: relative;\n display: none;\n overflow: hidden;\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 0px) {\n .duet-banner .visual {\n /* stylelint-enable */\n display: block;\n }\n}\n.duet-banner .visual .image-container {\n position: relative;\n aspect-ratio: 2/1;\n overflow: hidden;\n}\n.duet-banner .visual .image {\n position: relative;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n.duet-banner .visual .icon {\n position: absolute;\n}\n.duet-banner .visual .brand-shape {\n position: absolute;\n top: 0;\n left: 72%;\n display: none;\n width: 100%;\n height: 100%;\n mask-image: url(\"data:image/svg+xml,%3Csvg%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20344%22%20fill%3D%22none%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M2.72641e-07%2091.1902C0.000476976%2097.9034%200.626077%20104.726%201.92282%20111.592L42.7493%20327.771C43.8045%20333.358%2045.2667%20338.776%2047.0996%20344H160V0H51.1439C19.7799%2019.1253%200.00268143%2053.4178%202.72641e-07%2091.1749C-9.08807e-08%2091.18%20-9.08875e-08%2091.1851%202.72641e-07%2091.1902Z%22%20fill%3D%22%23E6F2F8%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E\");\n transform: scale(101%);\n}\n.duet-banner .content {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 16px 20px 28px;\n}\n.duet-banner .content .description {\n hyphens: auto;\n}\n.duet-banner .action {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n align-items: flex-start;\n justify-content: flex-end;\n padding-top: 16px;\n}\n.duet-banner .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 16px;\n}\n.duet-banner .visual .image-container {\n width: 100%;\n height: auto;\n border-radius: 0;\n}\n.duet-banner .visual .icon {\n bottom: 30px;\n left: 15px;\n}\n.duet-banner.duet-theme-turva {\n font-family: \"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n}\n.duet-banner.duet-theme-turva .visual .brand-shape {\n mask-image: url(\"data:image/svg+xml,%3Csvg viewBox='0 0 160 344' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_7920_3801)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.58983 142.533C0.751086 155.147 0.0746585 167.857 0.00796847 179.225C0.00263853 179.814 0 180.409 0 181.007C0 194.845 1.41172 210.806 3.58065 223.171C5.6528 234.934 8.58716 246.495 12.5981 257.779C21.2249 282.059 34.0151 304.109 50.8401 323.977C56.7824 330.993 63.0921 337.68 69.8162 344H160V0H65.0733C52.1771 10.7866 41.4339 23.4177 32.7528 37.7978C21.1154 57.0822 14.0367 77.9583 9.75424 99.7913C9.09214 103.157 8.55049 106.545 8.00901 109.933C7.75185 111.542 7.49474 113.15 7.22478 114.756C6.74308 117.618 6.24543 120.479 5.74776 123.34C4.6361 129.729 3.52432 136.12 2.58983 142.533Z' fill='%23F5F5F7'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_7920_3801'%3E%3Crect width='160' height='344' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A\");\n}\n.duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-disable */\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-enable */\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-medium .visual, .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-top-right-radius: 0;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-medium .visual .image-container, .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-medium .visual .image, .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-medium .visual .icon, .duet-banner.size-large .visual .icon {\n top: 36px;\n left: 168px;\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-medium .content, .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 28px 28px 28px 0;\n }\n .duet-banner.size-medium .action, .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n@container duet-banner-container (min-width: 586px) {\n .duet-banner.size-medium, .duet-banner.size-large {\n /* stylelint-enable */\n }\n .duet-banner.size-medium .visual .brand-shape, .duet-banner.size-large .visual .brand-shape {\n left: 80%;\n }\n}\n.duet-banner.size-large {\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 900px) {\n .duet-banner.size-large {\n /* stylelint-enable */\n grid-template-rows: none;\n grid-template-columns: 50% 50%;\n }\n .duet-banner.size-large .visual {\n border-top-left-radius: 16px;\n border-bottom-left-radius: 16px;\n }\n .duet-banner.size-large .visual .image-container {\n height: 100%;\n }\n .duet-banner.size-large .visual .image {\n width: 100%;\n height: 100%;\n }\n .duet-banner.size-large .visual .icon {\n top: 40px;\n bottom: auto;\n left: 335px;\n }\n .duet-banner.size-large .visual .brand-shape {\n display: block;\n }\n .duet-banner.size-large .content {\n align-items: flex-start;\n justify-content: center;\n padding: 48px 48px 48px 0;\n }\n .duet-banner.size-large .action {\n flex-grow: 0;\n }\n}\n.duet-banner.no-image {\n display: flex;\n justify-content: center;\n padding: 36px 20px;\n}\n.duet-banner.no-image .visual {\n display: none;\n}\n.duet-banner.no-image .content {\n width: 100%;\n max-width: 720px;\n padding: 0;\n}\n.duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n /* stylelint-disable */\n}\n@container duet-banner-container (min-width: 486px) {\n .duet-banner.no-image.size-medium, .duet-banner.no-image.size-large {\n /* stylelint-enable */\n padding: 48px;\n }\n}";
4938
5052
 
4939
5053
  /**
4940
5054
  * @slot heading - Slot for heading content. Only span should be used in this slot.
@@ -5050,14 +5164,14 @@ class DuetBanner {
5050
5164
  img: { src: this.image, alt: "", loading: "lazy", class: "image", role: "presentation" },
5051
5165
  sources: parsePossibleJSON(this.sources),
5052
5166
  };
5053
- return (hAsync(Host, { key: 'd279b27f54fba40d358a850d94118a0caa571737', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: 'fa270dd8231b5b22d2c0157105df3171fd56f450', class: {
5167
+ return (hAsync(Host, { key: '12cea619c3a29693b7bbb7189962468eee715f68', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: 'b4e70162ea52e299c8cc3481961e1354f7a348d0', class: {
5054
5168
  "duet-banner": true,
5055
5169
  "duet-theme-turva": this.theme === "turva",
5056
5170
  [this.currentSize]: true,
5057
5171
  "size-medium": this.size === "medium" || this.size === "large",
5058
5172
  "size-large": this.size === "large",
5059
5173
  "no-image": !this.image,
5060
- }, style: bannerStyles }, hAsync("div", { key: 'c3cbef43ed49f67f5c429692c0d673f65341cbf8', class: "visual" }, hAsync("div", { key: '6e1defb61acf399734e5843f100d17a467acc52c', class: "image-container" }, this.image && hAsync(DuetPicture, Object.assign({ key: '9b8cf3946c557db548bf9e4a63a9f77e1a528eca' }, pictureSource))), 1 > 2, hAsync("div", { key: 'de431601a73be43d79f29e7e4cc4e943ae00e545', style: bannerStyles, class: "brand-shape" })), hAsync("div", { key: '50f7a5fc5f4ade0905bc272e29e7d0c4912c1020', class: "content" }, this.hasHeadingSlot && (hAsync("div", { key: '73cd6a4f3f4022f897df0ce57a2316043f403dba', class: "heading" }, hAsync("duet-heading", { key: '1d7d47b81255653206534bb228d11e8eee154c2c', theme: this.theme, level: this.headingLevel, "visual-level": this.currentSize === "large" ? "h2" : "h3", "fixed-size": true, margin: "none", color: this.textColor }, hAsync("span", { key: 'f340c4b1e80fdd5a64ed8d61512879b290662b37' }, hAsync("slot", { key: '2041e9d5b57a5adb5a325e4bf2052cece9d59d83', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: '77bee71dfd8d16749a238336fb0ca182dc6da387', class: "description", style: { color } }, hAsync("slot", { key: 'bc10b7a951bf3ca738bb2214d4f78a2258f373d3', name: "description" }))), this.hasActionSlot && (hAsync("div", { key: 'c842a4bd1a20ff10617c0df53b0491e897de4371', class: "action" }, hAsync("slot", { key: 'a17d57f164e2973eb0bdaa8902b93eaafdc3b96e', name: "action" })))))));
5174
+ }, style: bannerStyles }, hAsync("div", { key: '77b6658e115f6c6ad322e4d81607a842de28ad7f', class: "visual" }, hAsync("div", { key: '1140037769c9615f7fc233d5ef7db5e93e5b1434', class: "image-container" }, this.image && hAsync(DuetPicture, Object.assign({ key: '63b777ee272d5fe8c7df6f6a8bff7b84a44c9dff' }, pictureSource))), 1 > 2, hAsync("div", { key: '5af78573b362552f7bdc061be9bed68373255aae', style: bannerStyles, class: "brand-shape" })), hAsync("div", { key: '99f371a78ff9d7e85cff37c9c5eb2d49f51e7aaa', class: "content" }, this.hasHeadingSlot && (hAsync("div", { key: '8684e9cbd15cd42e8bce73271543ce7fc91b63fc', class: "heading" }, hAsync("duet-heading", { key: '2d3348662100fc98f088ac9dee4a5a38681ce9d7', theme: this.theme, level: this.headingLevel, "visual-level": this.currentSize === "large" ? "h2" : "h3", "fixed-size": true, margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: '692332080a527df5d5ed15773ef34efbda983f15' }, hAsync("slot", { key: '8a0a0e72edfcf4c55f66b8565fe90b948e86c4bc', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: 'daba4eb6a51dc590ea3591132b8cddebb5cf9756', class: "description", style: { color } }, hAsync("slot", { key: '5d8e3bc1324a170bf266b89e8815896c470a512a', name: "description" }))), this.hasActionSlot && (hAsync("div", { key: 'c9d0e0f700ef91081cad82c8edb5db69ee38ef56', class: "action" }, hAsync("slot", { key: 'e72dfb579efb7ad822de3f59d3d828fffd3ef015', name: "action" })))))));
5061
5175
  }
5062
5176
  get element() { return getElement(this); }
5063
5177
  static get style() { return duetBannerCss; }
@@ -5151,14 +5265,14 @@ class DuetBreadcrumb {
5151
5265
  */
5152
5266
  render() {
5153
5267
  var _a;
5154
- return (hAsync(Host, { key: '684a35b905d71dc9d10dd884aab962d48d089f9c', role: "listitem" }, hAsync("div", { key: 'd90e18cd7ab0963b239239116aa4f1ce2a13cb82', class: "container" }, this.icon === "arrow-right-small-icon" && (hAsync("duet-icon", { key: '810084be2911ea489f7475538d10c9be7c53977f', class: "duet-breadrumbs-arrow", size: "auto", icon: arrowRightSmallIcon.svg, margin: "none", color: "currentColor" })), hAsync("a", { key: '1a79a625c633de3599cda673945aaa1d3e3489e8', class: {
5268
+ return (hAsync(Host, { key: '804eec793a21db6f2174bd33b759663f3f2f07ef', role: "listitem" }, hAsync("div", { key: '6f0a2c80da341b1b1b10a6d9ee0c010de21b97a2', class: "container" }, this.icon === "arrow-right-small-icon" && (hAsync("duet-icon", { key: 'df6aacb1f535646f95ccf60189103eec186c993d', class: "duet-breadrumbs-arrow", size: "auto", icon: arrowRightSmallIcon.svg, margin: "none", color: "currentColor" })), hAsync("a", { key: '0f9ffe08c57d1f91005504dd9c1c134c5d0e71d4', class: {
5155
5269
  "duet-breadcrumb": true,
5156
5270
  "duet-theme-turva": this.theme === "turva",
5157
5271
  }, href: this.href ? this.href : undefined, "aria-label": `${!this.href ? `${getLocaleString(this.currentCrumb)} ` : ""}${(_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.element.innerHTML}`, role: "link" }, this.icon !== "arrow-right-small-icon" &&
5158
5272
  this.icon && [
5159
- hAsync("duet-icon", { key: '27e9d39e2e3766a07e8680ef1926c6d46205ec36', size: this.iconSize, name: this.icon, margin: "none", color: "currentColor" }),
5160
- this.hasSlottedContent && hAsync("duet-spacer", { key: 'eccab08849facdca68c84146145b451d9e7a04bf', size: "x-small", direction: "horizontal" }),
5161
- ], hAsync("slot", { key: 'af12cc0eae54fb0f49c7bbe0ef4cdd52469ce4b7' })))));
5273
+ hAsync("duet-icon", { key: '417b6a4368e7d7913a09dccc677b32373f92938c', size: this.iconSize, name: this.icon, margin: "none", color: "currentColor" }),
5274
+ this.hasSlottedContent && hAsync("duet-spacer", { key: '692d70f2a385d4283478e26ad13c4bbf175387a7', size: "x-small", direction: "horizontal" }),
5275
+ ], hAsync("slot", { key: '6dada45a29faa7791d6f2a9f60993206f314bc38' })))));
5162
5276
  }
5163
5277
  get element() { return getElement(this); }
5164
5278
  static get style() { return duetBreadcrumbCss; }
@@ -5227,11 +5341,11 @@ class DuetBreadcrumbs {
5227
5341
  */
5228
5342
  render() {
5229
5343
  const color = getColorByName(this.color);
5230
- return (hAsync(Host, { key: '112f666c89f42e44282c9f30dd4fe9f4a2a6d00d' }, hAsync("nav", { key: 'a51ec0c6909fc32d4c983d261ad0d61ec04e875d', "aria-label": this.breadcrumbsAriaLabel, class: {
5344
+ return (hAsync(Host, { key: '7db0fc2e9f3532509bb7d962ee2df0f7fc208e23' }, hAsync("nav", { key: '993ffd093511c3ac5127371939e00ee21c35d74c', "aria-label": this.breadcrumbsAriaLabel, class: {
5231
5345
  "duet-breadcrumbs": true,
5232
5346
  "duet-theme-turva": this.theme === "turva",
5233
5347
  [this.variation]: true,
5234
- } }, hAsync("div", { key: '6d3d699aed0172cc902119f9156c9454dbbdb5eb', class: "container" }, hAsync("div", { key: '51e6beb73135662d0159ea0200dd3e591ac93e6c', role: "list", class: "list", style: { color } }, hAsync("slot", { key: '1a877a3c6d97a1960ec0710e224578b4c271aa24' })), hAsync("div", { key: 'f5b4a55093f5ff07463144bb29ca6194bbeae29f', class: "bottom-border bottom-border--container" })), hAsync("div", { key: '84c9ebdce9ac7fd6b9789be0fb3ce3e858b3eb35', class: "bottom-border bottom-border--nav" }))));
5348
+ } }, hAsync("div", { key: 'ba30ff0a1a1b9c1b480e4ebf12e656b419e65e6d', class: "container" }, hAsync("div", { key: '35577bbfaa142d6567126c7ed93d6b6ac5e9339e', role: "list", class: "list", style: { color } }, hAsync("slot", { key: '5d755022c1fbbc72a42ccd183b8b80f5ec221691' })), hAsync("div", { key: 'abf72274cd0f5cfd82a95829ee6d8e62ce480798', class: "bottom-border bottom-border--container" })), hAsync("div", { key: '7c0fdac81e597120e606d4546aab7dbd51d1b8db', class: "bottom-border bottom-border--nav" }))));
5235
5349
  }
5236
5350
  get element() { return getElement(this); }
5237
5351
  static get style() { return duetBreadcrumbsCss; }
@@ -5250,33 +5364,7 @@ class DuetBreadcrumbs {
5250
5364
  }; }
5251
5365
  }
5252
5366
 
5253
- const DuetStringsDownloadLinkDefaults = {
5254
- fi: "Linkki tallennetaan laitteellesi",
5255
- sv: "Nedladdningslänk",
5256
- en: "Download link",
5257
- };
5258
- const DuetStringsExternalDefaults = {
5259
- fi: "Avautuu uuteen ikkunaan",
5260
- sv: "Öppnas i nytt fönster",
5261
- en: "Opens in a new window",
5262
- };
5263
- const DuetStringsLoadingDefaults = {
5264
- fi: "Ladataan",
5265
- sv: "Laddas",
5266
- en: "Loading…",
5267
- };
5268
- const DuetStringsPleaseWaitDefaults = {
5269
- fi: "Odota, ole hyvä.",
5270
- sv: "Vänligen vänta.",
5271
- en: "Please wait.",
5272
- };
5273
- const DuetStringsListStepOfTotal = {
5274
- fi: "Lista jossa {total} kohtaa. Olet kohdassa {current}.",
5275
- en: "List with {total} steps. You are on step {current}.",
5276
- sv: "Lista med {total} steg. Du är på steg {current}.",
5277
- };
5278
-
5279
- const duetButtonCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;font-size:0;vertical-align:bottom;-webkit-tap-highlight-color:transparent}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host{width:100%}}:host(.square){margin-right:12px !important}:host(.square):last-child,:host(.square):last-of-type{margin-right:0 !important}:host(.input-button){z-index:250}:host(.duet-small),:host(.duet-x-small){margin-right:4px !important;margin-bottom:8px !important}:host(.duet-small):last-child,:host(.duet-small):last-of-type,:host(.duet-x-small):last-child,:host(.duet-x-small):last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host(.duet-small),:host(.duet-x-small){width:auto}}:host(.duet-x-small){margin-right:2px !important}:host(.duet-x-small):last-child,:host(.duet-x-small):last-of-type{margin-right:0 !important}:host(.square.duet-small),:host(.square.duet-x-small){margin-right:8px !important}:host(.square.duet-small):last-child,:host(.square.duet-small):last-of-type,:host(.square.duet-x-small):last-child,:host(.square.duet-x-small):last-of-type{margin-right:0 !important}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}:host(.duet-fixed){width:auto !important}:host(:last-child){margin-right:0 !important}.duet-button-container{position:relative;display:block;width:100%}.duet-button{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;align-items:center;width:100%;min-width:8rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.1;color:rgb(0, 119, 179) !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:1px;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, outline 300ms ease, padding 300ms ease, box-shadow 300ms ease}.duet-button.duet-p-0{padding:0 !important}.duet-button.duet-m-0{margin:0 !important}.duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-button:focus,.duet-button:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-button.duet-button-size-medium{height:50px;padding-right:30px;padding-left:30px;font-size:1rem;border-radius:25px}.duet-theme-turva .duet-button.duet-button-size-medium{padding-right:24px;padding-left:24px;border-radius:12.5px}.duet-button.duet-button-size-medium.square{border-radius:12.5px}.duet-button.duet-button-size-medium.icon-left{padding-left:24px}.duet-theme-turva .duet-button.duet-button-size-medium.icon-left{padding-left:18px}.duet-button.duet-button-size-medium.icon-right{padding-right:24px}.duet-theme-turva .duet-button.duet-button-size-medium.icon-right{padding-right:18px}.duet-button.duet-button-size-small{height:40px;padding-right:20px;padding-left:20px;font-size:0.875rem;border-radius:20px}.duet-theme-turva .duet-button.duet-button-size-small{padding-right:18px;padding-left:18px;border-radius:10px}.duet-button.duet-button-size-small.square{border-radius:10px}.duet-button.duet-button-size-small.icon-left{padding-left:18px}.duet-theme-turva .duet-button.duet-button-size-small.icon-left{padding-left:14px}.duet-button.duet-button-size-small.icon-right{padding-right:18px}.duet-theme-turva .duet-button.duet-button-size-small.icon-right{padding-right:14px}.duet-button.duet-button-size-x-small{height:32px;padding-right:12px;padding-left:12px;font-size:0.75rem;border-radius:8px}.duet-button.duet-button-size-x-small.icon-left{padding-left:10px}.duet-button.duet-button-size-x-small.icon-right{padding-right:10px}.duet-button.plain.duet-p-0{height:auto}.duet-button:not(.input-button-primary,.input-button-secondary,.input-button-embedded){font-variant-numeric:tabular-nums}.duet-button.duet-button-text-center{text-align:center !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only){min-width:48px}.duet-button.duet-button-is-small:not(.duet-button-icon-only).plain{padding-right:0 !important;padding-left:0 !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only).duet-p-0{padding:0 !important}.duet-theme-turva .duet-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(198, 12, 48) !important}.duet-button .duet-button-contents{position:relative;display:flex;gap:10px;align-items:center;margin:0 auto;pointer-events:none}.duet-button .duet-button-contents.icon-right{flex-direction:row-reverse}.duet-button .duet-button-contents .duet-button-contents-slot{position:relative;top:0}.duet-button.duet-no-wrap{white-space:nowrap}.duet-button svg{width:100%;min-width:100%;fill:currentColor}.duet-button .duet-button-icon{display:flex;align-items:center}.duet-button .duet-button-icon duet-icon{width:16px;height:16px}.duet-button .duet-button-icon.large duet-icon{width:20px;height:20px}.duet-button .duet-button-icon.medium-small duet-icon{width:10px;height:10px}.duet-button .duet-button-icon.small duet-icon{width:7px;height:7px}.duet-button:active:not([disabled]){opacity:0.75;transition:none}.duet-button.default{background:rgb(255, 255, 255);border-color:rgb(181, 198, 208)}.duet-theme-turva .duet-button.default{color:rgb(198, 12, 48) !important;border-color:rgb(222, 224, 228)}.duet-button.default:hover{border-color:rgb(0, 119, 179);outline:2px solid rgb(0, 119, 179);outline-offset:-2px}.duet-theme-turva .duet-button.default:hover{border-color:rgb(198, 12, 48);outline-color:rgb(198, 12, 48)}.duet-button.default.duet-button-negative{background-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.default.duet-button-negative{background-color:rgb(222, 224, 228) !important}.duet-button.default.duet-button-negative:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.default.duet-button-negative:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.primary,.duet-button.input-button-primary,.duet-button.input-button-left-primary{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179);border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.primary,.duet-theme-turva .duet-button.input-button-primary,.duet-theme-turva .duet-button.input-button-left-primary{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48);border-color:rgb(198, 12, 48)}.duet-button.primary:hover,.duet-button.input-button-primary:hover,.duet-button.input-button-left-primary:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px 0 rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.primary:hover,.duet-theme-turva .duet-button.input-button-primary:hover,.duet-theme-turva .duet-button.input-button-left-primary:hover{background:rgb(126, 2, 35);border-color:rgb(126, 2, 35)}.duet-button.primary:focus,.duet-button.input-button-primary:focus,.duet-button.input-button-left-primary:focus{outline:0;box-shadow:0 0 0 1px #fff, 0 0 0 4px rgba(0, 119, 179, 0.75)}.duet-theme-turva .duet-button.primary:focus,.duet-theme-turva .duet-button.input-button-primary:focus,.duet-theme-turva .duet-button.input-button-left-primary:focus{box-shadow:0 0 0 1px #fff, 0 0 0 4px rgba(23, 28, 58, 0.75)}.duet-button.secondary,.duet-button.input-button-secondary,.duet-button.input-button-left-secondary,.duet-button.input-button-embedded{color:rgb(8, 42, 77) !important;background:transparent;border-color:rgb(8, 42, 77)}.duet-theme-turva .duet-button.secondary,.duet-theme-turva .duet-button.input-button-secondary,.duet-theme-turva .duet-button.input-button-left-secondary,.duet-theme-turva .duet-button.input-button-embedded{color:rgb(23, 28, 58) !important;border-color:rgb(23, 28, 58)}.duet-button.secondary:hover,.duet-button.input-button-secondary:hover,.duet-button.input-button-left-secondary:hover,.duet-button.input-button-embedded:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.secondary:hover,.duet-theme-turva .duet-button.input-button-secondary:hover,.duet-theme-turva .duet-button.input-button-left-secondary:hover,.duet-theme-turva .duet-button.input-button-embedded:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.secondary.duet-button-negative,.duet-button.input-button-secondary.duet-button-negative,.duet-button.input-button-left-secondary.duet-button-negative,.duet-button.input-button-embedded.duet-button-negative{color:rgb(212, 223, 229) !important;border-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-embedded.duet-button-negative{color:rgb(222, 224, 228) !important}.duet-button.secondary.duet-button-negative:hover,.duet-button.input-button-secondary.duet-button-negative:hover,.duet-button.input-button-left-secondary.duet-button-negative:hover,.duet-button.input-button-embedded.duet-button-negative:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-embedded.duet-button-negative:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.input-button-embedded{width:40px;min-width:40px !important;min-height:40px !important;margin:4px !important;border-width:0 !important;border-radius:4px !important}.duet-button.input-button{height:auto}.duet-button.negative{color:rgb(8, 42, 77) !important;background:rgb(255, 255, 255);border-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.negative{color:rgb(23, 28, 58) !important}.duet-button.negative:hover{color:rgb(255, 255, 255) !important;background:transparent;border-color:rgb(255, 255, 255)}.duet-button.negative:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-theme-turva .duet-button.negative:focus{box-shadow:0 0 0 1px #0077b3, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-button.destructive-primary{color:rgb(255, 255, 255) !important;background:rgb(214, 28, 82);border-color:rgb(214, 28, 82)}.duet-theme-turva .duet-button.destructive-primary{color:rgb(255, 255, 255) !important;background:rgb(214, 28, 82);border-color:rgb(214, 28, 82)}.duet-button.destructive-primary:hover{background:#ab1642;border-color:#ab1642;box-shadow:0 4px 20px 0 rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.destructive-primary:hover{background:#ab1642}.duet-button.destructive,.duet-button.destructive-secondary{color:rgb(214, 28, 82) !important;background:rgb(255, 255, 255);border-color:rgb(214, 28, 82)}.duet-theme-turva .duet-button.destructive,.duet-theme-turva .duet-button.destructive-secondary{color:rgb(214, 28, 82) !important;background:rgb(255, 255, 255);border-color:rgb(214, 28, 82)}.duet-button.destructive:hover,.duet-button.destructive-secondary:hover{color:rgb(255, 255, 255) !important;background:#ab1642;border-color:#ab1642}.duet-theme-turva .duet-button.destructive:hover,.duet-theme-turva .duet-button.destructive-secondary:hover{color:rgb(255, 255, 255) !important;background:#ab1642;border-color:#ab1642}.duet-button.plain{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}.duet-theme-turva .duet-button.plain{color:rgb(198, 12, 48) !important;background:transparent;border-color:transparent}.duet-button.plain.duet-p-0 .duet-button-contents{height:auto}.duet-button.plain[disabled]{color:rgb(98, 121, 138) !important;cursor:not-allowed;background:transparent !important;border-color:transparent !important}.duet-theme-turva .duet-button.plain[disabled]{color:transparent !important;cursor:not-allowed;background:transparent !important;border-color:rgb(222, 224, 228) !important}.duet-button.plain:hover{color:rgb(0, 75, 129) !important;background:transparent !important}.duet-theme-turva .duet-button.plain:hover{color:rgb(126, 2, 35) !important}.duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}.duet-theme-turva .duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}.duet-button.plain.duet-button-negative:hover{color:rgba(255, 255, 255, 0.8) !important}.duet-button.duet-button-icon-only{min-width:48px;min-height:48px;padding:0 !important}.duet-button.duet-button-icon-only .duet-button-contents{position:static}.duet-button.duet-button-icon-only .duet-button-icon.left.large,.duet-button.duet-button-icon-only .duet-button-icon.left.medium,.duet-button.duet-button-icon-only .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary,.duet-button.duet-button.input-button-embedded,.duet-button.duet-button.input-button-left-primary,.duet-button.duet-button.input-button-left-secondary{box-sizing:content-box;min-width:48px;min-height:48px;padding:0 !important;border-width:1px}.duet-button.duet-button.input-button-primary .duet-button-contents,.duet-button.duet-button.input-button-secondary .duet-button-contents,.duet-button.duet-button.input-button-embedded .duet-button-contents,.duet-button.duet-button.input-button-left-primary .duet-button-contents,.duet-button.duet-button.input-button-left-secondary .duet-button-contents{position:static}.duet-button.duet-button.input-button-primary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-secondary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-embedded .duet-button-contents.icon-right,.duet-button.duet-button.input-button-left-primary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-left-secondary .duet-button-contents.icon-right{padding:0 16px}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary,.duet-button.duet-button.input-button-embedded{border-top-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:0}.duet-button.duet-button.input-button-primary .duet-button-icon.left.large,.duet-button.duet-button.input-button-primary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-primary .duet-button-icon.left.small,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.large,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.small,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.large,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.medium,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-embedded{border-left-width:0}.duet-button.duet-button.input-button-left-primary,.duet-button.duet-button.input-button-left-secondary{border-top-left-radius:4px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:4px}.duet-button.duet-button.input-button-left-primary .duet-button-contents,.duet-button.duet-button.input-button-left-secondary .duet-button-contents{position:static}.duet-button.square{width:52px;min-width:auto !important;padding:0 !important;font-size:1rem;border-color:rgb(181, 198, 208);border-width:1px}.duet-button.square.duet-button-size-small{width:42px;font-size:0.875rem}.duet-button.square.duet-button-size-x-small{width:34px;font-size:0.875rem}.duet-button.square.duet-button-negative{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179);border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.square.duet-button-negative{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48);border-color:rgb(198, 12, 48)}.duet-theme-turva .duet-button.square{border-color:rgb(222, 224, 228)}.duet-button.square:hover{border-color:rgb(0, 119, 179);outline:2px solid rgb(0, 119, 179);outline-offset:-2px}.duet-theme-turva .duet-button.square:hover{border-color:rgb(198, 12, 48);outline-color:rgb(198, 12, 48)}.duet-button.square .duet-button-contents{gap:0}.duet-button[disabled],.duet-button[disabled]:hover,.duet-button.duet-button-negative[disabled],.duet-button.duet-button-negative[disabled]:hover{color:rgb(98, 121, 138) !important;cursor:not-allowed;background:rgb(212, 223, 229) !important;border-color:rgb(212, 223, 229) !important;outline-color:rgb(212, 223, 229) !important;box-shadow:none !important}.duet-theme-turva .duet-button[disabled],.duet-theme-turva .duet-button[disabled]:hover,.duet-theme-turva .duet-button.duet-button-negative [disabled],.duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:rgb(143, 147, 158) !important;cursor:not-allowed;background:rgb(222, 224, 228) !important;border-color:rgb(222, 224, 228) !important;outline-color:rgb(222, 224, 228) !important}.duet-button-is-loading.primary,.duet-button-is-loading.input-button-primary{color:rgb(255, 255, 255)}.duet-button-is-loading.default{color:rgb(0, 119, 179)}.duet-button-is-loading.default.duet-theme-turva{color:rgb(198, 12, 48)}.duet-button-is-loading .duet-button-contents{visibility:hidden;opacity:0}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default{color:#e61740 !important;border-color:#fbe1d1}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default:hover{border-color:#e61740;outline-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default.duet-button-negative{background-color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default.duet-button-negative:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.primary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-primary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-primary{background:#e61740;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded{color:#172a3b !important;border-color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded.duet-button-negative{color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded.duet-button-negative:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.negative{color:#172a3b !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.negative:hover{color:rgb(255, 255, 255) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain{color:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain:hover{color:rgba(255, 255, 255, 0.8) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain[disabled]{border-color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square{border-color:#fbe1d1}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square.duet-button-negative{background:#e61740;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square:hover{border-color:#e61740;outline-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button-is-loading.default{color:#e61740}";
5367
+ const duetButtonCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;font-size:0;vertical-align:bottom;-webkit-tap-highlight-color:transparent}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host{width:100%}}:host(.square){margin-right:12px !important}:host(.square):last-child,:host(.square):last-of-type{margin-right:0 !important}:host(.input-button){z-index:250}:host(.duet-small),:host(.duet-x-small){margin-right:4px !important;margin-bottom:8px !important}:host(.duet-small):last-child,:host(.duet-small):last-of-type,:host(.duet-x-small):last-child,:host(.duet-x-small):last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host(.duet-small),:host(.duet-x-small){width:auto}}:host(.duet-x-small){margin-right:2px !important}:host(.duet-x-small):last-child,:host(.duet-x-small):last-of-type{margin-right:0 !important}:host(.square.duet-small),:host(.square.duet-x-small){margin-right:8px !important}:host(.square.duet-small):last-child,:host(.square.duet-small):last-of-type,:host(.square.duet-x-small):last-child,:host(.square.duet-x-small):last-of-type{margin-right:0 !important}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}:host(.duet-fixed){width:auto !important}:host(:last-child){margin-right:0 !important}.duet-button-container{position:relative;display:block;width:100%}.duet-button{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;align-items:center;width:100%;min-width:8rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.1;color:rgb(0, 119, 179) !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:1px;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, outline 300ms ease, padding 300ms ease, box-shadow 300ms ease}.duet-button.duet-p-0{padding:0 !important}.duet-button.duet-m-0{margin:0 !important}.duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-button:focus,.duet-button:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-button.duet-button-size-medium{height:50px;padding-right:30px;padding-left:30px;font-size:1rem;border-radius:25px}.duet-theme-turva .duet-button.duet-button-size-medium{padding-right:24px;padding-left:24px;border-radius:12.5px}.duet-button.duet-button-size-medium.square{border-radius:12.5px}.duet-button.duet-button-size-medium.icon-left{padding-left:24px}.duet-theme-turva .duet-button.duet-button-size-medium.icon-left{padding-left:18px}.duet-button.duet-button-size-medium.icon-right{padding-right:24px}.duet-theme-turva .duet-button.duet-button-size-medium.icon-right{padding-right:18px}.duet-button.duet-button-size-small{height:40px;padding-right:20px;padding-left:20px;font-size:0.875rem;border-radius:20px}.duet-theme-turva .duet-button.duet-button-size-small{padding-right:18px;padding-left:18px;border-radius:10px}.duet-button.duet-button-size-small.square{border-radius:10px}.duet-button.duet-button-size-small.icon-left{padding-left:18px}.duet-theme-turva .duet-button.duet-button-size-small.icon-left{padding-left:14px}.duet-button.duet-button-size-small.icon-right{padding-right:18px}.duet-theme-turva .duet-button.duet-button-size-small.icon-right{padding-right:14px}.duet-button.duet-button-size-x-small{height:32px;padding-right:12px;padding-left:12px;font-size:0.75rem;border-radius:8px}.duet-button.duet-button-size-x-small.icon-left{padding-left:10px}.duet-button.duet-button-size-x-small.icon-right{padding-right:10px}.duet-button.plain.duet-p-0{height:auto}.duet-button:not(.input-button-primary,.input-button-secondary,.input-button-embedded){font-variant-numeric:tabular-nums}.duet-button.duet-button-text-center{text-align:center !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only){min-width:48px}.duet-button.duet-button-is-small:not(.duet-button-icon-only).plain{padding-right:0 !important;padding-left:0 !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only).duet-p-0{padding:0 !important}.duet-theme-turva .duet-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(198, 12, 48) !important}.duet-button .duet-button-contents{position:relative;display:flex;gap:10px;align-items:center;margin:0 auto;pointer-events:none}.duet-button .duet-button-contents.icon-right{flex-direction:row-reverse}.duet-button .duet-button-contents .duet-button-contents-slot{position:relative;top:0}.duet-button.duet-no-wrap{white-space:nowrap}.duet-button svg{width:100%;min-width:100%;fill:currentColor}.duet-button .duet-button-icon{display:flex;align-items:center}.duet-button .duet-button-icon duet-icon{width:16px;height:16px}.duet-button .duet-button-icon.large duet-icon{width:20px;height:20px}.duet-button .duet-button-icon.medium-small duet-icon{width:10px;height:10px}.duet-button .duet-button-icon.small duet-icon{width:7px;height:7px}.duet-button:active:not([disabled]){opacity:0.75;transition:none}.duet-button.default{background:rgb(255, 255, 255);border-color:rgb(181, 198, 208)}.duet-theme-turva .duet-button.default{color:rgb(198, 12, 48) !important;border-color:rgb(222, 224, 228)}.duet-button.default:hover{border-color:rgb(0, 119, 179);outline:2px solid rgb(0, 119, 179);outline-offset:-2px}.duet-theme-turva .duet-button.default:hover{border-color:rgb(198, 12, 48);outline-color:rgb(198, 12, 48)}.duet-button.default.duet-button-negative{background-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.default.duet-button-negative{background-color:rgb(222, 224, 228) !important}.duet-button.default.duet-button-negative:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.default.duet-button-negative:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.primary,.duet-button.input-button-primary,.duet-button.input-button-left-primary{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179);border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.primary,.duet-theme-turva .duet-button.input-button-primary,.duet-theme-turva .duet-button.input-button-left-primary{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48);border-color:rgb(198, 12, 48)}.duet-button.primary:hover,.duet-button.input-button-primary:hover,.duet-button.input-button-left-primary:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px 0 rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.primary:hover,.duet-theme-turva .duet-button.input-button-primary:hover,.duet-theme-turva .duet-button.input-button-left-primary:hover{background:rgb(126, 2, 35);border-color:rgb(126, 2, 35)}.duet-button.primary:focus,.duet-button.input-button-primary:focus,.duet-button.input-button-left-primary:focus{outline:0;box-shadow:0 0 0 1px #fff, 0 0 0 4px rgba(0, 119, 179, 0.75)}.duet-theme-turva .duet-button.primary:focus,.duet-theme-turva .duet-button.input-button-primary:focus,.duet-theme-turva .duet-button.input-button-left-primary:focus{box-shadow:0 0 0 1px #fff, 0 0 0 4px rgba(23, 28, 58, 0.75)}.duet-button.secondary,.duet-button.input-button-secondary,.duet-button.input-button-left-secondary,.duet-button.input-button-embedded{color:rgb(8, 42, 77) !important;background:transparent;border-color:rgb(8, 42, 77)}.duet-theme-turva .duet-button.secondary,.duet-theme-turva .duet-button.input-button-secondary,.duet-theme-turva .duet-button.input-button-left-secondary,.duet-theme-turva .duet-button.input-button-embedded{color:rgb(23, 28, 58) !important;border-color:rgb(23, 28, 58)}.duet-button.secondary:hover,.duet-button.input-button-secondary:hover,.duet-button.input-button-left-secondary:hover,.duet-button.input-button-embedded:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.secondary:hover,.duet-theme-turva .duet-button.input-button-secondary:hover,.duet-theme-turva .duet-button.input-button-left-secondary:hover,.duet-theme-turva .duet-button.input-button-embedded:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.secondary.duet-button-negative,.duet-button.input-button-secondary.duet-button-negative,.duet-button.input-button-left-secondary.duet-button-negative,.duet-button.input-button-embedded.duet-button-negative{color:rgb(212, 223, 229) !important;border-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-embedded.duet-button-negative{color:rgb(222, 224, 228) !important}.duet-button.secondary.duet-button-negative:hover,.duet-button.input-button-secondary.duet-button-negative:hover,.duet-button.input-button-left-secondary.duet-button-negative:hover,.duet-button.input-button-embedded.duet-button-negative:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-embedded.duet-button-negative:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}.duet-button.input-button-embedded{width:40px;min-width:40px !important;min-height:40px !important;margin:4px !important;border-width:0 !important;border-radius:4px !important}.duet-button.input-button{height:auto}.duet-button.negative{color:rgb(8, 42, 77) !important;background:rgb(255, 255, 255);border-color:rgb(255, 255, 255)}.duet-theme-turva .duet-button.negative{color:rgb(23, 28, 58) !important}.duet-button.negative:hover{color:rgb(255, 255, 255) !important;background:transparent;border-color:rgb(255, 255, 255)}.duet-button.negative:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-theme-turva .duet-button.negative:focus{box-shadow:0 0 0 1px #0077b3, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-button.destructive-primary{color:rgb(255, 255, 255) !important;background:rgb(214, 28, 82);border-color:rgb(214, 28, 82)}.duet-theme-turva .duet-button.destructive-primary{color:rgb(255, 255, 255) !important;background:rgb(214, 28, 82);border-color:rgb(214, 28, 82)}.duet-button.destructive-primary:hover{background:#ab1642;border-color:#ab1642;box-shadow:0 4px 20px 0 rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.destructive-primary:hover{background:#ab1642}.duet-button.destructive,.duet-button.destructive-secondary{color:rgb(214, 28, 82) !important;background:rgb(255, 255, 255);border-color:rgb(214, 28, 82)}.duet-theme-turva .duet-button.destructive,.duet-theme-turva .duet-button.destructive-secondary{color:rgb(214, 28, 82) !important;background:rgb(255, 255, 255);border-color:rgb(214, 28, 82)}.duet-button.destructive:hover,.duet-button.destructive-secondary:hover{color:rgb(255, 255, 255) !important;background:#ab1642;border-color:#ab1642}.duet-theme-turva .duet-button.destructive:hover,.duet-theme-turva .duet-button.destructive-secondary:hover{color:rgb(255, 255, 255) !important;background:#ab1642;border-color:#ab1642}.duet-button.plain{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}.duet-theme-turva .duet-button.plain{color:rgb(198, 12, 48) !important;background:transparent;border-color:transparent}.duet-button.plain.duet-p-0 .duet-button-contents{height:auto}.duet-button.plain[disabled],.duet-button.plain[disabled]:hover{color:rgb(98, 121, 138) !important;cursor:not-allowed;background:transparent !important;border-color:transparent !important}.duet-theme-turva .duet-button.plain[disabled],.duet-theme-turva .duet-button.plain[disabled]:hover{color:rgb(113, 118, 132) !important;cursor:not-allowed;background:transparent !important;border-color:rgb(222, 224, 228) !important}.duet-button.plain:hover{color:rgb(0, 75, 129) !important;background:transparent !important}.duet-theme-turva .duet-button.plain:hover{color:rgb(126, 2, 35) !important}.duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}.duet-theme-turva .duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}.duet-button.plain.duet-button-negative:hover{color:rgba(255, 255, 255, 0.8) !important}.duet-button.duet-button-icon-only{min-width:48px;min-height:48px;padding:0 !important}.duet-button.duet-button-icon-only .duet-button-contents{position:static}.duet-button.duet-button-icon-only .duet-button-icon.left.large,.duet-button.duet-button-icon-only .duet-button-icon.left.medium,.duet-button.duet-button-icon-only .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary,.duet-button.duet-button.input-button-embedded,.duet-button.duet-button.input-button-left-primary,.duet-button.duet-button.input-button-left-secondary{box-sizing:content-box;min-width:48px;min-height:48px;padding:0 !important;border-width:1px}.duet-button.duet-button.input-button-primary .duet-button-contents,.duet-button.duet-button.input-button-secondary .duet-button-contents,.duet-button.duet-button.input-button-embedded .duet-button-contents,.duet-button.duet-button.input-button-left-primary .duet-button-contents,.duet-button.duet-button.input-button-left-secondary .duet-button-contents{position:static}.duet-button.duet-button.input-button-primary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-secondary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-embedded .duet-button-contents.icon-right,.duet-button.duet-button.input-button-left-primary .duet-button-contents.icon-right,.duet-button.duet-button.input-button-left-secondary .duet-button-contents.icon-right{padding:0 16px}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary,.duet-button.duet-button.input-button-embedded{border-top-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:0}.duet-button.duet-button.input-button-primary .duet-button-icon.left.large,.duet-button.duet-button.input-button-primary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-primary .duet-button-icon.left.small,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.large,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.small,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.large,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.medium,.duet-button.duet-button.input-button-embedded .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-embedded{border-left-width:0}.duet-button.duet-button.input-button-left-primary,.duet-button.duet-button.input-button-left-secondary{border-top-left-radius:4px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:4px}.duet-button.duet-button.input-button-left-primary .duet-button-contents,.duet-button.duet-button.input-button-left-secondary .duet-button-contents{position:static}.duet-button.square{width:52px;min-width:auto !important;padding:0 !important;font-size:1rem;border-color:rgb(181, 198, 208);border-width:1px}.duet-button.square.duet-button-size-small{width:42px;font-size:0.875rem}.duet-button.square.duet-button-size-x-small{width:34px;font-size:0.875rem}.duet-button.square.duet-button-negative{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179);border-color:rgb(0, 119, 179)}.duet-theme-turva .duet-button.square.duet-button-negative{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48);border-color:rgb(198, 12, 48)}.duet-theme-turva .duet-button.square{border-color:rgb(222, 224, 228)}.duet-button.square:hover{border-color:rgb(0, 119, 179);outline:2px solid rgb(0, 119, 179);outline-offset:-2px}.duet-theme-turva .duet-button.square:hover{border-color:rgb(198, 12, 48);outline-color:rgb(198, 12, 48)}.duet-button.square .duet-button-contents{gap:0}.duet-button[disabled],.duet-button[disabled]:hover,.duet-button.duet-button-negative[disabled],.duet-button.duet-button-negative[disabled]:hover{color:rgb(98, 121, 138) !important;cursor:not-allowed;background:rgb(212, 223, 229) !important;border-color:rgb(212, 223, 229) !important;outline-color:rgb(212, 223, 229) !important;box-shadow:none !important}.duet-theme-turva .duet-button[disabled],.duet-theme-turva .duet-button[disabled]:hover,.duet-theme-turva .duet-button.duet-button-negative [disabled],.duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:rgb(143, 147, 158) !important;cursor:not-allowed;background:rgb(222, 224, 228) !important;border-color:rgb(222, 224, 228) !important;outline-color:rgb(222, 224, 228) !important}.duet-button-is-loading.primary,.duet-button-is-loading.input-button-primary{color:rgb(255, 255, 255)}.duet-button-is-loading.default{color:rgb(0, 119, 179)}.duet-button-is-loading.default.duet-theme-turva{color:rgb(198, 12, 48)}.duet-button-is-loading .duet-button-contents{visibility:hidden;opacity:0}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default{color:#e61740 !important;border-color:#fbe1d1}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default:hover{border-color:#e61740;outline-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default.duet-button-negative{background-color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.default.duet-button-negative:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.primary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-primary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-primary{background:#e61740;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded{color:#172a3b !important;border-color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded.duet-button-negative{color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-left-secondary.duet-button-negative:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.input-button-embedded.duet-button-negative:hover{color:#e61740 !important;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.negative{color:#172a3b !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.negative:hover{color:rgb(255, 255, 255) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain{color:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain.duet-button-negative{color:rgb(255, 255, 255) !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain:hover{color:#8c001e !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain[disabled],:host(.duet-theme-turva2) .duet-theme-turva .duet-button.plain[disabled]:hover{color:#5f7a8f !important;background:transparent !important;border-color:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square{border-color:#fbe1d1}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square.duet-button-negative{background:#e61740;border-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button.square:hover{border-color:#e61740;outline-color:#e61740}:host(.duet-theme-turva2) .duet-theme-turva .duet-button[disabled],:host(.duet-theme-turva2) .duet-theme-turva .duet-button[disabled]:hover,:host(.duet-theme-turva2) .duet-theme-turva .duet-button.duet-button-negative [disabled],:host(.duet-theme-turva2) .duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:#7891a4 !important;cursor:not-allowed;background:#d4dde2 !important;border-color:#d4dde2 !important;outline-color:#d4dde2 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-button-is-loading.default{color:#e61740}";
5280
5368
 
5281
5369
  class DuetButton {
5282
5370
  constructor(hostRef) {
@@ -5532,12 +5620,12 @@ class DuetButton {
5532
5620
  // enforce consistency for external links
5533
5621
  const icon = isExternalLink ? "action-new-window" : this.icon;
5534
5622
  const iconRight = isExternalLink ? true : this.iconRight;
5535
- const commonChildren = (hAsync("span", { key: 'dad881c4e315cee7e2fa16020ab44f3b8518ce8b', class: { "duet-button-contents": true, "icon-right": iconRight }, style: { color: getColorByName(this.color) } }, icon && (hAsync("span", { key: '08d196d1bc190ccb57d8f4961a78e1999f69a6f1', "aria-hidden": "true", class: {
5623
+ const commonChildren = (hAsync("span", { key: '4b6618222c037ec329c118f7ad247b9fd514e878', class: { "duet-button-contents": true, "icon-right": iconRight }, style: { color: getColorByName(this.color, this.theme) } }, icon && (hAsync("span", { key: '67492c9b50231879ba232f7c6bcdadcb2d219875', "aria-hidden": "true", class: {
5536
5624
  "duet-button-icon": true,
5537
5625
  left: !iconRight,
5538
5626
  right: iconRight,
5539
5627
  [this.getButtonIconSize()]: true,
5540
- } }, hAsync("duet-icon", { key: '24ffeda883152bfe0123a828ed037aa7bdf365aa', size: "auto", margin: "none", name: icon, color: "currentColor" }))), hAsync("span", { key: '60cbc950fc893b105e13e98769341697d3065e87', class: "duet-button-contents-slot" }, hAsync("slot", { key: '236c0748e32a96046fe4bf1c79b6822ebf5c0b9d' }))));
5628
+ } }, hAsync("duet-icon", { key: 'fce0630d78df187c2a7f3946ff3d262c43e5ce95', size: "auto", margin: "none", name: icon, color: "currentColor" }))), hAsync("span", { key: '34d608211bac6921c4aec51f71a9b33e2ac2b7b0', class: "duet-button-contents-slot" }, hAsync("slot", { key: 'b2478d851993c148be6a83a76f9f725469bc9944' }))));
5541
5629
  const size = this.size == "medium" || this.size == "small" || this.size == "x-small" ? this.size : "medium";
5542
5630
  const commonProps = {
5543
5631
  onFocus: this.onFocus,
@@ -5572,7 +5660,7 @@ class DuetButton {
5572
5660
  "aria-details": this.accessibleDetails,
5573
5661
  "aria-description": this.accessibleDescription,
5574
5662
  };
5575
- return (hAsync(Host, { key: '2f71565d21679c2161cbebaa8b3bfaa7aa4183a0', class: {
5663
+ return (hAsync(Host, { key: 'c70e2d9cbe884c7b6cc3012721f01ce6d54b4555', class: {
5576
5664
  "duet-m-0": this.margin === "none",
5577
5665
  "duet-small": this.size === "small",
5578
5666
  "duet-x-small": this.size === "x-small",
@@ -5580,13 +5668,13 @@ class DuetButton {
5580
5668
  "duet-expand": this.expand,
5581
5669
  [this.variation]: true,
5582
5670
  "input-button": (_b = this.variation) === null || _b === void 0 ? void 0 : _b.startsWith("input-button"),
5583
- } }, hAsync("span", { key: '2a2d449975f67608f602eaca489e4ff865496ed8', onClick: this.handleClick, class: {
5671
+ } }, hAsync("span", { key: 'c8be7792d2ae572befbfbe921a3ec453c073637d', onClick: this.handleClick, class: {
5584
5672
  "duet-button-container": true,
5585
5673
  "duet-button-is-loading": this.loading,
5586
5674
  "duet-theme-turva": this.theme === "turva",
5587
5675
  "duet-button-negative": this.negative || this.variation === "negative",
5588
5676
  [this.variation]: true,
5589
- } }, this.url ? (hAsync("a", Object.assign({}, commonProps, { href: this.url, target: this.external ? "_blank" : "_self", rel: this.external ? "noopener" : undefined }), commonChildren, this.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal))) : (hAsync("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, "aria-disabled": this.disabled }), commonChildren, this.loading && hAsync("duet-visually-hidden", null, " ", this.accessibleLabelLoading, " "))), this.loading && hAsync("duet-spinner", { key: 'e27fdd855b9191cdd22c9b74746f3144890d3837', color: "currentColor" })), hAsync("slot", { key: '5f1fec755bfdf56ed261b893fa647308c1e21a7f', name: "proxybutton" })));
5677
+ } }, this.url ? (hAsync("a", Object.assign({}, commonProps, { href: this.url, target: this.external ? "_blank" : "_self", rel: this.external ? "noopener" : undefined }), commonChildren, this.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal))) : (hAsync("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, "aria-disabled": this.disabled }), commonChildren, this.loading && hAsync("duet-visually-hidden", null, " ", this.accessibleLabelLoading, " "))), this.loading && hAsync("duet-spinner", { key: 'da956cda627d2afc5084ee69629b54ffabcb672b', color: "currentColor" })), hAsync("slot", { key: '0ead01a475d6242c0049a259f9b9c725830d4b80', name: "proxybutton" })));
5590
5678
  }
5591
5679
  get element() { return getElement(this); }
5592
5680
  static get style() { return duetButtonCss; }
@@ -5678,11 +5766,11 @@ class DuetCallout {
5678
5766
  <path d="M6.6591 0.557547L9.2031 2.33355C7.0911 5.21355 6.1311 7.18155 5.8431 8.90955C7.4751 9.34155 8.7231 10.5415 8.7231 12.6535C8.7231 15.2935 6.9471 16.9255 4.6431 16.9255C2.0511 16.9255 0.227096 15.1975 0.227096 12.2695C0.227096 8.28555 2.3871 4.34955 6.6591 0.557547ZM17.9871 8.95755C19.6191 9.34155 20.8671 10.5415 20.8671 12.6535C20.8671 15.2935 19.1391 16.9255 16.8351 16.9255C14.2431 16.9255 12.4191 15.1975 12.4191 12.2695C12.4191 8.28555 14.5791 4.34955 18.8511 0.557547L21.3951 2.33355C19.2351 5.21355 18.3231 7.18155 17.9871 8.95755Z"/>
5679
5767
  </svg>
5680
5768
  `;
5681
- return (hAsync(Host, { key: '7b43cc9fece7d0d99bf82608e9b6589f3ed8b489' }, hAsync("div", { key: '4c4445772fddecce9a44303683db307de0023e93', class: {
5769
+ return (hAsync(Host, { key: '1bbd077f1e57dc333649758d9fae16d4a8f3dcf4' }, hAsync("div", { key: 'a0edfe6725fce2069235fcacda9041495e8df10b', class: {
5682
5770
  "duet-callout": true,
5683
5771
  "duet-theme-turva": this.theme === "turva",
5684
5772
  "duet-m-0": this.margin === "none",
5685
- } }, hAsync("figure", { key: 'f41e9f1c7185f653cc0c0934563f3627858b7d1a', class: "container" }, hAsync("duet-icon", { key: '096ced2368e55130723c70f850d3b5fea5779596', class: "callout-icon", shape: "brand-rotated", background: "primary-lighter", "background-opacity": "0.75", "background-rotation": this.theme === "turva" ? "0" : "7", color: "secondary", icon: icon, size: "auto", margin: "none", theme: this.theme }), hAsync("blockquote", { key: 'ff2cab036cc8125ba9a68c8c3647b03335579910' }, hAsync("slot", { key: 'c55b341a7d23dde596da8c047efdbd12ef4d654f' })), this.hasAuthorSlot && (hAsync("figcaption", { key: '3c3b17738471cdec3c2212bd739ff3603805dadf', class: "author" }, hAsync("span", { key: '7a2db6782d7207601063befe44ac0975d7e9a155' }, "\u2014 "), hAsync("slot", { key: '45e20af337cd8917a6b382e99810b719be56a106', name: "author" })))))));
5773
+ } }, hAsync("figure", { key: '21522d9a915045b0bfc17d5df3dedff371fec1fa', class: "container" }, hAsync("duet-icon", { key: 'db8af136b296941bb57844fde916ddf7a07a9f25', class: "callout-icon", shape: "brand-rotated", background: "primary-lighter", "background-opacity": "0.75", "background-rotation": this.theme === "turva" ? "0" : "7", color: "secondary", icon: icon, size: "auto", margin: "none", theme: this.theme }), hAsync("blockquote", { key: 'c2df0f9763ad90dbfe1e68736550c36f2abf362a' }, hAsync("slot", { key: '218537d8d6e19814d1e8d8f8735987142a32349a' })), this.hasAuthorSlot && (hAsync("figcaption", { key: '662c0d8092ce4cb1bc0f5bd40982171ea36b984c', class: "author" }, hAsync("span", { key: '2632b56978eb27cd5c2d904958327fd476af08b5' }, "\u2014 "), hAsync("slot", { key: 'a084f8db91ac33851ec2a5ca621752d83fcfd581', name: "author" })))))));
5686
5774
  }
5687
5775
  get element() { return getElement(this); }
5688
5776
  static get style() { return duetCalloutCss; }
@@ -5816,6 +5904,12 @@ class DuetCard {
5816
5904
  * in order to avoid nested headings.
5817
5905
  */
5818
5906
  this.headingLevel = "h2";
5907
+ /**
5908
+ * Custom color to be used for the icon, as a design token entered in camelCase
5909
+ * or kebab-case. Example: "color-primary". This property can also be set to
5910
+ * "currentColor".
5911
+ */
5912
+ this.iconColor = "currentColor";
5819
5913
  /**
5820
5914
  * Custom color to be used for the card background, as a design token entered in
5821
5915
  * camelCase or kebab-case. Example: "primary".
@@ -5879,7 +5973,7 @@ class DuetCard {
5879
5973
  const headingStyles = {
5880
5974
  backgroundColor: getColorByName(this.headingBackground),
5881
5975
  };
5882
- const headingContent = (hAsync(Fragment, null, hAsync("div", { class: "duet-card-heading-grid" }, this.icon && (hAsync(Fragment, null, hAsync("duet-icon", { class: "duet-card-icon", name: this.icon, size: "medium", margin: "none", color: "currentColor" }), hAsync("duet-spacer", { direction: "horizontal", size: "small" }))), hAsync("div", { class: "duet-card-heading-text" }, this.heading ? this.heading : hAsync("slot", { name: "heading" })), this.secondaryHeading && (hAsync(Fragment, null, hAsync("duet-spacer", { direction: "horizontal", size: "small" }), hAsync("div", { class: "duet-card-secondary-heading duet-card-secondary-heading--inline" }, this.secondaryHeading))), this.collapsible && (hAsync(Fragment, null, hAsync("duet-spacer", { direction: "horizontal", size: "small" }), hAsync("duet-icon", { class: "duet-card-caret", icon: arrowUpIcon.svg, size: "small", margin: "none", color: "currentColor" })))), this.secondaryHeading && (hAsync("div", { class: "duet-card-secondary-heading duet-card-secondary-heading--new-line" }, this.secondaryHeading)), hAsync("slot", { name: "below-heading" })));
5976
+ const headingContent = (hAsync(Fragment, null, hAsync("div", { class: "duet-card-heading-grid" }, this.icon && (hAsync(Fragment, null, hAsync("duet-icon", { class: "duet-card-icon", name: this.icon, size: "medium", margin: "none", color: this.iconColor }), hAsync("duet-spacer", { direction: "horizontal", size: "small" }))), hAsync("div", { class: "duet-card-heading-text" }, this.heading ? this.heading : hAsync("slot", { name: "heading" })), this.secondaryHeading && (hAsync(Fragment, null, hAsync("duet-spacer", { direction: "horizontal", size: "small" }), hAsync("div", { class: "duet-card-secondary-heading duet-card-secondary-heading--inline" }, this.secondaryHeading))), this.collapsible && (hAsync(Fragment, null, hAsync("duet-spacer", { direction: "horizontal", size: "small" }), hAsync("duet-icon", { class: "duet-card-caret", icon: arrowUpIcon.svg, size: "small", margin: "none", color: "currentColor" })))), this.secondaryHeading && (hAsync("div", { class: "duet-card-secondary-heading duet-card-secondary-heading--new-line" }, this.secondaryHeading)), hAsync("slot", { name: "below-heading" })));
5883
5977
  if (this.collapsible) {
5884
5978
  const ariaLabel = (_a = getElementsFromNamedSlot(this.element, "heading")) === null || _a === void 0 ? void 0 : _a.map(e => e.textContent).join(" ");
5885
5979
  return (hAsync(HeadingTag, { style: headingStyles, class: "duet-card-heading duet-card-heading--collapsible", onClick: this.togglePanel, onKeyDown: this.handleKeyDown }, hAsync("button", { type: "button", "aria-controls": this.cardId, "aria-expanded": this.open ? "true" : "false", "aria-label": ariaLabel }, headingContent)));
@@ -5907,10 +6001,10 @@ class DuetCard {
5907
6001
  const styles = {
5908
6002
  backgroundColor: getColorByName(this.background),
5909
6003
  };
5910
- return (hAsync(Host, { key: '611705991716b0c002889bf3a9e980f8da1d95f0', class: {
6004
+ return (hAsync(Host, { key: 'b229fd28e5e5058ba357db373f25c9de68dc2694', class: {
5911
6005
  "duet-m-0": this.margin === "none",
5912
6006
  "duet-card-info": this.variation === "info",
5913
- } }, hAsync(TagName, { key: '89e99da5b6adc642345ba6f7a21c7081b9d4e9f3', href: this.url, style: styles, ref: card => (this.nativeCard = card), "aria-label": this.accessibleLabel, class: {
6007
+ } }, hAsync(TagName, { key: 'b80082cae6d0e4d564bc1eca68f57749b6975e0e', href: this.url, style: styles, ref: card => (this.nativeCard = card), "aria-label": this.accessibleLabel, class: {
5914
6008
  "duet-card": true,
5915
6009
  [this.padding]: true,
5916
6010
  [this.variation]: true,
@@ -5920,7 +6014,7 @@ class DuetCard {
5920
6014
  "duet-card-has-bg": this.background !== "gray-lightest",
5921
6015
  "duet-card-has-icon": !!this.icon,
5922
6016
  "duet-card-collapsed": this.collapsible && !this.open,
5923
- } }, this.image && (hAsync("div", { key: '0aa60ed3e1bebc94ee7842d3982256c9373aa516', class: "duet-card-image-mask" }, hAsync("img", { key: '84e7c1f6a0b6c9132ec82041fad87cc4577d6b1e', src: this.image, class: "duet-card-image", loading: "lazy", alt: "", "aria-hidden": "true" }))), (this.heading || this.hasHeadingSlot) && this.renderHeading(), hAsync("div", { key: 'f86cc5808fdc33c29d5c1aeaa20de6b840b9bb87', class: "duet-card-content", id: this.cardId }, hAsync("slot", { key: '5fb3cbdad3362c23720c00b1cc3a37c6e7c0df7a' }), this.hasFooter && (hAsync("div", { key: '469c322c7f5b971194563825844cd26f854f7a4d', class: "duet-card-footer" }, hAsync("slot", { key: '8a72444bea6b916c253e8aa87967046338e690ee', name: "footer" })))))));
6017
+ } }, this.image && (hAsync("div", { key: 'c4c9c8772d432e52fb78f2bf0a457d4a026d6b3a', class: "duet-card-image-mask" }, hAsync("img", { key: '828ed65b312a0e50257adfa39f25307b13e7d51a', src: this.image, class: "duet-card-image", loading: "lazy", alt: "", "aria-hidden": "true" }))), (this.heading || this.hasHeadingSlot) && this.renderHeading(), hAsync("div", { key: '081d59770bc88f9b7bd2a9b25d0bf905ea0d141b', class: "duet-card-content", id: this.cardId }, hAsync("slot", { key: 'ad92895c2eea7a7697bd4924165656e72ee9b1da' }), this.hasFooter && (hAsync("div", { key: '9a920473b4242e87a36032511f982b3e890df463', class: "duet-card-footer" }, hAsync("slot", { key: '41350a63089d579579bca4454a1fcbc27a60b445', name: "footer" })))))));
5924
6018
  }
5925
6019
  get element() { return getElement(this); }
5926
6020
  static get style() { return duetCardCss; }
@@ -5937,6 +6031,7 @@ class DuetCard {
5937
6031
  "headingLevel": [1, "heading-level"],
5938
6032
  "headingBackground": [1, "heading-background"],
5939
6033
  "icon": [1],
6034
+ "iconColor": [513, "icon-color"],
5940
6035
  "image": [1],
5941
6036
  "background": [1],
5942
6037
  "padding": [1],
@@ -5948,7 +6043,7 @@ class DuetCard {
5948
6043
  },
5949
6044
  "$listeners$": undefined,
5950
6045
  "$lazyBundleId$": "-",
5951
- "$attrsToReflect$": [["open", "open"]]
6046
+ "$attrsToReflect$": [["open", "open"], ["iconColor", "icon-color"]]
5952
6047
  }; }
5953
6048
  }
5954
6049
 
@@ -6162,11 +6257,11 @@ class DuetCheckmark {
6162
6257
  inheritGlobalTheme(this);
6163
6258
  }
6164
6259
  render() {
6165
- return (hAsync(Host, { key: 'c1a7b6ac64ad31e1f0b758a02c8c47eaab39af2a', class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("div", { key: '14ec22df27a107b2928206d6ae43a7f2ebf6e65c', role: this.presentationOnly ? "presentation" : null, class: { checked: this.checked } }, hAsync("div", { key: 'ca6409ae1e39334a9bac2dc6d76a3c566a3bb5fd', class: {
6260
+ return (hAsync(Host, { key: 'eb316eb0a7cd696a7087ee179bcbb77ac2df7fc2', class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("div", { key: '53c6629329c800e4b76f57149010e3ea1fbb5ce9', role: this.presentationOnly ? "presentation" : null, class: { checked: this.checked } }, hAsync("div", { key: '4c1ffda9ef4f247a850c22fa61827ee8b6063958', class: {
6166
6261
  "duet-checkmark-container": true,
6167
6262
  center: this.center,
6168
6263
  "duet-checkmark-radio": this.type === "radio",
6169
- } }, this.checked && hAsync("div", { key: '4d54d9054d040beff0af5e51406ca38dc670a775', class: "duet-checkmark" })))));
6264
+ } }, this.checked && hAsync("div", { key: 'c5761342a659e414b3c7e6f3c14d79452665dcf8', class: "duet-checkmark" })))));
6170
6265
  }
6171
6266
  static get style() { return duetCheckmarkCss; }
6172
6267
  static get cmpMeta() { return {
@@ -6586,7 +6681,6 @@ class DuetChoice {
6586
6681
  constructor(hostRef) {
6587
6682
  registerInstance(this, hostRef);
6588
6683
  this.duetChoiceReady = createEvent$2(this, "duetChoiceReady", 7);
6589
- this.duetChoiceRemove = createEvent$2(this, "duetChoiceRemove", 7);
6590
6684
  this.duetChange = createEvent$2(this, "duetChange", 7);
6591
6685
  this.duetFocus = createEvent$2(this, "duetFocus", 7);
6592
6686
  this.duetBlur = createEvent$2(this, "duetBlur", 7);
@@ -6849,7 +6943,6 @@ class DuetChoice {
6849
6943
  disconnectedCallback() {
6850
6944
  disconnectLanguageChangeObserver(this);
6851
6945
  unsubscribeTabbingChange(this);
6852
- this.duetChoiceRemove.emit();
6853
6946
  }
6854
6947
  /**
6855
6948
  * Sets focus on the specified `duet-choice`. Use this method instead of the global
@@ -6956,7 +7049,7 @@ class DuetChoice {
6956
7049
  * Always the last one in the class.
6957
7050
  */
6958
7051
  render() {
6959
- return (hAsync(Host, { key: '06d726d888b8bbe02687c02328f66f51d0dae771', class: {
7052
+ return (hAsync(Host, { key: '8e0d44318e6f23b8cd30378f4a2d6d9d04775caf', class: {
6960
7053
  horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
6961
7054
  "horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
6962
7055
  "duet-m-0": this.margin === "none",
@@ -6964,10 +7057,10 @@ class DuetChoice {
6964
7057
  "duet-theme-turva": this.theme === "turva",
6965
7058
  "no-hover": this.isHovering,
6966
7059
  disabled: this.getDisabled(),
6967
- } }, hAsync("div", { key: '067924fab7ad625a18ee6b6f39f3ca8dde9d5c10', class: {
7060
+ } }, hAsync("div", { key: '94430228895b0bbd2ddf795f24e2c598356fa005', class: {
6968
7061
  "duet-choice-card-flextainer": true,
6969
7062
  "duet-theme-turva": this.theme === "turva",
6970
- } }, hAsync("div", { key: 'a58a7846b2828e79e9400b7c486a0f9de3d4ab3d', class: {
7063
+ } }, hAsync("div", { key: 'e8e03959412c6c2d97e38969c2264cbd2dc93e9f', class: {
6971
7064
  "duet-choice-card": true,
6972
7065
  "has-icon": !!this.icon,
6973
7066
  "has-info": this.hasInfo,
@@ -6976,16 +7069,16 @@ class DuetChoice {
6976
7069
  collapsible: this.collapsible,
6977
7070
  "collapsible-force-expanded": this.collapsibleForceExpanded,
6978
7071
  "duet-p-0": this.padding === "none",
6979
- } }, hAsync("slot", { key: '386591372a335d268e810bc802f5be4c29911b57', name: "choiceinput" }), hAsync("label", { key: '52824be19fac2401ab7d6f03e5492fc6ebf00d96', class: {
7072
+ } }, hAsync("slot", { key: 'f535dd20ca1dfcefc16cefbe057ac14a9f8d0b14', name: "choiceinput" }), hAsync("label", { key: '70fa4e33e814019ead7d1bdce622d289fbdde47c', class: {
6980
7073
  "duet-choice-label": true,
6981
7074
  "has-before-text": this.hasBeforeText,
6982
7075
  checked: this.checked,
6983
7076
  focus: this.focus,
6984
7077
  disabled: this.getDisabled(),
6985
- }, onClick: this.onClick }, this.hasBeforeText && hAsync("slot", { key: '6131bd5c8920cfd31580f6d8f9cdbd86e5f52417', name: "before-text" }), this.icon && (hAsync("div", { key: '53f4b49c2382e52b5af320770e3e4eda7bfdf2ff', class: "duet-choice-card-icon" }, hAsync("duet-icon", { key: '293a89d99eacde234ef75ebf3698f2b3c3244267', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), hAsync("div", { key: '0a5701b9d58548848cb0d5b967b8eee25c832640', class: "duet-choice-card-text" }, hAsync("div", { key: 'adf3e61d9fdddf5224b18b0f78fa66223983256f' }, this.hasLabel ? hAsync("slot", { name: "label" }) : this.label), this.caption && (hAsync("div", { key: 'ea4bac6f47a918d98e9320887f7778c87b3b8f78' }, hAsync("duet-spacer", { key: '15e89147f61506a5e27b01c55502a88d7f79febc', size: "xx-small" }), hAsync("duet-caption", { key: '5561c087e78449458cfeab32763ec644cb7fa649', margin: "none", selected: this.checked }, this.caption))), this.hasAdditional && (hAsync("div", { key: 'd8db69006ef2338ee3537a2a56d89fc139b140a6' }, hAsync("duet-spacer", { key: '941275e2d434c44aa6dacba4fd2493016bf8d50d', size: "xx-small" }), hAsync("slot", { key: 'f5c2ae2364210ff12a9613eb552dc840baa53ee1', name: "additional" })))), hAsync("div", { key: '0c169d5c1c23dfe5f219e27487c27e6e8c9d3075' }, hAsync("div", { key: 'c59a5ea2c61272b04e391ed6129e52b86b28a311', class: { "duet-checkmark-container": true, "duet-checkmark-radio": this.type === "radio" } }, this.checked && hAsync("div", { key: 'b758c82def9700f5bbcdc61b157839c10f355616', class: "duet-checkmark" }))))), this.hasInfo && !this.collapsible && (hAsync("button", { key: '1af2142cee3c22de176fd3fa08834465ce9e2ed6', ref: button => (this.infoButtonEl = button), id: this.infoButtonId, class: {
7078
+ }, onClick: this.onClick }, this.hasBeforeText && hAsync("slot", { key: 'ddf8b67cf503633034ca3c8c94d5923c99dace05', name: "before-text" }), this.icon && (hAsync("div", { key: 'a5d3e1324aafbece41a54e14c9852c264bf0d9b0', class: "duet-choice-card-icon" }, hAsync("duet-icon", { key: '0382f9205997600a146e181e3783d75538b1925e', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), hAsync("div", { key: '14a3b6689b6527398fdf46729e56b7a97383bf93', class: "duet-choice-card-text" }, hAsync("div", { key: '26144b6d2c60fbb338e08e6355e0b2ea2138a682' }, this.hasLabel ? hAsync("slot", { name: "label" }) : this.label), this.caption && (hAsync("div", { key: '4059958e6434760f1f3afe27e4d5196595fe000b' }, hAsync("duet-spacer", { key: 'beec0d868ce1f590a55ae2b30e12eb1b1cc4b35e', size: "xx-small" }), hAsync("duet-caption", { key: 'bd0c1c6cba4398151bafcdfbc79c85c6e9aad9cc', margin: "none", selected: this.checked }, this.caption))), this.hasAdditional && (hAsync("div", { key: '35c0cad0a89437af7ef7bc8e842d7d52bfaca6ed' }, hAsync("duet-spacer", { key: 'db0d7edb4432c1693160898f653ceff941ea5c72', size: "xx-small" }), hAsync("slot", { key: '72baad0387d37783233fac3bdb9ca218036f6317', name: "additional" })))), hAsync("div", { key: 'c844c7c3d338339d4260986a68d90f43ebe5a7ba' }, hAsync("div", { key: '79f40913fe5c59d12db856a401a80f35addd0379', class: { "duet-checkmark-container": true, "duet-checkmark-radio": this.type === "radio" } }, this.checked && hAsync("div", { key: 'dff8e47098a438673e4e87e1dd132280daa3eaf8', class: "duet-checkmark" }))))), this.hasInfo && !this.collapsible && (hAsync("button", { key: '22d9672aa71a3a41ed928f9b90782f335b40ea86', ref: button => (this.infoButtonEl = button), id: this.infoButtonId, class: {
6986
7079
  "duet-choice-info-toggle": true,
6987
7080
  "duet-theme-turva": this.theme === "turva",
6988
- }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onClick: this.toggleInfo, disabled: this.getDisabled(), "aria-expanded": this.isInfoOpen ? "true" : "false", "aria-label": `${this.infoLabel} ${this.label}`, "aria-controls": this.expandId, tabindex: this.type === "radio" && !this.checked ? "-1" : "0", type: "button", onKeyUp: e => this.handleEscape(e) }, hAsync("div", { key: '0ed648961997a6b8818f56af884ef33ce46729d8', class: "duet-choice-info-icon" }, hAsync("duet-icon", { key: '4fe8d197fb0c3ecc22541e599ebb51856789c41a', icon: infoIcon.svg, margin: "none", size: "small", color: "currentColor" }))))), this.collapsible && (hAsync("span", { key: '5f6daaafc55e878f0e51882ae829f5dc256086ba', id: `${this.choiceId}-collapsible-notification`, hidden: true }, this.collapsibleNotification)), this.collapsible || this.hasInfo ? (hAsync("div", { class: this.getClassNames(), id: this.expandId }, hAsync("span", { class: {
7081
+ }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onClick: this.toggleInfo, disabled: this.getDisabled(), "aria-expanded": this.isInfoOpen ? "true" : "false", "aria-label": `${this.infoLabel} ${this.label}`, "aria-controls": this.expandId, tabindex: this.type === "radio" && !this.checked ? "-1" : "0", type: "button", onKeyUp: e => this.handleEscape(e) }, hAsync("div", { key: '263cdcb2a2121471627759f4ab9bab65436636de', class: "duet-choice-info-icon" }, hAsync("duet-icon", { key: 'ed64691ddbd6ba488a7b3c494d64849cef448a33', icon: infoIcon.svg, margin: "none", size: "small", color: "currentColor" }))))), this.collapsible && (hAsync("span", { key: 'a6dba636c1c5df9f2180bbaae7d71d1571b7e356', id: `${this.choiceId}-collapsible-notification`, hidden: true }, this.collapsibleNotification)), this.collapsible || this.hasInfo ? (hAsync("div", { class: this.getClassNames(), id: this.expandId }, hAsync("span", { class: {
6989
7082
  "duet-choice-section-visible": this.collapsible ? this.getExpanded() : this.isInfoOpen,
6990
7083
  "duet-choice-section-hidden": this.collapsible ? !this.getExpanded() : !this.isInfoOpen,
6991
7084
  } }, hAsync("span", { id: this.headerId }, hAsync("slot", { name: "header" })), this.hasInfo ? (hAsync("span", { ref: span => (this.infoContainer = span), tabindex: "-1", class: "duet-choice-info-container", onKeyUp: e => this.handleEscape(e) }, hAsync("span", null, hAsync("slot", { name: "info" })), hAsync("slot", null))) : (hAsync("span", { id: `${this.choiceId}-collapsible-content` }, hAsync("slot", null)))))) : null));
@@ -7109,6 +7202,16 @@ class DuetChoiceGroup {
7109
7202
  * unread by screen readers.
7110
7203
  */
7111
7204
  this.accessibleLiveError = "polite";
7205
+ // Call this.updateChoices when a child choice has been removed - addtions are handled by events
7206
+ this.childObserverCallback = (mutationList) => {
7207
+ if (mutationList.some(r => {
7208
+ var _a;
7209
+ return ((_a = r.removedNodes) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
7210
+ Array.from(r.removedNodes.values()).some(n => n.nodeName.toLowerCase() === "duet-choice");
7211
+ })) {
7212
+ this.updateChoices();
7213
+ }
7214
+ };
7112
7215
  /**
7113
7216
  * Component event handling.
7114
7217
  */
@@ -7121,16 +7224,7 @@ class DuetChoiceGroup {
7121
7224
  this.value = selectedChoice.value;
7122
7225
  }
7123
7226
  };
7124
- this.onChoiceReady = (ev) => {
7125
- const choice = ev.target;
7126
- if (choice.closest("duet-choice-group") === this.element && !this.choices.has(choice)) {
7127
- this.choices.add(choice);
7128
- this.updateChoices();
7129
- }
7130
- };
7131
- this.onChoiceRemove = (ev) => {
7132
- const choice = ev.target;
7133
- this.choices.delete(choice);
7227
+ this.onChoiceReady = () => {
7134
7228
  this.updateChoices();
7135
7229
  };
7136
7230
  }
@@ -7176,6 +7270,12 @@ class DuetChoiceGroup {
7176
7270
  var _a;
7177
7271
  const value = (_a = this.value) !== null && _a !== void 0 ? _a : this.initialValue;
7178
7272
  let hasChecked = false;
7273
+ this.choices.clear();
7274
+ this.element.querySelectorAll("duet-choice").forEach((choice) => {
7275
+ if (choice.closest("duet-choice-group") === this.element) {
7276
+ this.choices.add(choice);
7277
+ }
7278
+ });
7179
7279
  // Walk the DOM in reverse order, since the last selected one wins
7180
7280
  for (const choice of Array.from(this.choices)) {
7181
7281
  choice.name = this.name;
@@ -7207,14 +7307,14 @@ class DuetChoiceGroup {
7207
7307
  * Always the last one in the class.
7208
7308
  */
7209
7309
  render() {
7210
- return (hAsync(Host, { key: 'c699b4df66f0ac662a9c33eb7231a79f0069e352', onDuetChange: this.onSelect, onDuetChoiceReady: this.onChoiceReady, onDuetChoiceRemove: this.onChoiceRemove, class: {
7310
+ return (hAsync(Host, { key: '8841d4082e778a9db707787994ee89cad87f6b18', onDuetChange: this.onSelect, onDuetChoiceReady: this.onChoiceReady, class: {
7211
7311
  horizontal: this.direction === "horizontal",
7212
7312
  "duet-choice-group-breakpoint-x-small": this.responsive && this.breakpoint === "x-small",
7213
7313
  "duet-choice-group-breakpoint-small": this.responsive && this.breakpoint === "small",
7214
7314
  "duet-choice-group-breakpoint-medium": this.responsive && this.breakpoint === "medium",
7215
7315
  "duet-choice-group-breakpoint-large": this.responsive && this.breakpoint === "large",
7216
7316
  "duet-choice-group-breakpoint-x-large": this.responsive && this.breakpoint === "x-large",
7217
- } }, hAsync("duet-fieldset", { key: '0a9a5912428d739275b51fbdb8a9f20976e06921', label: this.label, labelHidden: this.labelHidden, compactLabel: true, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: '684d19b9020aff9c6b5f11ec396d9373e2a867d7', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '010185093598a5b96b05756c6747a976164a80fb', name: "tooltip" }), hAsync("div", { key: '0ccba32a863f027d1f5540bdf3c5820091e92339', class: { [this.choiceGroupName]: true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '9324a39a1b862a7043a328f72b12ee7407c01634' })))));
7317
+ } }, hAsync("duet-fieldset", { key: 'b4bb139d81a0c79e8878f0444fadcd04cb332dd9', label: this.label, labelHidden: this.labelHidden, compactLabel: true, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: 'daf6385cec55843ccc93b4123250d097b8c06be8', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '7b126451a92794b19bdf45269d6768c351036db4', name: "tooltip" }), hAsync("div", { key: '5bdf7713ffe278ea307c27d4077603337755bbd8', class: { [this.choiceGroupName]: true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '28eafcc8e9c6e67a7986968d215f1f74543ab079' })))));
7218
7318
  }
7219
7319
  get element() { return getElement(this); }
7220
7320
  static get watchers() { return {
@@ -8836,10 +8936,10 @@ class DuetContactCard {
8836
8936
  render() {
8837
8937
  const isTurva = this.theme === "turva";
8838
8938
  const theme = isTurva ? "turva" : "default";
8839
- return (hAsync(Host, { key: '3272d27bcc10144d216c6d1863ea9cc637a3401b', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '88be6baa9a043ccc67ad98e26d31739f1d7c9945', class: {
8939
+ return (hAsync(Host, { key: '26759cb09b02930f07dc5a668b2dd0f6d402551d', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'dcd0c6a0da4bd0fc0e2f527e3c460ea5b684fb53', class: {
8840
8940
  "duet-contact-card": true,
8841
8941
  "duet-theme-turva": this.theme === "turva",
8842
- }, role: "group", "aria-label": this.name }, this.image ? hAsync("img", { class: "image", src: this.image, alt: this.name }) : hAsync("div", null), hAsync("div", { key: '2e24ce61855b99588153a21aaa99c5dac76c4825' }, this.name && (hAsync("duet-heading", { key: '6422b20608bca5107c55c9d18586066d466c6fa6', class: "name", level: "h3", margin: "none", theme: theme }, this.name)), this.description && (hAsync("duet-paragraph", { key: 'e599cd8245a9baaf9423394e834a85e1a48f16bd', class: "description", margin: "none", theme: theme }, this.description)), this.email && (hAsync("div", { key: '98d53e8ed97c94b29f56043cebd189d2130f95db', class: "email" }, hAsync("duet-icon", { key: '4ba40279d941e793851a38e9488eff00834bfd22', name: "navigation-message", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: 'c05eccbe5c086a75ceeab7dc323ad7eb7c2c94d1', url: `mailto:${this.email}`, accessibleLabel: `Email: ${this.email}`, theme: theme }, this.email))), this.phone && (hAsync("div", { key: '63f8b9f6fe184471111264ec7d57260db9065f37', class: "phone" }, hAsync("duet-icon", { key: '316263ef35741264d50e7787126957fa2239a335', name: "form-tel", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: '82999e5314d5939680b98d89c967828206f6b528', url: `tel:${this.phone}`, accessibleLabel: `${this.phoneLabel[this.language]}: ${this.phone}`, theme: theme }, this.phone)))), this.buttonUrl && this.buttonText && (hAsync("div", { key: 'a411e780af5967096932c4af4ff2a6243e054dc6', class: "call-to-action" }, hAsync("duet-button", { key: 'e9a5d840f63ea79f8e976009f4bea709326bb720', variation: "default", icon: this.buttonIcon, fixed: true, margin: "none", url: this.buttonUrl, theme: theme }, this.buttonText))), hAsync("div", { key: 'b8950e2e0f56c3cd06ba040fa76bec66effb5976' }), hAsync("slot", { key: 'acd4890b04569ddce558b8a6fd873e08946df8bb' }))));
8942
+ }, role: "group", "aria-label": this.name }, this.image ? hAsync("img", { class: "image", src: this.image, alt: this.name }) : hAsync("div", null), hAsync("div", { key: 'a851ab5157b39aa0029789642e2178e9143bf20f' }, this.name && (hAsync("duet-heading", { key: '0da4988512be1f23784813400cf895b5dab8dce1', class: "name", level: "h3", margin: "none", theme: theme }, this.name)), this.description && (hAsync("duet-paragraph", { key: '410ff5f3aec2289f5488363d2b46ba78d90a4619', class: "description", margin: "none", theme: theme }, this.description)), this.email && (hAsync("div", { key: '6a9496dc7d5784130c03024246095d055d1eb5f2', class: "email" }, hAsync("duet-icon", { key: 'a2b504fbebfadf71494b309994c6b0fb1ba4c2fa', name: "navigation-message", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: '4139186045aed32ce89eff81aeddff324f18fbfa', url: `mailto:${this.email}`, accessibleLabel: `Email: ${this.email}`, theme: theme }, this.email))), this.phone && (hAsync("div", { key: 'ca9234839ed79b559ce5f8370aa03c22f6161bf4', class: "phone" }, hAsync("duet-icon", { key: '4e6dff5fe9ae07d0fa52f66a67ba94ec0290595b', name: "form-tel", size: "x-small", color: "primary-dark", margin: "none", theme: theme }), hAsync("duet-link", { key: 'bf18d4561e2610ec0ce8db69e63899fd63d33c52', url: `tel:${this.phone}`, accessibleLabel: `${this.phoneLabel[this.language]}: ${this.phone}`, theme: theme }, this.phone)))), this.buttonUrl && this.buttonText && (hAsync("div", { key: 'f3fbdffd989948691785a91957d19c462456ae47', class: "call-to-action" }, hAsync("duet-button", { key: 'b276de2c6c4b9e320d3b5e0592cdc73305fff0f9', variation: "default", icon: this.buttonIcon, fixed: true, margin: "none", url: this.buttonUrl, theme: theme }, this.buttonText))), hAsync("div", { key: '8ab54173b90abba901c9eac749d536efdbc0b723' }), hAsync("slot", { key: 'f9c5ae2b1a84d12092e1b950514fbcb29bc567b6' }))));
8843
8943
  }
8844
8944
  get element() { return getElement(this); }
8845
8945
  static get style() { return duetContactCardCss; }
@@ -9107,7 +9207,12 @@ function createDate(year, month, day) {
9107
9207
  dayInt <= 31 &&
9108
9208
  yearInt > 0;
9109
9209
  if (isValid) {
9110
- return new Date(yearInt, monthInt - 1, dayInt);
9210
+ const date = new Date(yearInt, monthInt - 1, dayInt);
9211
+ // Reject dates where JS overflowed to a different month/day (e.g. Feb 31 → Mar 3)
9212
+ if (date.getDate() !== dayInt || date.getMonth() !== monthInt - 1) {
9213
+ return undefined;
9214
+ }
9215
+ return date;
9111
9216
  }
9112
9217
  }
9113
9218
  /**
@@ -9258,6 +9363,11 @@ function getViewOfMonth(date, firstDayOfWeek = 1) {
9258
9363
  return getDaysInRange(start, end);
9259
9364
  }
9260
9365
 
9366
+ const selectedDayLabel = {
9367
+ fi: "Valittu päivä",
9368
+ en: "Selected day",
9369
+ sv: "Vald dag",
9370
+ };
9261
9371
  const DatePickerDay = ({ focusedDay, today, day, language, onDaySelect, onKeyboardNavigation, ref, inRange, isSelected, }) => {
9262
9372
  const isToday = isEqual(day, today);
9263
9373
  const isFocused = isEqual(day, focusedDay);
@@ -9267,7 +9377,7 @@ const DatePickerDay = ({ focusedDay, today, day, language, onDaySelect, onKeyboa
9267
9377
  function handleClick(e) {
9268
9378
  onDaySelect(e, day);
9269
9379
  }
9270
- return (hAsync("td", { "data-day": printISODate(day), class: "duet-date-table-cell", "aria-label": formatterShort.format(day), role: "button", tabIndex: isFocused ? 0 : -1, onClick: handleClick, onKeyDown: onKeyboardNavigation, "aria-disabled": isOutsideRange || isDisabled, "aria-pressed": isSelected ? "true" : "false", ref: ref },
9380
+ return (hAsync("td", { "data-day": printISODate(day), class: { "duet-date-table-cell": true, selected: isSelected }, "aria-label": `${formatterShort.format(day)}${isSelected ? `, ${selectedDayLabel[language]}` : undefined}`, role: "button", tabIndex: isFocused ? 0 : -1, onClick: handleClick, onKeyDown: onKeyboardNavigation, "aria-disabled": isOutsideRange || isDisabled, ref: ref },
9271
9381
  hAsync("span", { class: { "duet-date-table-button": true, outside: isOutsideRange, disabled: isDisabled, today: isToday } }, day.getDate())));
9272
9382
  };
9273
9383
 
@@ -9355,7 +9465,7 @@ const DatePickerMonth = ({ selectedDate, focusedDate, labelledById, theme, langu
9355
9465
  } }))))))))));
9356
9466
  };
9357
9467
 
9358
- const duetDatePickerCss = ".duet-internal-label{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600 !important;line-height:1.25;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word;cursor:default}.duet-internal-label.duet-p-0{padding:0 !important}.duet-internal-label.duet-m-0{margin:0 !important}.duet-internal-label span{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-internal-label.duet-m-0{margin-bottom:0 !important}.duet-internal-label.duet-small-margin{margin-top:8px !important;margin-bottom:4px !important}.duet-internal-label.duet-has-tooltip{padding-right:48px}@media (min-width: 48em){.duet-internal-label.duet-has-tooltip{padding-right:0}}.duet-internal-label.duet-internal-label-small{font-size:0.875rem}.duet-internal-label.duet-internal-label-small span{font-size:0.875rem}.duet-internal-label.duet-weight-normal{font-weight:400 !important}.duet-internal-label.duet-weight-normal span{font-weight:400 !important}.duet-internal-label.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{margin-right:16px !important}:host(:last-child),:host(:last-of-type){margin-right:0 !important}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}.duet-date{position:relative;width:100%}.duet-date button,.duet-date-dialog button{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button{-webkit-user-select:none;user-select:none;position:relative;z-index:200;box-sizing:content-box;display:flex;flex-shrink:0;align-items:center;justify-content:center;width:47px;height:48px;color:rgb(8, 42, 77);cursor:pointer;background:rgb(255, 255, 255);border:1px solid rgb(127, 150, 165);border-left-color:rgb(181, 198, 208);border-radius:0 4px 4px 0;transition:box-shadow 150ms ease, border 150ms ease !important}.duet-theme-turva .duet-date-button{color:rgb(23, 28, 58);border-color:rgb(143, 147, 158);border-left-color:rgb(199, 202, 207)}.duet-date-button::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(181, 198, 208, 0.2) 0%, rgba(181, 198, 208, 0.2) 1px, rgba(181, 198, 208, 0.1) 1px, rgba(181, 198, 208, 0) 100%)}.duet-date-button:hover:not(:disabled){box-shadow:0 0 0 1px #909599 !important}.duet-theme-turva .duet-date-button:hover:not(:disabled){box-shadow:0 0 0 1px #747475 !important}.duet-date-button:disabled{pointer-events:none;cursor:not-allowed;background:rgb(245, 248, 250) !important;border:0 !important}.duet-theme-turva .duet-date-button:disabled{background:rgb(245, 247, 250) !important}.duet-date-button:disabled::before{display:none}.duet-date-button:disabled duet-icon{opacity:0.4}.duet-date-button duet-icon{transform:translateY(-1px)}.duet-date-button:active duet-icon{transform:translateY(0)}.duet-date-input-has-focus .duet-date-button,.duet-date-button:focus{height:46px;color:rgb(0, 119, 179);border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.duet-date-input-has-focus .duet-date-button,.duet-theme-turva .duet-date-button:focus{color:rgb(23, 28, 58);box-shadow:0 0 0 2px #171c3a !important}.input-error{border-top-color:rgb(214, 28, 82);border-right-color:rgb(214, 28, 82);border-bottom-color:rgb(214, 28, 82)}.duet-date-dialog{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog{position:fixed;top:0;right:0;bottom:0;transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}}.duet-date-dialog.active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:rgb(255, 255, 255);border:1px solid rgb(212, 223, 229);border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva .duet-date-dialog-wrapper{border-color:rgb(222, 224, 228)}@media (max-width: 35.9375em){.duet-date-dialog-wrapper{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active .duet-date-dialog-wrapper{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:rgb(8, 42, 77);text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-table th{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table .duet-date-table-cell{text-align:center}.duet-date-table .duet-date-table-cell:focus{outline:none}.duet-date-table-button{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:2.6 !important;color:rgb(8, 42, 77) !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva .duet-date-table-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:rgb(23, 28, 58) !important}.duet-date-table-button:hover{background:rgb(228, 241, 247) !important}.duet-theme-turva .duet-date-table-button:hover{background:rgb(255, 227, 228) !important}.duet-date-table-button.today{z-index:200;color:rgb(0, 75, 129) !important;background:rgb(240, 247, 250) !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva .duet-date-table-button.today{color:rgb(126, 2, 35) !important;background:rgb(255, 241, 241) !important;box-shadow:0 0 0 1px #171c3a !important}[aria-pressed=true] .duet-date-table-button,:focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;outline:0}.duet-theme-turva [aria-pressed=true] .duet-date-table-button,.duet-theme-turva :focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important}.duet-date-table-button:active{z-index:200;color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva .duet-date-table-button:active{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important;box-shadow:0 0 5px 0 #171c3a !important}:focus .duet-date-table-button{z-index:200;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva :focus .duet-date-table-button{box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.disabled{color:rgb(127, 150, 165) !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva .duet-date-table-button.disabled{color:rgb(143, 147, 158) !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside{color:rgb(127, 150, 165) !important;pointer-events:none;cursor:default;background:rgb(245, 248, 250) !important;box-shadow:none;opacity:0.75}.duet-theme-turva .duet-date-table-button.outside{color:rgb(143, 147, 158);background:rgb(245, 247, 250);box-shadow:none}.duet-date-dialog-header{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons{white-space:nowrap}.duet-date-dialog-buttons ::part(button){border:0}.duet-date-dialog-select{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select .duet-date-dialog-select-label{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:rgb(8, 42, 77);pointer-events:none;border-radius:4px}.duet-theme-turva .duet-date-dialog-select .duet-date-dialog-select-label{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-dialog-select span{margin-right:4px}.duet-date-dialog-select select{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select select:focus+.duet-date-dialog-select-label{box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva .duet-date-dialog-select select:focus+.duet-date-dialog-select-label{box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog-mobile-header{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid rgb(181, 198, 208)}@media (min-width: 36em){.duet-date-dialog-mobile-header{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva .duet-date-dialog-mobile-header{border-color:rgb(199, 202, 207)}.duet-date-dialog-mobile-header duet-label{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header duet-label{display:none}}.duet-date-picker-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:rgb(8, 42, 77) !important;cursor:pointer;background:rgb(245, 248, 250) !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close{opacity:0}}.duet-theme-turva .duet-date-picker-close{background:rgb(245, 247, 250) !important}.duet-date-picker-close:hover{background:rgb(245, 248, 250) !important}.duet-theme-turva .duet-date-picker-close:hover{background:rgb(245, 247, 250) !important}.duet-date-picker-close:focus{outline:none;box-shadow:0 0 0 2px #0077b3 !important}@media (min-width: 36em){.duet-date-picker-close:focus{opacity:1}}.duet-theme-turva .duet-date-picker-close:focus{box-shadow:0 0 0 2px #171c3a !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-button{color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva.duet-date-input-has-focus :host(.duet-theme-turva2) .duet-theme-turva,:host(.duet-theme-turva2) .duet-theme-turva:focus{color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button{color:#172a3b !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button:hover:not(.disabled){background:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.today{background:#fdf7f2 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button:active{color:rgb(255, 255, 255) !important;background:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.outside{color:#7891a4 !important;background:#f5f6f7 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.disabled{color:rgb(199, 202, 207) !important}:host(.duet-theme-turva2) .duet-theme-turva [aria-pressed=true] .duet-date-table-button,:host(.duet-theme-turva2) .duet-theme-turva :focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva.duet-date-table{color:#172a3b}";
9468
+ const duetDatePickerCss = ".duet-internal-label{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600 !important;line-height:1.25;line-height:1.25;color:rgb(8, 42, 77);text-align:left;word-break:break-word;cursor:default}.duet-internal-label.duet-p-0{padding:0 !important}.duet-internal-label.duet-m-0{margin:0 !important}.duet-internal-label span{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-internal-label.duet-m-0{margin-bottom:0 !important}.duet-internal-label.duet-small-margin{margin-top:8px !important;margin-bottom:4px !important}.duet-internal-label.duet-has-tooltip{padding-right:48px}@media (min-width: 48em){.duet-internal-label.duet-has-tooltip{padding-right:0}}.duet-internal-label.duet-internal-label-small{font-size:0.875rem}.duet-internal-label.duet-internal-label-small span{font-size:0.875rem}.duet-internal-label.duet-weight-normal{font-weight:400 !important}.duet-internal-label.duet-weight-normal span{font-weight:400 !important}.duet-internal-label.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{margin-right:16px !important}:host(:last-child),:host(:last-of-type){margin-right:0 !important}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:top}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}.duet-date{position:relative;width:100%}.duet-date button,.duet-date-dialog button{max-width:initial !important;min-height:initial !important;padding:0 !important;margin:0 !important;transition:initial}.duet-date-button{-webkit-user-select:none;user-select:none;position:relative;z-index:200;box-sizing:content-box;display:flex;flex-shrink:0;align-items:center;justify-content:center;width:47px;height:48px;color:rgb(8, 42, 77);cursor:pointer;background:rgb(255, 255, 255);border:1px solid rgb(127, 150, 165);border-left-color:rgb(181, 198, 208);border-radius:0 4px 4px 0;transition:box-shadow 150ms ease, border 150ms ease !important}.duet-theme-turva .duet-date-button{color:rgb(23, 28, 58);border-color:rgb(143, 147, 158);border-left-color:rgb(199, 202, 207)}.duet-date-button::before{position:absolute;top:0;left:-6px;width:6px;height:100%;content:\"\";background:linear-gradient(to left, rgba(181, 198, 208, 0.2) 0%, rgba(181, 198, 208, 0.2) 1px, rgba(181, 198, 208, 0.1) 1px, rgba(181, 198, 208, 0) 100%)}.duet-date-button:hover:not(:disabled){box-shadow:0 0 0 1px #909599 !important}.duet-theme-turva .duet-date-button:hover:not(:disabled){box-shadow:0 0 0 1px #747475 !important}.duet-date-button:disabled{pointer-events:none;cursor:not-allowed;background:rgb(245, 248, 250) !important;border:0 !important}.duet-theme-turva .duet-date-button:disabled{background:rgb(245, 247, 250) !important}.duet-date-button:disabled::before{display:none}.duet-date-button:disabled duet-icon{opacity:0.4}.duet-date-button duet-icon{transform:translateY(-1px)}.duet-date-button:active duet-icon{transform:translateY(0)}.duet-date-input-has-focus .duet-date-button,.duet-date-button:focus{height:46px;color:rgb(0, 119, 179);border-color:transparent;outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva.duet-date-input-has-focus .duet-date-button,.duet-theme-turva .duet-date-button:focus{color:rgb(23, 28, 58);box-shadow:0 0 0 2px #171c3a !important}.input-error{border-top-color:rgb(214, 28, 82);border-right-color:rgb(214, 28, 82);border-bottom-color:rgb(214, 28, 82)}.duet-date-dialog{position:absolute;top:100%;left:0;z-index:900;display:flex;width:100%;visibility:hidden;opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}@media (min-width: 36em){.duet-date-dialog.left{right:0;left:auto;width:auto}}@media (max-width: 35.9375em){.duet-date-dialog{position:fixed;top:0;right:0;bottom:0;transition:opacity 400ms ease, visibility 400ms ease;transform:translateZ(0);transform-origin:bottom center}}.duet-date-dialog.active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}@media (min-width: 36em){.duet-date-dialog.error{top:calc(100% - 28px);margin-top:4px}}.duet-date-dialog-wrapper{position:relative;z-index:600;width:100%;min-width:290px;max-width:310px;padding:16px 16px 20px;margin-top:8px;margin-left:auto;background:rgb(255, 255, 255);border:1px solid rgb(212, 223, 229);border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);transform:none}.duet-theme-turva .duet-date-dialog-wrapper{border-color:rgb(222, 224, 228)}@media (max-width: 35.9375em){.duet-date-dialog-wrapper{position:absolute;bottom:0;left:0;z-index:900;max-width:none;min-height:25em;padding:0 8% 20px;margin:0;visibility:hidden;border:0;border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;opacity:0;transition:transform 400ms ease, opacity 400ms ease, visibility 400ms ease;transform:translateZ(0) translateY(100%)}.active .duet-date-dialog-wrapper{visibility:visible;opacity:1;transition-property:transform, opacity;transform:translateZ(0) translateY(0)}}.duet-date-table{width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.25;color:rgb(8, 42, 77);text-align:center;border-spacing:0;border-collapse:collapse}.duet-date-table.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-table th{padding-bottom:8px;font-size:0.75rem;font-weight:600;line-height:1.25;text-decoration:none;text-transform:uppercase;letter-spacing:1px}.duet-date-table .duet-date-table-cell{text-align:center}.duet-date-table .duet-date-table-cell:focus{outline:none}.duet-date-table-button{position:relative;z-index:100;display:inline-block !important;width:36.9230769231px !important;height:36.9230769231px !important;min-height:initial !important;padding:0 !important;margin:0 !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:2.6 !important;color:rgb(8, 42, 77) !important;text-align:center;vertical-align:initial !important;cursor:pointer;background:transparent !important;border-radius:50% !important;transition:initial !important}.duet-theme-turva .duet-date-table-button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !important;color:rgb(23, 28, 58) !important}.duet-date-table-button:hover{background:rgb(228, 241, 247) !important}.duet-theme-turva .duet-date-table-button:hover{background:rgb(255, 227, 228) !important}.duet-date-table-button.today{z-index:200;color:rgb(0, 75, 129) !important;background:rgb(240, 247, 250) !important;box-shadow:0 0 0 1px #0077b3 !important}.duet-theme-turva .duet-date-table-button.today{color:rgb(126, 2, 35) !important;background:rgb(255, 241, 241) !important;box-shadow:0 0 0 1px #171c3a !important}.selected .duet-date-table-button,:focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;outline:0}.duet-theme-turva .selected .duet-date-table-button,.duet-theme-turva :focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important}.duet-date-table-button:active{z-index:200;color:rgb(255, 255, 255) !important;background:rgb(0, 119, 179) !important;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva .duet-date-table-button:active{color:rgb(255, 255, 255) !important;background:rgb(198, 12, 48) !important;box-shadow:0 0 5px 0 #171c3a !important}:focus .duet-date-table-button{z-index:200;box-shadow:0 0 5px 0 #0077b3 !important}.duet-theme-turva :focus .duet-date-table-button{box-shadow:0 0 5px 0 #171c3a !important}.duet-date-table-button.disabled{color:rgb(127, 150, 165) !important;cursor:default;background:transparent !important;box-shadow:none !important}.duet-theme-turva .duet-date-table-button.disabled{color:rgb(143, 147, 158) !important;background:transparent !important;box-shadow:none !important}.duet-date-table-button.outside{color:rgb(127, 150, 165) !important;pointer-events:none;cursor:default;background:rgb(245, 248, 250) !important;box-shadow:none;opacity:0.75}.duet-theme-turva .duet-date-table-button.outside{color:rgb(143, 147, 158);background:rgb(245, 247, 250);box-shadow:none}.duet-date-dialog-header{margin-bottom:16px !important;display:flex;align-items:center;justify-content:space-between;width:100%}.duet-date-dialog-buttons{white-space:nowrap}.duet-date-dialog-buttons ::part(button){border:0}.duet-date-dialog-select{position:relative;display:inline-flex;margin-top:4px}.duet-date-dialog-select .duet-date-dialog-select-label{position:relative;z-index:1;display:flex;align-items:center;width:100%;padding:0 8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.25rem;font-weight:600;line-height:1.25;color:rgb(8, 42, 77);pointer-events:none;border-radius:4px}.duet-theme-turva .duet-date-dialog-select .duet-date-dialog-select-label{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-date-dialog-select span{margin-right:4px}.duet-date-dialog-select select{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;font-size:1rem;cursor:pointer;opacity:0}.duet-date-dialog-select select:focus+.duet-date-dialog-select-label{box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva .duet-date-dialog-select select:focus+.duet-date-dialog-select-label{box-shadow:0 0 0 2px #171c3a !important}.duet-date-dialog-mobile-header{position:relative;display:flex;align-items:center;justify-content:space-between;width:120%;padding:12px 20px;margin-bottom:20px;margin-left:-10%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid rgb(181, 198, 208)}@media (min-width: 36em){.duet-date-dialog-mobile-header{position:absolute;top:-8px;right:-8px;width:auto;padding:0;margin:0;overflow:visible;border:0}}.duet-theme-turva .duet-date-dialog-mobile-header{border-color:rgb(199, 202, 207)}.duet-date-dialog-mobile-header duet-label{display:inline-block;max-width:84%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 36em){.duet-date-dialog-mobile-header duet-label{display:none}}.duet-date-picker-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px !important;padding:0 !important;color:rgb(8, 42, 77) !important;cursor:pointer;background:rgb(245, 248, 250) !important;border-radius:50%;-webkit-appearance:none;appearance:none}@media (min-width: 36em){.duet-date-picker-close{opacity:0}}.duet-theme-turva .duet-date-picker-close{background:rgb(245, 247, 250) !important}.duet-date-picker-close:hover{background:rgb(245, 248, 250) !important}.duet-theme-turva .duet-date-picker-close:hover{background:rgb(245, 247, 250) !important}.duet-date-picker-close:focus{outline:none;box-shadow:0 0 0 2px #0077b3 !important}@media (min-width: 36em){.duet-date-picker-close:focus{opacity:1}}.duet-theme-turva .duet-date-picker-close:focus{box-shadow:0 0 0 2px #171c3a !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-button{color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva.duet-date-input-has-focus :host(.duet-theme-turva2) .duet-theme-turva,:host(.duet-theme-turva2) .duet-theme-turva:focus{color:#172a3b}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button{color:#172a3b !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button:hover:not(.disabled){background:#fbe1d1 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.today{background:#fdf7f2 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button:active{color:rgb(255, 255, 255) !important;background:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.outside{color:#7891a4 !important;background:#f5f6f7 !important}:host(.duet-theme-turva2) .duet-theme-turva .duet-date-table-button.disabled{color:rgb(199, 202, 207) !important}:host(.duet-theme-turva2) .duet-theme-turva [aria-pressed=true] .duet-date-table-button,:host(.duet-theme-turva2) .duet-theme-turva :focus .duet-date-table-button{color:rgb(255, 255, 255) !important;background:#e61740 !important}:host(.duet-theme-turva2) .duet-theme-turva.duet-date-table{color:#172a3b}";
9359
9469
 
9360
9470
  /**
9361
9471
  * @slot tooltip - Use to place a tooltip alongside the label.
@@ -10320,20 +10430,20 @@ class DuetFieldset {
10320
10430
  * Always the last one in the class.
10321
10431
  */
10322
10432
  render() {
10323
- return (hAsync(Host, { key: 'cd6c5c663bfac687b8af1150658e9bc9e2866719', class: { "duet-m-0": this.margin === "none" } }, hAsync("fieldset", { key: '2586b5ed0c097d34267da9945bddab85d36d32de', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
10433
+ return (hAsync(Host, { key: '38ea276e34a894a61e20b83ea5135ae13d001b3a', class: { "duet-m-0": this.margin === "none" } }, hAsync("fieldset", { key: '368adc22f8a32f90aa269d605072496e87e425ff', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
10324
10434
  // NVDA and VoiceOver do not yet support aria-errormessage
10325
10435
  // once they do, we can remove errors from the aria-describedby
10326
10436
  // aria-errormessage={this.error ? this.errorId : null}
10327
10437
  class: {
10328
10438
  "duet-fieldset": true,
10329
10439
  "duet-theme-turva": this.theme === "turva",
10330
- } }, hAsync("legend", { key: 'b1a3128ea5cbcf5a416562cb0642275587a1e58d', id: this.labelId }, hAsync(this.labelHeadingLevel, { key: '3a4e0978acf8c9a89fd93e121c8a0cf1d6caabe7' }, this.label), this.caption && hAsync("span", { key: '09c1786e15eb127dc6e1aa9c48084ffaaa54a70b' }, this.caption)), hAsync("div", { key: '4b55a73deb44c934699ee6af1ed49f2339f036c8', class: {
10440
+ } }, hAsync("legend", { key: 'af44dcd1fcaaa4e20ef7a332a01c0536393170d6', id: this.labelId }, hAsync(this.labelHeadingLevel, { key: '4be244f546af06b9e0d0d8dbb63914fe1b5097f0' }, this.label), this.caption && hAsync("span", { key: 'af7c5c27fd2435195a83d7bba5fdd1c0e558b9c3' }, this.caption)), hAsync("div", { key: 'c00dad34e9788200cb4c10bb0d0debcca7073d35', class: {
10331
10441
  "duet-legend-wrapper": true,
10332
10442
  "duet-legend-has-caption": !!this.caption,
10333
10443
  "duet-legend-has-tooltip": this.hasTooltip,
10334
10444
  "duet-legend-hidden": this.labelHidden,
10335
10445
  "duet-legend-compact": this.compactLabel,
10336
- } }, hAsync("div", { key: 'b87ddef8f9373fad104a4eee49ff9d7983407314', class: "duet-fieldset-label" }, hAsync("span", { key: '84d18e50d219fe9b4ce6d6d03068260f66bbbb13', "aria-hidden": "true" }, this.label), hAsync("slot", { key: '4aa129b64173a74dbe96683f98d0d7ddfe69c127', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (hAsync("div", { key: '6bb867cb3c26d53bd8601729e87c5d32a8682d4a', class: "duet-fieldset-caption", "aria-hidden": "true" }, hAsync("duet-caption", { key: 'e1d4e178c0292dd8f409b45b04f8af30f8dd36e6', theme: this.theme, margin: "none" }, this.caption)))), hAsync("slot", { key: '094a1cce9f3346ad27331e4e9b33443e7cfc666a' }), hAsync("span", { key: 'fa3b0c5d05e7acf22c9d6ff005164567b8c43f20', class: "duet-fieldset-help duet-fieldset-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: 'a731c1c071f24d69ffd89a16f9759a2f8c48b7bc', class: { "duet-m-0": this.lastItemIsChip } }, this.error)))));
10446
+ } }, hAsync("div", { key: 'b29f31d6be021614540bc0d5a316eb5bf1134718', class: "duet-fieldset-label" }, hAsync("span", { key: 'c9b7676012f5fa4996b81b1a1ef3dd018de32602', "aria-hidden": "true" }, this.label), hAsync("slot", { key: '78e0f51d69bca27f6a920b67e1cea434496b15c0', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (hAsync("div", { key: 'a7f7f4a885e0fd1a23ae18c4d95e27c1f4cd8c8d', class: "duet-fieldset-caption", "aria-hidden": "true" }, hAsync("duet-caption", { key: '5eceb0803fcab7ec51864d8d0d8a781f79d5b41d', theme: this.theme, margin: "none" }, this.caption)))), hAsync("slot", { key: 'ad2bbafd5e6e2bd000bc019e722e3343e79a1c96' }), hAsync("span", { key: '87940cb69187ebd8b488ee87b27ee86ff6c4f30b', class: "duet-fieldset-help duet-fieldset-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: 'ed6accdced61a61d5192db9ac67bbe037d3aac1d', class: { "duet-m-0": this.lastItemIsChip } }, this.error)))));
10337
10447
  }
10338
10448
  get element() { return getElement(this); }
10339
10449
  static get style() { return duetFieldsetCss; }
@@ -10848,7 +10958,7 @@ class DuetGridItem {
10848
10958
  * Always the last one in the class.
10849
10959
  */
10850
10960
  render() {
10851
- return (hAsync(Host, { key: '18d9a9b7229ad1f9a982e7db464174d80fd54010', style: {
10961
+ return (hAsync(Host, { key: '66116bd7c2339e2593bd0e2058eea8c9fafcdb47', style: {
10852
10962
  "min-width": this.minWidth,
10853
10963
  "max-width": this.maxWidth,
10854
10964
  }, class: {
@@ -10865,7 +10975,7 @@ class DuetGridItem {
10865
10975
  "duet-grid-item-br-medium": this.breakpoint === "medium",
10866
10976
  "duet-grid-item-br-large": this.breakpoint === "large",
10867
10977
  "duet-grid-item-br-x-large": this.breakpoint === "x-large",
10868
- } }, hAsync("slot", { key: '6325019d12132b553bd3e6ee18b544bdb7b316e0' })));
10978
+ } }, hAsync("slot", { key: '0cadadd66af3f4a6d6cf2289e6775c95d4d523c5' })));
10869
10979
  }
10870
10980
  static get style() { return duetGridItemCss; }
10871
10981
  static get cmpMeta() { return {
@@ -11708,7 +11818,7 @@ class DuetHeader {
11708
11818
  "duet-theme-turva": this.theme === "turva",
11709
11819
  "duet-header-back": true,
11710
11820
  "duet-header-inactive": true,
11711
- }, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel(), hAsync("duet-button", { url: this.processedBack.href, id: this.processedBack.id, theme: this.theme, variation: "plain", color: this.theme === "turva" ? "secondary-turva" : "secondary", icon: "navigation-arrow-left", iconSize: "large", onClick: this.handleBackClick }, this.processedBack.label), logo(), hAsync("slot", { name: "logo-utility" }))))));
11821
+ }, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel(), hAsync("duet-button", { url: this.processedBack.href, id: this.processedBack.id, theme: this.theme, variation: "plain", color: postfixTheme("secondary", this.theme), icon: "navigation-arrow-left", iconSize: "large", onClick: this.handleBackClick }, this.processedBack.label), logo(), hAsync("slot", { name: "logo-utility" }))))));
11712
11822
  }
11713
11823
  const itemsHaveSubItems = this.processedItems && this.processedItems.some(item => item.items && item.items.length > 0);
11714
11824
  const isSecondLevelActive = this.processedItems &&
@@ -11849,7 +11959,7 @@ class DuetHeader {
11849
11959
  }; }
11850
11960
  }
11851
11961
 
11852
- const duetHeadingCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%}.duet-heading{margin-bottom:16px !important;width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(8, 42, 77);text-decoration:none;text-wrap:balance;letter-spacing:-0.01rem;word-break:break-word}@media (min-width: 36em){.duet-heading{margin-bottom:20px !important}}.duet-heading.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:italic;font-weight:700;color:rgb(23, 28, 58)}.duet-heading.duet-heading-border{padding-bottom:20px;border-bottom:1px solid rgb(212, 223, 229)}.duet-heading.duet-heading-border.duet-heading-border-solid{border-bottom-color:rgb(98, 121, 138)}.duet-heading.duet-heading-hyphenate{-webkit-hyphens:auto;hyphens:auto}.duet-heading.h0{font-size:9.4vw;line-height:1.1}.duet-heading.h0.duet-p-0{padding:0 !important}.duet-heading.h0.duet-m-0{margin:0 !important}@media (max-width: 31.914893617rem){.duet-heading.h0{font-size:3rem}}@media (min-width: 47.8723404255rem){.duet-heading.h0{font-size:4.5rem}}@media (max-width: 22.5em){.duet-heading.h0{font-size:2.25rem}}.duet-heading.h0.fixed-size{font-size:4.5rem}.duet-heading.h1{font-size:7vw;line-height:1.1}.duet-heading.h1.duet-p-0{padding:0 !important}.duet-heading.h1.duet-m-0{margin:0 !important}@media (max-width: 32.1428571429rem){.duet-heading.h1{font-size:2.25rem}}@media (min-width: 42.8571428571rem){.duet-heading.h1{font-size:3rem}}@media (max-width: 22.5em){.duet-heading.h1{font-size:1.5rem}}.duet-heading.h1.fixed-size{font-size:3rem}.duet-heading.h2{font-size:5.8vw;line-height:1.1}.duet-heading.h2.duet-p-0{padding:0 !important}.duet-heading.h2.duet-m-0{margin:0 !important}@media (max-width: 25.8620689655rem){.duet-heading.h2{font-size:1.5rem}}@media (min-width: 38.7931034483rem){.duet-heading.h2{font-size:2.25rem}}.duet-heading.h2.duet-theme-turva{font-style:normal}@media (max-width: 22.5em){.duet-heading.h2{font-size:1.375rem}}.duet-heading.h2.fixed-size{font-size:2.25rem}.duet-heading.h3{margin-bottom:12px !important;font-size:4.2vw}.duet-heading.h3.duet-p-0{padding:0 !important}.duet-heading.h3.duet-m-0{margin:0 !important}@media (max-width: 29.7619047619rem){.duet-heading.h3{font-size:1.25rem}}@media (min-width: 35.7142857143rem){.duet-heading.h3{font-size:1.5rem}}.duet-heading.h3.duet-theme-turva{font-style:normal}.duet-heading.h3.duet-heading-border{padding-bottom:20px}.duet-heading.h3.fixed-size{font-size:1.5rem}.duet-heading.h4{margin-bottom:8px !important;font-size:4vw;letter-spacing:0}.duet-heading.h4.duet-p-0{padding:0 !important}.duet-heading.h4.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h4{font-size:1.1rem}}@media (min-width: 31.25rem){.duet-heading.h4{font-size:1.25rem}}.duet-heading.h4.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h4.duet-heading-border{padding-bottom:20px}.duet-heading.h4.fixed-size{font-size:1.25rem}.duet-heading.h5{margin-bottom:8px !important;font-size:4vw;font-weight:600;letter-spacing:0}.duet-heading.h5.duet-p-0{padding:0 !important}.duet-heading.h5.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h5{font-size:1.1rem}}@media (min-width: 28.4090909091rem){.duet-heading.h5{font-size:1.1363636364rem}}.duet-heading.h5.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h5.duet-heading-border{padding-bottom:16px}.duet-heading.h5.fixed-size{font-size:1.25rem}.duet-heading.h6{margin-bottom:8px !important;font-size:1rem;font-weight:600;letter-spacing:0}.duet-heading.h6.duet-p-0{padding:0 !important}.duet-heading.h6.duet-m-0{margin:0 !important}.duet-heading.h6.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h6.duet-heading-border{padding-bottom:16px}.duet-heading.duet-normal,.duet-heading.duet-theme-turva.duet-normal{font-style:normal !important;font-weight:400 !important}.duet-heading.duet-semibold,.duet-heading.duet-theme-turva.duet-semibold{font-style:normal !important;font-weight:600 !important}:host(.duet-theme-turva2) .duet-heading.duet-theme-turva{color:#172a3b}";
11962
+ const duetHeadingCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%}.duet-heading{margin-bottom:16px !important;width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(8, 42, 77);text-decoration:none;text-wrap:balance;letter-spacing:-0.01rem;word-break:break-word}@media (min-width: 36em){.duet-heading{margin-bottom:20px !important}}.duet-heading.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:italic;font-weight:700;color:rgb(23, 28, 58)}.duet-heading.duet-heading-border{padding-bottom:20px;border-bottom:1px solid rgb(212, 223, 229)}.duet-heading.duet-heading-border.duet-heading-border-solid{border-bottom-color:rgb(98, 121, 138)}.duet-heading.duet-heading-hyphenate{-webkit-hyphens:auto;hyphens:auto}.duet-heading.h0{font-size:9.4vw;line-height:1.1}.duet-heading.h0.duet-p-0{padding:0 !important}.duet-heading.h0.duet-m-0{margin:0 !important}@media (max-width: 31.914893617rem){.duet-heading.h0{font-size:3rem}}@media (min-width: 47.8723404255rem){.duet-heading.h0{font-size:4.5rem}}@media (max-width: 22.5em){.duet-heading.h0{font-size:2.25rem}}.duet-heading.h0.fixed-size{font-size:4.5rem}.duet-heading.h1{font-size:7vw;line-height:1.1}.duet-heading.h1.duet-p-0{padding:0 !important}.duet-heading.h1.duet-m-0{margin:0 !important}@media (max-width: 32.1428571429rem){.duet-heading.h1{font-size:2.25rem}}@media (min-width: 42.8571428571rem){.duet-heading.h1{font-size:3rem}}@media (max-width: 22.5em){.duet-heading.h1{font-size:1.5rem}}.duet-heading.h1.fixed-size{font-size:3rem}.duet-heading.h2{font-size:5.8vw;line-height:1.1}.duet-heading.h2.duet-p-0{padding:0 !important}.duet-heading.h2.duet-m-0{margin:0 !important}@media (max-width: 25.8620689655rem){.duet-heading.h2{font-size:1.5rem}}@media (min-width: 38.7931034483rem){.duet-heading.h2{font-size:2.25rem}}.duet-heading.h2.duet-theme-turva{font-style:normal}@media (max-width: 22.5em){.duet-heading.h2{font-size:1.375rem}}.duet-heading.h2.fixed-size{font-size:2.25rem}.duet-heading.h3{margin-bottom:12px !important;font-size:4.2vw}.duet-heading.h3.duet-p-0{padding:0 !important}.duet-heading.h3.duet-m-0{margin:0 !important}@media (max-width: 29.7619047619rem){.duet-heading.h3{font-size:1.25rem}}@media (min-width: 35.7142857143rem){.duet-heading.h3{font-size:1.5rem}}.duet-heading.h3.duet-theme-turva{font-style:normal}.duet-heading.h3.duet-heading-border{padding-bottom:20px}.duet-heading.h3.fixed-size{font-size:1.5rem}.duet-heading.h4{margin-bottom:8px !important;font-size:4vw;letter-spacing:0}.duet-heading.h4.duet-p-0{padding:0 !important}.duet-heading.h4.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h4{font-size:1.1rem}}@media (min-width: 31.25rem){.duet-heading.h4{font-size:1.25rem}}.duet-heading.h4.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h4.duet-heading-border{padding-bottom:20px}.duet-heading.h4.fixed-size{font-size:1.25rem}.duet-heading.h5{margin-bottom:8px !important;font-size:4vw;font-weight:600;letter-spacing:0}.duet-heading.h5.duet-p-0{padding:0 !important}.duet-heading.h5.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h5{font-size:1.1rem}}@media (min-width: 28.4090909091rem){.duet-heading.h5{font-size:1.1363636364rem}}.duet-heading.h5.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h5.duet-heading-border{padding-bottom:16px}.duet-heading.h5.fixed-size{font-size:1.25rem}.duet-heading.h6{margin-bottom:8px !important;font-size:1rem;font-weight:600;letter-spacing:0}.duet-heading.h6.duet-p-0{padding:0 !important}.duet-heading.h6.duet-m-0{margin:0 !important}.duet-heading.h6.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h6.duet-heading-border{padding-bottom:16px}.duet-heading.duet-normal,.duet-heading.duet-theme-turva.duet-normal{font-style:normal !important;font-weight:400 !important}.duet-heading.duet-semibold,.duet-heading.duet-theme-turva.duet-semibold{font-style:normal !important;font-weight:600 !important}:host(.duet-theme-turva2) .duet-heading.duet-theme-turva{font-style:normal !important;color:#172a3b}";
11853
11963
 
11854
11964
  /**
11855
11965
  * @part duet-heading - piercing selector for styling the heading element that should be used only in special circumstances
@@ -11941,7 +12051,7 @@ class DuetHeading {
11941
12051
  }; }
11942
12052
  }
11943
12053
 
11944
- const duetHeroCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}.duet-hero{position:relative;display:block;width:100%;padding:48px 28px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-style:normal;font-weight:400;line-height:1.5;text-decoration:none;text-shadow:none;text-transform:none;background:rgb(8, 42, 77)}.duet-hero.duet-p-0{padding:0 !important}.duet-hero.duet-m-0{margin:0 !important}.duet-hero.duet-hero-text-center{text-align:center !important}.duet-hero.duet-hero-light{padding-bottom:0 !important}@media (min-width: 62em){.duet-hero.duet-hero-light{padding-bottom:28px !important}}.duet-hero.duet-hero-with-image{padding-bottom:20px !important;margin-bottom:-36px}@media (min-width: 48em){.duet-hero.duet-hero-with-image{padding-bottom:28px !important}}@media (min-width: 62em){.duet-hero.duet-hero-with-image{padding-bottom:36px !important;margin-bottom:-20px}}.duet-hero.duet-hero-light,.duet-hero.duet-hero-with-image{color:rgb(8, 42, 77);background-color:rgb(255, 255, 255);background-image:linear-gradient(rgb(240, 247, 250), #f8fbfd)}.duet-hero.duet-hero-light::before,.duet-hero.duet-hero-with-image::before{position:absolute;top:100%;left:0;z-index:-1;width:100%;height:400px;content:\"\";background-image:linear-gradient(#f8fbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-light.duet-theme-turva,.duet-hero.duet-hero-with-image.duet-theme-turva{color:rgb(23, 28, 58);background-image:linear-gradient(rgb(245, 247, 250), #fafbfd)}.duet-hero.duet-hero-light.duet-theme-turva::before,.duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fafbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-gray{color:rgb(8, 42, 77);background:rgb(245, 248, 250)}.duet-hero.duet-hero-gray.duet-theme-turva{background:rgb(245, 247, 250)}@media (min-width: 62em){.duet-hero.duet-hero-gray .duet-hero-text{display:inline-block;vertical-align:top}.duet-hero.duet-hero-gray .duet-hero-icon+.duet-hero-text{margin-left:28px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-actions{padding-bottom:65.4545454545px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-back{padding-top:72px}}.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{padding:0 0 48px;margin:0;background:none}@media (min-width: 48em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:540px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:620px}}.duet-hero.duet-hero-campaign .background-area,.duet-hero.duet-hero-section .background-area{height:1px;margin-bottom:-1px}.duet-hero.duet-hero-campaign .background-container,.duet-hero.duet-hero-section .background-container{position:absolute;right:0;left:0;display:grid;align-items:flex-start;justify-content:center;overflow:hidden}.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{display:flex;align-items:flex-start;justify-content:center;height:220px;margin:0 auto}.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{height:100%}.duet-hero.duet-hero-campaign .background img.cover,.duet-hero.duet-hero-section .background img.cover{object-fit:cover}.duet-hero.duet-hero-campaign .background img.center,.duet-hero.duet-hero-section .background img.center{object-position:center}@media (min-width: 1440px){.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:300px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:450px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:500px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:580px}}@media (min-width: 1600px){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{width:1600px;overflow:hidden}}.duet-hero.duet-hero-campaign .background .brand-container,.duet-hero.duet-hero-section .background .brand-container{position:relative;width:100%;height:100%;min-height:220px;overflow:hidden}.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{position:absolute;width:100%;height:220px;background-repeat:no-repeat;background-position:center center;background-size:cover}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:-200px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:auto;height:1100px;background-position:140% -200%}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{background-position:right -200%}}.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{position:absolute;top:143px;right:0;left:-30px;width:340px;height:340px;margin-right:auto;margin-left:auto;background:rgb(255, 255, 255);border-radius:20%;mix-blend-mode:normal;transform:rotate(8deg)}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:160px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:215px;left:-50px;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:250px;left:0;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:240px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:280px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:310px}}.duet-hero.duet-hero-campaign .duet-hero-text,.duet-hero.duet-hero-section .duet-hero-text{width:100%}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:36px}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:48px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:64px}}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{margin:0 auto}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:80%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{display:flex;align-items:center;height:6rem;padding:0 1rem;margin:1rem 0 4.5rem}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:2rem 0 4rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:6rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:8rem 0 11rem}}.duet-hero.duet-hero-campaign .duet-hero-wrapper.fluid,.duet-hero.duet-hero-campaign .duet-hero-wrapper.narrow,.duet-hero.duet-hero-section .duet-hero-wrapper.fluid,.duet-hero.duet-hero-section .duet-hero-wrapper.narrow{padding:0 16px}.duet-hero.duet-hero-campaign.duet-theme-turva,.duet-hero.duet-hero-section.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:none}.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:125px;left:-10px;width:350px;height:350px;background:rgb(255, 255, 255);transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:143px;left:-30px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:180px;left:0;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:220px;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:230px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:260px}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:290px}}.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:98%}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:78%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:66%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:65%}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:52%}}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:2rem 0 5rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:6rem 0 12rem}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:8rem 0 13rem}}@media (min-width: 48em){.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-section{min-height:auto}}@media (min-width: 76.25em){.duet-hero.duet-hero-section{min-height:560px}}@media (min-width: 62em){.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 62em){.duet-hero.duet-hero-section .background{width:1400px;height:436px;overflow:hidden}}@media (min-width: 76.25em){.duet-hero.duet-hero-section .background{width:1536px;height:516px}}@media (min-width: 106.25em){.duet-hero.duet-hero-section .background{width:1536px}}.duet-hero.duet-hero-product{position:relative;padding:0 0 48px;margin:0;background:rgb(255, 255, 255)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product{padding-top:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product{padding-top:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product{padding-top:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product{padding-top:250px}}@media (min-width: 48em){.duet-hero.duet-hero-product{min-height:400px;padding:72px 0}}@media (min-width: 62em){.duet-hero.duet-hero-product{min-height:500px;padding:96px 0}}@media (min-width: 76.25em){.duet-hero.duet-hero-product{min-height:575px;padding:120px 0}}.duet-hero.duet-hero-product .background-area{position:absolute;top:0;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-area *{pointer-events:auto}.duet-hero.duet-hero-product .background-container{position:absolute;top:-150px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-container *{pointer-events:auto}@media (min-width: 62em){.duet-hero.duet-hero-product .background-container{top:-48px}}.duet-hero.duet-hero-product .background{position:absolute;top:145px;width:100%;overflow:visible}.duet-hero.duet-hero-product .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-product .background{top:130px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{top:35px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{position:absolute;right:0;left:0;max-width:1440px;height:100%;margin:0 auto}}.duet-hero.duet-hero-product .background .brand-shaped-image{position:absolute;top:-160px;right:-15%;z-index:0;width:375px;height:375px;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-160px;right:-60px;width:360px;height:360px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-120px;right:-14px;width:290px;height:290px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-175px;right:-20px;width:400px;height:400px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-145px;right:-150px;width:414px;height:414px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-105px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-45px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-190px;right:-150px;width:552px;height:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-300px;right:-128px;width:736px;height:736px}.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-160px}}@media (min-width: 1300px){.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-128px}}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-position:40px;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:520px;height:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:440px;height:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:600px;height:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:500px;height:292px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:720px;height:420px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:950px;height:540px}}.duet-hero.duet-hero-product .background .brand-shape{position:absolute;background:rgb(228, 241, 247);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shape{top:20px;right:210px;width:200px;height:200px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shape{top:24px;right:199px;width:162px;height:162px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shape{top:25px;right:290px;width:220px;height:220px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shape{top:90px;right:145px;width:225px;height:225px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shape{right:195px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shape{right:245px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shape{top:115px;right:228px;width:300px;height:300px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shape{right:343px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shape{right:394px;width:400px;height:400px}}.duet-hero.duet-hero-product .background .brand-shaped-icon{position:absolute;display:flex;align-items:center;justify-content:center;background:rgba(0, 119, 179, 0.85);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:165px;right:25px;width:69px;height:69px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:138px;right:50px;width:57px;height:57px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:175px;right:125px;width:78px;height:78px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:220px;right:60px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:110px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:160px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:296px;right:120px;width:105px;height:105px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:235px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:345px;right:245px;width:140px;height:140px}}.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{transform:rotate(-7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:100%;height:100%}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:86px;height:86px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:104px;height:104px}}.duet-hero.duet-hero-product .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-text{margin-top:0}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-heading{margin-top:0}}.duet-hero.duet-hero-product .duet-hero-wrapper.fluid,.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:50%}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:47%}}.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:47%}}.duet-hero.duet-hero-product.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{left:181px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{margin:0 auto;border-radius:0;transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (max-width: 35.9375em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-120px;width:385px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-95px;width:320px}}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-135px;width:420px}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-110px;right:-110px;width:418px}}@media (min-width: 860px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-75px}}@media (min-width: 960px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-40px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-130px;right:-100px;width:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-215px;width:736px}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-115px}}@media (min-width: 1300px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-50px}}@media (min-width: 1400px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-35px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image .brand-shaped-image-bg{transform:translate(-50%, 0)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon{background:rgba(198, 12, 48, 0.9);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat;transform:rotate(0deg)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{position:relative;top:-6px;transform:rotate(0deg)}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-8px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-12px}}.duet-hero.duet-hero-content{padding:0 0 48px;padding-top:236px;background:rgb(255, 255, 255)}@media (min-width: 48em){.duet-hero.duet-hero-content{padding-top:384px}}.duet-hero.duet-hero-content:not(.duet-hero-has-image){padding:72px 0 48px}.duet-hero.duet-hero-content .background-area{position:absolute;width:100%}.duet-hero.duet-hero-content .background{position:absolute;top:-236px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-content .background *{pointer-events:auto}.duet-hero.duet-hero-content .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-content .background{top:-384px}}.duet-hero.duet-hero-content .background .brand-shaped-image{position:absolute;top:-165px;right:0;left:30px;z-index:0;width:375px;height:375px;margin:0 auto;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image{top:-325px;left:250px;width:687px;height:687px}}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-hero-content .background .brand-shape{position:absolute;top:-25px;right:0;left:-300px;width:240px;height:240px;margin-right:auto;margin-left:auto;background:rgb(0, 119, 179);border-radius:20%;mix-blend-mode:normal;opacity:0.07;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shape{top:80px;left:-400px;width:373px;height:373px}}.duet-hero.duet-hero-content .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-content .duet-hero-wrapper.fluid,.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 72px}}.duet-hero.duet-hero-content .duet-hero-text{max-width:100%}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text{width:80%}}.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1rem;margin-bottom:0.5rem}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1.5rem;margin-bottom:0}}.duet-hero.duet-hero-content.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-content.duet-theme-turva .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .background-mask{left:181px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-155px;right:0;left:0;width:420px;height:420px;margin:0 auto;border-radius:0;transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-230px;width:687px;height:637px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:600px;height:280px;transform:translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-hero{min-height:290px;padding:111.6px 56px;overflow:visible}}.duet-hero-icon{display:inline-block;vertical-align:top}@media (min-width: 62em){.duet-hero-icon{margin-top:-8px}}@media (min-width: 62em){.duet-hero-heading{margin-top:12px}}@media (min-width: 62em){.duet-hero-heading-has-pre{margin-top:0}}.duet-hero-wrapper{position:relative;width:100%;max-width:1110px;margin:0 auto;text-align:center}.duet-hero-left-align .duet-hero-wrapper{text-align:left}.duet-hero-with-image .duet-hero-wrapper{position:static}@media (min-width: 62em){.duet-hero-wrapper{text-align:left}}.duet-hero-text{max-width:50rem;margin:0 auto}.duet-hero-text-center .duet-hero-text{text-align:center !important}@media (min-width: 48em){.duet-hero-text{width:80%}.duet-hero-left-align .duet-hero-text{margin:0}}@media (min-width: 62em){.duet-hero-text{width:52%;max-width:none;margin-top:-10px;margin-left:0}.duet-hero-text-center .duet-hero-text{margin-left:auto}}.duet-hero:not(.duet-hero-with-image) .duet-hero-image{width:100%;max-width:400px;height:0;padding-bottom:50%;margin:28px auto 0;background-repeat:no-repeat;background-position:50% 50%;background-size:contain}@media (min-width: 36em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{padding-bottom:40%}}@media (min-width: 48em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:420px;padding-bottom:34%}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:540px}}@media (min-width: 62em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{position:absolute;top:50%;right:0;padding-bottom:30%;margin:0;transform:translateY(-50%)}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-60px;padding-bottom:26%}.duet-hero-gray .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}@media (min-width: 62em){.duet-hero-gray:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}.duet-hero-image-wrapper{position:relative;width:80%;height:0;padding-bottom:80%;margin:-30px auto 36px;overflow:hidden;border-radius:28%;box-shadow:0 0 20px rgba(255, 255, 255, 0.5);transform:rotate(10deg)}.duet-theme-turva .duet-hero-image-wrapper{padding-bottom:68%;border-radius:44% 47% 38% 54%;transform:none}@media screen and (min-width: 440px){.duet-hero-image-wrapper{width:300px;padding-bottom:300px}.duet-theme-turva .duet-hero-image-wrapper{width:80%;padding-bottom:68%}}@media (min-width: 62em){.duet-hero-image-wrapper{position:absolute;top:-60px;right:-50px;width:470px;padding-bottom:470px;margin:0}.duet-theme-turva .duet-hero-image-wrapper{top:-40px;right:-80px;width:536px;padding-bottom:470px}}@media (min-width: 76.25em){.duet-hero-image-wrapper{top:-70px;right:-60px;width:600px;padding-bottom:600px}.duet-theme-turva .duet-hero-image-wrapper{top:-70px;right:-60px;width:650px;padding-bottom:600px}}@media screen and (min-width: 1450px){.duet-hero-image-wrapper{top:-70px;right:25px}.duet-theme-turva .duet-hero-image-wrapper{right:0}}.duet-hero-image-wrapper .duet-hero-image{position:absolute;top:-5%;left:-5%;width:110%;height:110%;background-repeat:no-repeat;background-position:50% 50%;background-size:cover;transform:rotate(-10deg)}.duet-theme-turva .duet-hero-image-wrapper .duet-hero-image{top:0;left:0;width:100%;height:100%;transform:none}.duet-hero-image-mask{position:relative;margin:-48px auto 0;overflow:hidden}@media (min-width: 62em){.duet-hero-image-mask{position:absolute;top:0;right:0;width:470px;height:460px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-mask{width:650px;height:580px}}@media screen and (min-width: 1450px){.duet-hero-image-mask{right:50%;transform:translateX(110%)}.duet-theme-turva .duet-hero-image-mask{transform:translateX(108%)}}duet-heading+duet-button{margin-top:12px !important}.duet-hero-links{width:calc(100% + 56px);margin-top:48px;margin-left:-28px}.duet-hero-minimal .duet-hero-links{margin-top:28px}@media (min-width: 36em){.duet-hero-links{margin-top:72px}.duet-hero-minimal .duet-hero-links{margin-top:28px}}@media (min-width: 62em){.duet-hero-links{width:auto;margin:36px 0 0}.duet-hero-minimal .duet-hero-links{margin-top:28px}}.duet-hero-link{display:flex;align-items:center;width:100%;padding:16px 16px 8px;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.25;color:rgb(0, 119, 179);text-align:left;text-decoration:none;border-bottom:1px solid rgb(212, 223, 229);transition:background-color 300ms ease}.duet-hero-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-hero-link:focus,.duet-hero-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-hero-link:hover,.duet-hero-link:hover .duet-hero-action-arrow{color:rgb(0, 75, 129) !important;background:transparent !important}.duet-theme-turva .duet-hero-link:hover,.duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow{color:rgb(126, 2, 35) !important}.duet-theme-turva .duet-hero-link{color:rgb(198, 12, 48)}@media (min-width: 36em){.duet-hero-link{padding:16px 16px 16px 28px}}@media (min-width: 62em){.duet-hero-link{display:inline-flex;width:auto;max-width:350px;padding:0;margin:0 28px 16px 0;border:0;border-radius:4px}}.duet-hero-link:hover{background:rgba(0, 0, 0, 0.02)}@media (min-width: 62em){.duet-hero-link:hover{background:transparent}}.duet-hero-link:first-of-type{border-top:1px solid rgb(212, 223, 229)}@media (min-width: 62em){.duet-hero-link:first-of-type{margin-top:0;border:0}}.duet-hero-link:last-of-type{margin-bottom:-48px}@media (min-width: 62em){.duet-hero-link:last-of-type{margin-right:0;margin-bottom:0}}.duet-hero-link span{margin-top:-8px}@media (min-width: 36em){.duet-hero-link span{margin:0}}.duet-hero-action-icon{margin-right:8px}@media (min-width: 36em){.duet-hero-action-icon{margin-right:12px}}.duet-hero-action-arrow{margin:0 0 0 8px;color:rgb(0, 119, 179)}@media (max-width: 35.9375em){.duet-hero-action-arrow{margin-top:-9px}}.duet-theme-turva .duet-hero-action-arrow{color:rgb(198, 12, 48)}.duet-hero-back{margin-bottom:28px !important;display:flex;align-items:center;justify-content:center}.duet-hero-left-align .duet-hero-back{align-items:self-start;justify-content:flex-start}@media (min-width: 36em){.duet-hero-back{margin-bottom:36px !important}.duet-hero-minimal .duet-hero-back{margin-bottom:28px !important}}@media (min-width: 62em){.duet-hero-back{display:block}}.duet-hero-pre{display:inline-block;width:auto;margin-right:8px}.duet-hero-pre+duet-heading{margin-top:0 !important}:host(.duet-theme-turva2) .duet-hero.duet-hero-light.duet-theme-turva,:host(.duet-theme-turva2) .duet-hero.duet-hero-with-image.duet-theme-turva{color:#172a3b;background-image:linear-gradient(#fdf7f2, #fefbf9)}:host(.duet-theme-turva2) .duet-hero.duet-hero-light.duet-theme-turva::before,:host(.duet-theme-turva2) .duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fefbf9, rgb(255, 255, 255))}:host(.duet-theme-turva2) .duet-hero.duet-hero-gray.duet-theme-turva{background:#f5f6f7}.duet-theme-turva :host(.duet-theme-turva2) .duet-hero-link{color:#e61740}.duet-theme-turva :host(.duet-theme-turva2) .duet-hero-action-arrow{color:#e61740}";
12054
+ const duetHeroCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}.duet-hero{position:relative;display:block;width:100%;padding:48px 28px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-style:normal;font-weight:400;line-height:1.5;text-decoration:none;text-shadow:none;text-transform:none;background:rgb(8, 42, 77)}.duet-hero.duet-p-0{padding:0 !important}.duet-hero.duet-m-0{margin:0 !important}.duet-hero.duet-hero-text-center{text-align:center !important}.duet-hero.duet-hero-light{padding-bottom:0 !important}@media (min-width: 62em){.duet-hero.duet-hero-light{padding-bottom:28px !important}}.duet-hero.duet-hero-with-image{padding-bottom:20px !important;margin-bottom:-36px}@media (min-width: 48em){.duet-hero.duet-hero-with-image{padding-bottom:28px !important}}@media (min-width: 62em){.duet-hero.duet-hero-with-image{padding-bottom:36px !important;margin-bottom:-20px}}.duet-hero.duet-hero-light,.duet-hero.duet-hero-with-image{color:rgb(8, 42, 77);background-color:rgb(255, 255, 255);background-image:linear-gradient(rgb(240, 247, 250), #f8fbfd)}.duet-hero.duet-hero-light::before,.duet-hero.duet-hero-with-image::before{position:absolute;top:100%;left:0;z-index:-1;width:100%;height:400px;content:\"\";background-image:linear-gradient(#f8fbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-light.duet-theme-turva,.duet-hero.duet-hero-with-image.duet-theme-turva{color:rgb(23, 28, 58);background-image:linear-gradient(rgb(245, 247, 250), #fafbfd)}.duet-hero.duet-hero-light.duet-theme-turva::before,.duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fafbfd, rgb(255, 255, 255))}.duet-hero.duet-hero-gray{color:rgb(8, 42, 77);background:rgb(245, 248, 250)}.duet-hero.duet-hero-gray.duet-theme-turva{background:rgb(245, 247, 250)}@media (min-width: 62em){.duet-hero.duet-hero-gray .duet-hero-text{display:inline-block;vertical-align:top}.duet-hero.duet-hero-gray .duet-hero-icon+.duet-hero-text{margin-left:28px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-actions{padding-bottom:65.4545454545px}}@media (min-width: 62em){.duet-hero.duet-hero-gray-with-back{padding-top:72px}}.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{padding:0 0 48px;margin:0;background:none}@media (min-width: 48em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:540px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign,.duet-hero.duet-hero-section{min-height:620px}}.duet-hero.duet-hero-campaign .background-area,.duet-hero.duet-hero-section .background-area{height:1px;margin-bottom:-1px}.duet-hero.duet-hero-campaign .background-container,.duet-hero.duet-hero-section .background-container{position:absolute;right:0;left:0;display:grid;align-items:flex-start;justify-content:center;overflow:hidden}.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{display:flex;align-items:flex-start;justify-content:center;height:220px;margin:0 auto}.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{height:100%}.duet-hero.duet-hero-campaign .background img.cover,.duet-hero.duet-hero-section .background img.cover{object-fit:cover}.duet-hero.duet-hero-campaign .background img.center,.duet-hero.duet-hero-section .background img.center{object-position:center}@media (min-width: 1440px){.duet-hero.duet-hero-campaign .background img,.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:300px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:450px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:500px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{height:580px}}@media (min-width: 1600px){.duet-hero.duet-hero-campaign .background,.duet-hero.duet-hero-section .background{width:1600px;overflow:hidden}}.duet-hero.duet-hero-campaign .background .brand-container,.duet-hero.duet-hero-section .background .brand-container{position:relative;width:100%;height:100%;min-height:220px;overflow:hidden}.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{position:absolute;width:100%;height:220px;background-repeat:no-repeat;background-position:center center;background-size:cover}@media (min-width: 36em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:-200px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{left:auto;height:1100px;background-position:140% -200%}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .background .brand,.duet-hero.duet-hero-section .background .brand{background-position:right -200%}}.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{position:absolute;top:143px;right:0;left:-30px;width:340px;height:340px;margin-right:auto;margin-left:auto;background:rgb(255, 255, 255);border-radius:20%;mix-blend-mode:normal;transform:rotate(8deg)}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:160px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:215px;left:-50px;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:250px;left:0;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:240px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:280px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .brand-shape,.duet-hero.duet-hero-section .brand-shape{top:310px}}.duet-hero.duet-hero-campaign .duet-hero-text,.duet-hero.duet-hero-section .duet-hero-text{width:100%}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:36px}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:48px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-heading::part(duet-heading),.duet-hero.duet-hero-section .duet-hero-text .duet-hero-heading::part(duet-heading){font-size:64px}}.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{margin:0 auto}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:80%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section .duet-hero-text duet-paragraph{width:52%}}.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{display:flex;align-items:center;height:6rem;padding:0 1rem;margin:1rem 0 4.5rem}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:2rem 0 4rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:6rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign .duet-hero-heading,.duet-hero.duet-hero-section .duet-hero-heading{margin:8rem 0 11rem}}.duet-hero.duet-hero-campaign .duet-hero-wrapper.fluid,.duet-hero.duet-hero-campaign .duet-hero-wrapper.narrow,.duet-hero.duet-hero-section .duet-hero-wrapper.fluid,.duet-hero.duet-hero-section .duet-hero-wrapper.narrow{padding:0 16px}.duet-hero.duet-hero-campaign.duet-theme-turva,.duet-hero.duet-hero-section.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:none}.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:125px;left:-10px;width:350px;height:350px;background:rgb(255, 255, 255);transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:143px;left:-30px;width:450px;height:450px}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:180px;left:0;width:550px;height:550px}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:220px;width:712.18px;height:712.18px}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:230px}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:260px}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .brand-shape,.duet-hero.duet-hero-section.duet-theme-turva .brand-shape{top:290px}}.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:98%}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:90%}}@media (min-width: 25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:78%}}@media (min-width: 30em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:66%}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:65%}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:70%}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-text duet-paragraph,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text .duet-hero-subheading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-text duet-paragraph{width:52%}}@media (min-width: 22.5em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:2rem 0 5rem}}@media (min-width: 36em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:3rem 0 8rem}}@media (min-width: 48em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:4rem 0 10rem}}@media (min-width: 62em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:5rem 0 10rem}}@media (min-width: 76.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:6rem 0 12rem}}@media (min-width: 106.25em){.duet-hero.duet-hero-campaign.duet-theme-turva .duet-hero-heading,.duet-hero.duet-hero-section.duet-theme-turva .duet-hero-heading{margin:8rem 0 13rem}}@media (min-width: 48em){.duet-hero.duet-hero-section{min-height:490px}}@media (min-width: 62em){.duet-hero.duet-hero-section{min-height:auto}}@media (min-width: 76.25em){.duet-hero.duet-hero-section{min-height:560px}}@media (min-width: 62em){.duet-hero.duet-hero-section .background img{width:100%;height:auto}}@media (min-width: 62em){.duet-hero.duet-hero-section .background{width:1400px;height:436px;overflow:hidden}}@media (min-width: 76.25em){.duet-hero.duet-hero-section .background{width:1536px;height:516px}}@media (min-width: 106.25em){.duet-hero.duet-hero-section .background{width:1536px}}.duet-hero.duet-hero-product{position:relative;padding:0 0 48px;margin:0;background:rgb(255, 255, 255)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product{padding-top:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product{padding-top:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product{padding-top:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product{padding-top:250px}}@media (min-width: 48em){.duet-hero.duet-hero-product{min-height:400px;padding:72px 0}}@media (min-width: 62em){.duet-hero.duet-hero-product{min-height:500px;padding:96px 0}}@media (min-width: 76.25em){.duet-hero.duet-hero-product{min-height:575px;padding:120px 0}}.duet-hero.duet-hero-product .background-area{position:absolute;top:0;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-area *{pointer-events:auto}.duet-hero.duet-hero-product .background-container{position:absolute;top:-150px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-product .background-container *{pointer-events:auto}@media (min-width: 62em){.duet-hero.duet-hero-product .background-container{top:-48px}}.duet-hero.duet-hero-product .background{position:absolute;top:145px;width:100%;overflow:visible}.duet-hero.duet-hero-product .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-product .background{top:130px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{top:35px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background{position:absolute;right:0;left:0;max-width:1440px;height:100%;margin:0 auto}}.duet-hero.duet-hero-product .background .brand-shaped-image{position:absolute;top:-160px;right:-15%;z-index:0;width:375px;height:375px;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-160px;right:-60px;width:360px;height:360px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-120px;right:-14px;width:290px;height:290px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-175px;right:-20px;width:400px;height:400px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-145px;right:-150px;width:414px;height:414px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-105px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-45px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-190px;right:-150px;width:552px;height:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image{top:-300px;right:-128px;width:736px;height:736px}.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-160px}}@media (min-width: 1300px){.duet-hero.duet-hero-product .background .brand-shaped-image.narrow{right:-128px}}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-position:40px;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:520px;height:240px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:440px;height:200px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:600px;height:260px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:500px;height:292px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:720px;height:420px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-image .brand-shaped-image-bg{width:950px;height:540px}}.duet-hero.duet-hero-product .background .brand-shape{position:absolute;background:rgb(228, 241, 247);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shape{top:20px;right:210px;width:200px;height:200px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shape{top:24px;right:199px;width:162px;height:162px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shape{top:25px;right:290px;width:220px;height:220px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shape{top:90px;right:145px;width:225px;height:225px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shape{right:195px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shape{right:245px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shape{top:115px;right:228px;width:300px;height:300px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shape{right:343px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shape{right:394px;width:400px;height:400px}}.duet-hero.duet-hero-product .background .brand-shaped-icon{position:absolute;display:flex;align-items:center;justify-content:center;background:rgba(0, 119, 179, 0.85);border-radius:25%;mix-blend-mode:normal;transform:rotate(7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:165px;right:25px;width:69px;height:69px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:138px;right:50px;width:57px;height:57px}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:175px;right:125px;width:78px;height:78px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:220px;right:60px}}@media (min-width: 860px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:110px}}@media (min-width: 960px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:160px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:296px;right:120px;width:105px;height:105px}}@media (min-width: 1100px){.duet-hero.duet-hero-product .background .brand-shaped-icon{right:235px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon{top:345px;right:245px;width:140px;height:140px}}.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{transform:rotate(-7deg)}@media (max-width: 35.9375em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:100%;height:100%}}@media (min-width: 36em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:72px;height:72px}}@media (min-width: 62em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:86px;height:86px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .background .brand-shaped-icon duet-icon{width:104px;height:104px}}.duet-hero.duet-hero-product .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-text{margin-top:0}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper .duet-hero-heading{margin-top:0}}.duet-hero.duet-hero-product .duet-hero-wrapper.fluid,.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:50%}}@media (min-width: 76.25em){.duet-hero.duet-hero-product .duet-hero-wrapper.fluid .duet-hero-text{width:47%}}.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow{padding:0 72px}}@media (min-width: 48em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:60%}}@media (min-width: 62em){.duet-hero.duet-hero-product .duet-hero-wrapper.narrow .duet-hero-text{width:47%}}.duet-hero.duet-hero-product.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .background-mask{left:181px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{margin:0 auto;border-radius:0;transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (max-width: 35.9375em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-120px;width:385px}}@media (max-width: 22.5em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-95px;width:320px}}@media (min-width: 36em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-135px;width:420px}}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-110px;right:-110px;width:418px}}@media (min-width: 860px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-75px}}@media (min-width: 960px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-40px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-130px;right:-100px;width:552px}}@media (min-width: 1100px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{right:-35px}}@media (min-width: 76.25em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image{top:-215px;width:736px}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-115px}}@media (min-width: 1300px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-50px}}@media (min-width: 1400px){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image.narrow{right:-35px}}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-image .brand-shaped-image-bg{transform:translate(-50%, 0)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon{background:rgba(198, 12, 48, 0.9);-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat;transform:rotate(0deg)}.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{position:relative;top:-6px;transform:rotate(0deg)}@media (min-width: 48em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-8px}}@media (min-width: 62em){.duet-hero.duet-hero-product.duet-theme-turva .background .brand-shaped-icon duet-icon{top:-12px}}.duet-hero.duet-hero-content{padding:0 0 48px;padding-top:236px;background:rgb(255, 255, 255)}@media (min-width: 48em){.duet-hero.duet-hero-content{padding-top:384px}}.duet-hero.duet-hero-content:not(.duet-hero-has-image){padding:72px 0 48px}.duet-hero.duet-hero-content .background-area{position:absolute;width:100%}.duet-hero.duet-hero-content .background{position:absolute;top:-236px;width:100%;height:600px;overflow:hidden;pointer-events:none}.duet-hero.duet-hero-content .background *{pointer-events:auto}.duet-hero.duet-hero-content .background .background-mask{display:none}@media (min-width: 48em){.duet-hero.duet-hero-content .background{top:-384px}}.duet-hero.duet-hero-content .background .brand-shaped-image{position:absolute;top:-165px;right:0;left:30px;z-index:0;width:375px;height:375px;margin:0 auto;overflow:hidden;border-radius:20%;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image{top:-325px;left:250px;width:687px;height:687px}}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-wrapper{position:relative;width:100%;height:100%}.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{position:absolute;bottom:0;left:50%;z-index:1;width:600px;height:256px;background-repeat:no-repeat;background-size:100%;transform:rotate(-7deg) translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-hero-content .background .brand-shape{position:absolute;top:-25px;right:0;left:-300px;width:240px;height:240px;margin-right:auto;margin-left:auto;background:rgb(0, 119, 179);border-radius:20%;mix-blend-mode:normal;opacity:0.07;transform:rotate(7deg)}@media (min-width: 48em){.duet-hero.duet-hero-content .background .brand-shape{top:80px;left:-400px;width:373px;height:373px}}.duet-hero.duet-hero-content .duet-hero-wrapper{max-width:100%;margin:0 auto}.duet-hero.duet-hero-content .duet-hero-wrapper.fluid,.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 16px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 28px}}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{padding:0 56px}}@media (min-width: 76.25em){.duet-hero.duet-hero-content .duet-hero-wrapper.fluid{max-width:1110px;padding:0}}.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{max-width:888px}@media (min-width: 36em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 48px}}@media (min-width: 48em){.duet-hero.duet-hero-content .duet-hero-wrapper.narrow{padding:0 72px}}.duet-hero.duet-hero-content .duet-hero-text{max-width:100%}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text{width:80%}}.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1rem;margin-bottom:0.5rem}@media (min-width: 62em){.duet-hero.duet-hero-content .duet-hero-text .duet-hero-pre{margin-top:1.5rem;margin-bottom:0}}.duet-hero.duet-hero-content.duet-theme-turva{background:rgb(255, 255, 255)}.duet-hero.duet-hero-content.duet-theme-turva .background-mask{position:absolute;top:0;left:0;display:block;width:721px;height:256.85px;pointer-events:none;background-image:url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIxIiBoZWlnaHQ9IjI1NyIgdmlld0JveD0iMCAwIDcyMSAyNTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yODIwXzY5OTkxKSI+CjxwYXRoIGQ9Ik04MC4xNzA1IDIzLjE4MTVDOTEuOTY5OSAxOC44NjU5IDEwMi44NyAxMS42NTU5IDExMi45MDkgMS41NjQ0OEMxMjMuNzcgLTguMzA1MjcgMTM0LjM4MiAtMTguMjAxMSAxNDQuODI2IC0yOC4xODgyQzE1NS4yNDMgLTM4LjE2MjIgMTY1LjkwOCAtNDguMDg0MSAxNzYuNzQzIC01Ny45Mjc4QzE3OC44MTYgLTU5LjA0OSAxODAuNDk4IC02MC4yODc3IDE4MS43ODggLTYxLjY1NjdDMTgzLjA2NiAtNjMuMDEyNiAxODUuNDY1IC02Mi4yODI1IDE4OS4wMTIgLTU5LjQ3OTNDMTg0LjczNSAtNTEuMTM1IDE4MC43NTkgLTQyLjk2MDIgMTc3LjAxNyAtMzQuOTAyN0MxNzMuMjg4IC0yNi44NDUyIDE2Ny42ODEgLTE5LjEyNjggMTYwLjIxMSAtMTEuNzYwM0MxNTIuNzUzIC00LjM4MDgzIDE0NC45NTYgMy4zMTE1MiAxMzYuODQ3IDExLjM2OUMxMjguNzI0IDE5LjQyNjUgMTIwLjk2NiAyNy4xNDUgMTEzLjQ4MyAzNC40OTg0Qzk3LjQ5OCA0OS44MTggNzkuNjYyIDU2LjAyNDEgNjAuMDAwOCA1My4xNjg4QzQwLjI4NzQgNTAuMzEzNSAyNS41NDE0IDM5LjA3NDcgMTUuNjk3NyAxOS40Nzg2QzMuOTI0NDUgLTIuMzcyOTkgLTEuMjI1NTUgLTI0LjQ3MjQgMC4yNDc3NDMgLTQ2Ljc4MDNDMS4yNTE2NyAtNjcuNDg0NiAzLjQwMjkzIC04Ny43OTc4IDYuODA1ODQgLTEwNy43NzJDMTAuMTk1NyAtMTI3LjczMyAxNS43MTA4IC0xNDcuNDg2IDIzLjMzOCAtMTY3LjA0M0MyNi4zMTA3IC0xNzQuMDMxIDI5LjAwOTUgLTE4MC44NSAzMS40NzM3IC0xODcuNTY0QzMzLjkxMTggLTE5NC4yMjcgMzYuNTMyNCAtMjAwLjY2OCAzOS4yNTc0IC0yMDYuODQ4QzQxLjgxMjggLTIwOS41NzIgNDMuNDY4NiAtMjEyLjEyOCA0NC4xODU3IC0yMTQuNTRDNTMuMDI1NSAtMjI5LjM3NyA2Mi44MyAtMjM3Ljk5NSA3My42Mzg1IC0yNDAuNDMzQzg0LjM5NDggLTI0Mi44NzEgOTguMTM2OSAtMjM5LjgyMSAxMTQuODEyIC0yMzEuMzJDMTI3Ljk0MiAtMjI1LjYwOSAxMzMuMzkyIC0yMTYuMTA1IDEzMS4xNDkgLTIwMi43OTNDMTMwLjE3MSAtMTkwLjgzNyAxMjcuOTk0IC0xNzkuMjU5IDEyNC42MTcgLTE2OC4wMkMxMjAuMDQxIC0xNTIuNzc5IDExNS40MzggLTEzNy41NTEgMTEwLjg0OSAtMTIyLjMyMkMxMDYuMjczIC0xMDcuMDgxIDEwMS4yNzkgLTkxLjk2OTkgOTUuODk0MyAtNzcuMDAyM0M4NS41OTQzIC00OC42MDU3IDc5LjQyNzQgLTE5LjQyNjcgNzcuNDA2NSAxMC41NjA2Qzc3LjcxOTQgMTIuNDEyIDc4LjA0NTMgMTQuMjYzNSA3OC4zNTgzIDE2LjA4ODhDNzguNjcxMiAxNy45NDAyIDc5LjI3MDkgMjAuMyA4MC4xNzA1IDIzLjE5NDRNMTEwLjkxNCAtMjk2Ljc1N0MxMDkuNTQ1IC0yOTguMDM1IDEwNy4zMTYgLTI5OS4zNTIgMTA0LjIzOSAtMzAwLjczNEMxMDEuMTYyIC0zMDIuMDkgOTguMjQxMiAtMzA0LjA1OSA5NS41NDIzIC0zMDYuNjI3QzkwLjA3OTQgLTMxMS43NzcgODYuOTc2MyAtMzE4LjE2NiA4Ni4yMzMyIC0zMjUuODE5Qzg1LjQ2NCAtMzMzLjQ3MiA4Ny4zODA1IC0zNDAuNTUyIDkxLjk2OTkgLTM0Ny4wNThDOTMuMjIxNSAtMzQ4LjQxNCA5NC4xNDcyIC0zNDkuMjM1IDk0LjY4MTggLTM0OS41MjJDOTUuMTkwMyAtMzQ5Ljc5NiA5Ni4xMDI5IC0zNTAuNjA0IDk3LjM5MzcgLTM1MS45OTlDMTA5LjY3NSAtMzU3LjkwNiAxMjIuNDE0IC0zNTYuNjkzIDEzNS42MzQgLTM0OC4zMzZDMTQ2Ljk1MSAtMzQyLjMyNSAxNTIuMDg4IC0zMzMuMzE2IDE1MS4xMzYgLTMyMS4zNkwxNDguMjI5IC0zMTEuNzM4QzE0NC42NjkgLTI5Ny4wNyAxMzUuNTY5IC0yOTEuNTAzIDEyMC45MTQgLTI5NS4wNjJDMTE5LjA1IC0yOTQuNzIzIDExNS43MzggLTI5NS4yOTcgMTEwLjkxNCAtMjk2Ljc0NCIgZmlsbD0iI0Y1RjVGNyIvPgo8cGF0aCBkPSJNMjQyLjc2NyAyMTUuNTE4QzI0NS4wODggMjEzLjU4OCAyNDcuMjc4IDIxMi4xMDIgMjQ5LjM3NyAyMTAuOTY4QzI1MS40NSAyMDkuODU5IDI1My41MzYgMjA4Ljc1MSAyNTUuNjIyIDIwNy42MDRDMjc0LjIyNyAxOTIuMjg0IDI5MC41NzcgMTc3LjE2IDMwNC43MjMgMTYyLjE5M0MzMTUuNjg4IDE0OC45NDYgMzI2LjYxNCAxMzUuODU2IDMzNy40ODggMTIyLjk4N0MzNDguMzYxIDExMC4xMTkgMzU4Ljg4MyA5Ni45Mzc1IDM2OS4wNjYgODMuNDE3MUMzNzYuNDQ1IDczLjQzMDEgMzg0LjU4MSA2My44NjAyIDM5My40NDcgNTQuNzQ2NkM0MDIuMyA0NS42NDYxIDQxMC44MjYgMzYuMjMyNyA0MTkuMDAxIDI2LjQ4MDNDNDIxLjgwNCAyMi45NzMxIDQyNC4yMjkgMjAuMDAwNCA0MjYuMjg5IDE3LjU0OTNDNDI4LjMyMyAxNS4xMjQzIDQzMC41MDEgMTIuOTMzOCA0MzIuODM1IDExLjAxNzNDNDM0LjkwOCA5LjkwOTA2IDQzNi43NDYgOS41ODMwMSA0MzguMzYzIDEwLjA2NTRDNDM5Ljk1MyAxMC41NDc5IDQ0MS43OTIgMTAuMjQ4IDQ0My45MDQgOS4xMTM3MUM0NDMuMTg3IDExLjUxMjcgNDQyLjgyMiAxMy4zOTAzIDQ0Mi44ODcgMTQuNjk0QzQ0Mi45MjYgMTYuMDIzOSA0NDIuMjg3IDE3LjM2NjggNDQxLjAwOSAxOC43MjI3QzQyNC42NDcgNDYuOTYzIDQwNy42ODQgNzIuODE3MyAzOTAuMTIyIDk2LjMxMTdDMzc2LjY0MSAxMTQuOTU2IDM2My4xNDcgMTMyLjkwOSAzNDkuNjM5IDE1MC4yMjRDMzM2LjEwNiAxNjcuNTI1IDMyMi4yMiAxODUuMzYxIDMwNy45NDQgMjAzLjc1OEMzMDEuNTI5IDIxMC41MzcgMjk1LjM4OCAyMTcuMiAyODkuNDk1IDIyMy43MTlDMjgzLjU4OSAyMzAuMjI1IDI3Ny40MzUgMjM2LjkgMjcxLjAyIDI0My42NjdDMjU4LjkyMSAyNTQuODggMjQ0LjQ4OCAyNTkuMjM0IDIyNy43MzQgMjU2Ljc5NkMxOTYuODYgMjUxLjg4MSAxNzYuMDI1IDIzNi44NzQgMTY1LjIxNyAyMTEuNzg5QzE1NC42OTUgMTg4LjU2OCAxNDkuNTMyIDE2Ni41MDggMTQ5LjcwMiAxNDUuNjA4QzE0Ny45NDIgMTEzLjY3OCAxNDguMzA3IDgxLjk0MzggMTUwLjgxIDUwLjQxOEMxNTMuMyAxOC44NzkyIDE1OC4zMiAtMTIuMzIwNyAxNjUuODY5IC00My4yMDc3QzE4MC4xNzIgLTEwNS4yMDMgMTk4LjU2OCAtMTY2LjQwMyAyMjEuMTExIC0yMjYuODA4QzIzMi4wODkgLTI1Ny41MjYgMjQ0LjQyMyAtMjg3LjYxOCAyNTguMSAtMzE3LjA5NkMyNzEuNzc2IC0zNDYuNTc1IDI4Ni4zNzkgLTM3NS41MDcgMzAxLjk3MiAtNDA0LjAwOEMzMTIuOTUgLTQyNS45OSAzMjQuNjMyIC00NDcuMzQ2IDMzNi45NzkgLTQ2OC4wNjNDMzQ5LjMxMyAtNDg4Ljc1NCAzNjIuNDk1IC01MDkuMjI0IDM3Ni40MzIgLTUyOS40NTlDNDAzLjg2NCAtNTY4LjI5OSA0MzQuMTkgLTYwMy42NzEgNDY3LjM5OCAtNjM1LjU3NUM0NzUuNjM4IC02NDIuNjgxIDQ4My45OTUgLTY0OS4zMTcgNDkyLjQwNSAtNjU1LjUxQzUwMC44MjggLTY2MS42NzcgNTEwLjM5NyAtNjY2LjY1OCA1MjEuMTU0IC02NzAuMzk5QzU0NS4yNzQgLTY3Ny45NjEgNTY3LjcxMiAtNjc2Ljg3OSA1ODguMzkxIC02NjcuMTY2QzYwNC43MjcgLTY2MC40NzggNjEzLjY3MSAtNjQ5LjUxMyA2MTUuMjEgLTYzNC4yMTlDNjE3LjU5NiAtNjI0Ljc1NCA2MTguMTk1IC02MTMuNjcxIDYxNi45ODMgLTYwMC45NTlDNjEwLjMyIC01NTguNDgxIDU5Ny44NTYgLTUxNS41MzQgNTc5LjU1MSAtNDcyLjE5NkM1NjUuNDMxIC00MzkuODIzIDU0OS4wODEgLTQwOC43NTMgNTMwLjUyOCAtMzc5LjAwMUM1MTEuOTM2IC0zNDkuMjYxIDQ5Mi42MTQgLTMxOS45NTIgNDcyLjYgLTI5MS4wOTlDNDY1LjQ1NiAtMjgxLjkyIDQ1Ny45NDYgLTI3MS41MDMgNDUwLjEyMyAtMjU5LjkxMkM0MzMuNTc4IC0yMzYuOTc4IDQxNS42MzcgLTIxNS4xMjYgMzk2LjI4OSAtMTk0LjM1N0MzNzYuOTAyIC0xNzMuNTYxIDM1NS44NDUgLTE1NC4zOTYgMzMzLjA2OCAtMTM2LjgyQzMyMC4zODIgLTEyNi42OSAzMTIuNTMzIC0xMTUuMDg2IDMwOS40ODIgLTEwMi4wNDhDMzA0LjE4OSAtODQuNDQ2OCAyOTguOTc0IC02Ny4wNDExIDI5My43OTggLTQ5Ljg0NEMyODguNjIxIC0zMi42NDY5IDI4My43NzEgLTE1LjExMDggMjc5LjI4NiAyLjcxMjFDMjc1LjI3MSAxOC45NzA1IDI3MS4zMDcgMzQuOTgxIDI2Ny40MjIgNTAuODM1MkMyNjMuNTIzIDY2LjY2MzMgMjU5Ljk2NCA4Mi44NDM0IDI1Ni43NyA5OS4zMzY1QzI1My41NDkgMTE1LjgwMyAyNTAuNjgxIDEzMi42MjIgMjQ4LjE1MiAxNDkuNzQxQzI0NS42MDkgMTY2Ljg2IDI0My4xMzIgMTgzLjc5NyAyNDAuNzQ2IDIwMC40OThDMjQxLjA0NiAyMDIuMzM3IDI0MS4zMDcgMjA0LjM5NiAyNDEuNTE1IDIwNi42MTNDMjQxLjY5OCAyMDguODY4IDI0Mi4xMjggMjExLjg0MSAyNDIuNzggMjE1LjUxOE01NjQuMzIyIC02MjIuMDgxQzU2MS43MjggLTYxOS4zNDMgNTU4LjExNiAtNjE2LjA4MyA1NTMuNDg4IC02MTIuMjM3QzU0Mi4yMzYgLTU5OC4xNjkgNTMwLjk1OCAtNTgzLjkwNiA1MTkuNjI4IC01NjkuNDU5QzUwOC4yNTkgLTU1NC45ODcgNDk4LjA1IC01MzkuOTQxIDQ4OS4wMTUgLTUyNC4zNzRDNDU5LjIzNiAtNDc0Ljg2OSA0MzIuNzY5IC00MjMuOTU2IDQwOS42MDEgLTM3MS42MDhDMzg2LjQxOSAtMzE5LjI0OCAzNjUuMTkzIC0yNjUuNDQgMzQ1LjkzNiAtMjEwLjE3MkMzNDUuNzAyIC0yMDkuMzc3IDM0NS43MDIgLTIwOC43MTIgMzQ2LjAxNSAtMjA4LjE5QzM0Ni4yNjIgLTIwNy42NTYgMzQ2LjE4NCAtMjA2LjU4NyAzNDUuNzE1IC0yMDUuMDA5QzM0OS4zNzggLTIwNS42MjIgMzUxLjM2IC0yMDYuMzM5IDM1MS42MDggLTIwNy4xNDdDMzU1LjQ2NyAtMjExLjIxNSAzNTkuNTA5IC0yMTUuMjMxIDM2My43NDYgLTIxOS4xOTRDMzY3Ljk5NyAtMjIzLjE0NSAzNzEuNzY1IC0yMjcuNjgyIDM3NS4wNzYgLTIzMi44MTlDNDAyLjg4NiAtMjY3LjE2MSA0MjguNzE0IC0zMDIuMTQyIDQ1Mi41MzUgLTMzNy43MzZDNDc2LjM2OCAtMzczLjMwMyA0OTguNTMzIC00MTAuNjk2IDUxOS4wNjggLTQ0OS44ODhDNTQzLjg1MyAtNDk3LjM3MiA1NTkuNTc3IC01NDYuNzM0IDU2Ni4yNTIgLTU5Ny45MzRDNTY2LjY0MyAtNjAyLjE4NSA1NjYuOTE3IC02MDYuMDE4IDU2Ny4xIC02MDkuNDZDNTY3LjI0MyAtNjEyLjkwMiA1NjYuMzE3IC02MTcuMSA1NjQuMzM2IC02MjIuMDgxIiBmaWxsPSIjRjVGNUY3Ii8+CjxwYXRoIGQ9Ik02OTYuNTE1IDE4OS4wNjRDNzA0LjYzOCAxODQuMzk2IDcxMi42ODIgMTc5LjYxMSA3MjAuNjg4IDE3NC43MzVWMTM0LjA1N0M2OTcuODE5IDE0OC41MDMgNjczLjgwMyAxNTkuNjM3IDY0OC42MDEgMTY3LjQyMUM2MjIuMDgyIDE3NS42MzUgNTk0LjU1OCAxODAuNjY3IDU2Ni4wMTggMTgyLjU1OEM1NTAuOTIgMTgzLjI2MiA1NDEuMjk4IDE4MS44OTMgNTM3LjEgMTc4LjQzOEM1MzIuODc2IDE3NS4wMDkgNTI5LjA5NSAxNjUuNzUyIDUyNS43NTcgMTUwLjc0NUw1MjMuOTU4IDEzMC41NDlDNTIzLjMzMiAxMTguMTI0IDUyNC43NjYgMTA2Ljc1NSA1MjguMzM5IDk2LjQyODlDNTMxLjg1OSA4Ni4xNTUgNTM2LjEyMiA3NS42MjAzIDU0MS4xMTYgNjQuODc3QzU0NS42MTQgNjQuNDg1OSA1NDkuNTY0IDY0LjM2ODUgNTUzLjAzMiA2NC41MzhDNTU2LjQ3NSA2NC42OTQ1IDU2MC40MzggNjQuNTc3MSA1NjQuOTQ5IDY0LjE3MjlDNTg1Ljg3NSA2NC4zNjg1IDYwNy42MzYgNjEuNzQ3OSA2MzAuMjY5IDU2LjI4NDlDNjUyLjA4MiA1MC42MjY1IDY3MC40IDQxLjI3ODIgNjg1LjI3NyAyOC4yNTMzQzY5NC45MzggMTkuNzc4NiA3MDQuMDI1IDEwLjM3ODMgNzEyLjU2NSAwLjA5MTMwODZINjM5LjUyNkM2MjAuMjU2IDE2Ljk4ODUgNTk2Ljk0NCAyNy40ODQxIDU2OS41MzkgMzEuNDYwN0M1NjcuNjYxIDMxLjc3MzYgNTY2LjM1NyAzMS44MTI3IDU2NS41NzUgMzEuNTY1QzU2NC43NTQgMzEuMzMwMyA1NjMuODI4IDMxLjUxMjggNTYyLjgxMSAzMi4wNDc0QzU2MS45OSAzMS44MTI3IDU2MS42NTEgMzEuNDk5OCA1NjEuNzgxIDMxLjA4MjZDNTYxLjg5OCAzMC42OTE1IDU2MS41NDYgMzAuMzY1NSA1NjAuNzUxIDMwLjEzMDhDNTYwLjk5OSAyOS4zMzU1IDU2MC45MDcgMjguODY2MSA1NjAuNTE2IDI4Ljc2MThDNTYwLjA5OSAyOC42MTg0IDU2MC4wMzQgMjguMTYyIDU2MC4yOTUgMjcuMzUzN0M1NjUuMzc5IDE4LjE3NDkgNTcwLjc3NyA5LjEwMDU1IDU3Ni40MzYgMC4wOTEzMDg2SDQzMC4xNzZDNDI0LjIwNCAxMi42NzMgNDE5LjA1NCAyNS45NDU2IDQxNC44MyAzOS45ODc1QzQwNi40NzMgNjEuOTU2NSA0MDQuMjgyIDgyLjI2OTcgNDA4LjI4NSAxMDAuOTY2QzQxMi4wMTQgMTIwLjQ1OCA0MTguODMzIDEzOC40NjMgNDI4LjcyOCAxNTQuOTgyQzQzOC42MTEgMTcxLjUyOCA0NTIuNDU4IDE4NS4wODcgNDcwLjI1NCAxOTUuN0M0OTAuNzM3IDIwOC44ODEgNTEyLjE0NSAyMTcuNzIxIDUzNC40MDEgMjIyLjI0NUM1NTYuNjQ0IDIyNi43NTcgNTc5Ljg2NSAyMjYuNTA5IDYwNC4xMTUgMjIxLjU2N0M2MDkuNjQzIDIyMC42MTYgNjE1LjI2MyAyMTkuNDY4IDYyMC45MjEgMjE4LjA5OUM2MjYuNTY3IDIxNi43NTYgNjMyLjI3NyAyMTUuMTkyIDYzOC4wNTMgMjEzLjQxOUM2NTkuMDU3IDIwNy41MjUgNjc4LjU2MiAxOTkuMzkgNjk2LjU0MSAxODkuMDc3IiBmaWxsPSIjRjVGNUY3Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMjgyMF82OTk5MSI+CjxyZWN0IHdpZHRoPSI3MjEiIGhlaWdodD0iMjU2Ljg0OCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\");background-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .background-mask{left:181px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-155px;right:0;left:0;width:420px;height:420px;margin:0 auto;border-radius:0;transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image{top:-230px;width:687px;height:637px}}.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:600px;height:280px;transform:translate(-50%, 0)}@media (min-width: 48em){.duet-hero.duet-hero-content.duet-theme-turva .brand-shaped-image .brand-shaped-image-bg{width:733px;height:413px}}.duet-hero.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-hero{min-height:290px;padding:111.6px 56px;overflow:visible}}.duet-hero-icon{display:inline-block;vertical-align:top}@media (min-width: 62em){.duet-hero-icon{margin-top:-8px}}@media (min-width: 62em){.duet-hero-heading{margin-top:12px}}@media (min-width: 62em){.duet-hero-heading-has-pre{margin-top:0}}.duet-hero-wrapper{position:relative;width:100%;max-width:1110px;margin:0 auto;text-align:center}.duet-hero-left-align .duet-hero-wrapper{text-align:left}.duet-hero-with-image .duet-hero-wrapper{position:static}@media (min-width: 62em){.duet-hero-wrapper{text-align:left}}.duet-hero-text{max-width:50rem;margin:0 auto}.duet-hero-text-center .duet-hero-text{text-align:center !important}@media (min-width: 48em){.duet-hero-text{width:80%}.duet-hero-left-align .duet-hero-text{margin:0}}@media (min-width: 62em){.duet-hero-text{width:52%;max-width:none;margin-top:-10px;margin-left:0}.duet-hero-text-center .duet-hero-text{margin-left:auto}}.duet-hero:not(.duet-hero-with-image) .duet-hero-image{width:100%;max-width:400px;height:0;padding-bottom:50%;margin:28px auto 0;background-repeat:no-repeat;background-position:50% 50%;background-size:contain}@media (min-width: 36em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{padding-bottom:40%}}@media (min-width: 48em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:420px;padding-bottom:34%}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{max-width:540px}}@media (min-width: 62em){.duet-hero:not(.duet-hero-with-image) .duet-hero-image{position:absolute;top:50%;right:0;padding-bottom:30%;margin:0;transform:translateY(-50%)}.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-60px;padding-bottom:26%}.duet-hero-gray .duet-hero:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}@media (min-width: 62em){.duet-hero-gray:not(.duet-hero-with-image) .duet-hero-image{right:-34px;padding-bottom:20%}}.duet-hero-image-wrapper{position:relative;width:80%;height:0;padding-bottom:80%;margin:-30px auto 36px;overflow:hidden;border-radius:28%;box-shadow:0 0 20px rgba(255, 255, 255, 0.5);transform:rotate(10deg)}.duet-theme-turva .duet-hero-image-wrapper{padding-bottom:68%;border-radius:44% 47% 38% 54%;transform:none}@media screen and (min-width: 440px){.duet-hero-image-wrapper{width:300px;padding-bottom:300px}.duet-theme-turva .duet-hero-image-wrapper{width:80%;padding-bottom:68%}}@media (min-width: 62em){.duet-hero-image-wrapper{position:absolute;top:-60px;right:-50px;width:470px;padding-bottom:470px;margin:0}.duet-theme-turva .duet-hero-image-wrapper{top:-40px;right:-80px;width:536px;padding-bottom:470px}}@media (min-width: 76.25em){.duet-hero-image-wrapper{top:-70px;right:-60px;width:600px;padding-bottom:600px}.duet-theme-turva .duet-hero-image-wrapper{top:-70px;right:-60px;width:650px;padding-bottom:600px}}@media screen and (min-width: 1450px){.duet-hero-image-wrapper{top:-70px;right:25px}.duet-theme-turva .duet-hero-image-wrapper{right:0}}.duet-hero-image-wrapper .duet-hero-image{position:absolute;top:-5%;left:-5%;width:110%;height:110%;background-repeat:no-repeat;background-position:50% 50%;background-size:cover;transform:rotate(-10deg)}.duet-theme-turva .duet-hero-image-wrapper .duet-hero-image{top:0;left:0;width:100%;height:100%;transform:none}.duet-hero-image-mask{position:relative;margin:-48px auto 0;overflow:hidden}@media (min-width: 62em){.duet-hero-image-mask{position:absolute;top:0;right:0;width:470px;height:460px;margin:0}}@media (min-width: 76.25em){.duet-hero-image-mask{width:650px;height:580px}}@media screen and (min-width: 1450px){.duet-hero-image-mask{right:50%;transform:translateX(110%)}.duet-theme-turva .duet-hero-image-mask{transform:translateX(108%)}}duet-heading+duet-button{margin-top:12px !important}.duet-hero-links{width:calc(100% + 56px);margin-top:48px;margin-left:-28px}.duet-hero-minimal .duet-hero-links{margin-top:28px}@media (min-width: 36em){.duet-hero-links{margin-top:72px}.duet-hero-minimal .duet-hero-links{margin-top:28px}}@media (min-width: 62em){.duet-hero-links{width:auto;margin:36px 0 0}.duet-hero-minimal .duet-hero-links{margin-top:28px}}.duet-hero-link{display:flex;align-items:center;width:100%;padding:16px 16px 8px;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.25;color:rgb(0, 119, 179);text-align:left;text-decoration:none;border-bottom:1px solid rgb(212, 223, 229);transition:background-color 300ms ease}.duet-hero-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-hero-link:focus,.duet-hero-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-hero-link:hover,.duet-hero-link:hover .duet-hero-action-arrow{color:rgb(0, 75, 129) !important;background:transparent !important}.duet-theme-turva .duet-hero-link:hover,.duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow{color:rgb(126, 2, 35) !important}.duet-theme-turva .duet-hero-link{color:rgb(198, 12, 48)}@media (min-width: 36em){.duet-hero-link{padding:16px 16px 16px 28px}}@media (min-width: 62em){.duet-hero-link{display:inline-flex;width:auto;max-width:350px;padding:0;margin:0 28px 16px 0;border:0;border-radius:4px}}.duet-hero-link:hover{background:rgba(0, 0, 0, 0.02)}@media (min-width: 62em){.duet-hero-link:hover{background:transparent}}.duet-hero-link:first-of-type{border-top:1px solid rgb(212, 223, 229)}@media (min-width: 62em){.duet-hero-link:first-of-type{margin-top:0;border:0}}.duet-hero-link:last-of-type{margin-bottom:-48px}@media (min-width: 62em){.duet-hero-link:last-of-type{margin-right:0;margin-bottom:0}}.duet-hero-link span{margin-top:-8px}@media (min-width: 36em){.duet-hero-link span{margin:0}}.duet-hero-action-icon{margin-right:8px}@media (min-width: 36em){.duet-hero-action-icon{margin-right:12px}}.duet-hero-action-arrow{margin:0 0 0 8px;color:rgb(0, 119, 179)}@media (max-width: 35.9375em){.duet-hero-action-arrow{margin-top:-9px}}.duet-theme-turva .duet-hero-action-arrow{color:rgb(198, 12, 48)}.duet-hero-back{margin-bottom:28px !important;display:flex;align-items:center;justify-content:center}.duet-hero-left-align .duet-hero-back{align-items:self-start;justify-content:flex-start}@media (min-width: 36em){.duet-hero-back{margin-bottom:36px !important}.duet-hero-minimal .duet-hero-back{margin-bottom:28px !important}}@media (min-width: 62em){.duet-hero-back{display:block}}.duet-hero-pre{display:inline-block;width:auto;margin-right:8px}.duet-hero-pre+duet-heading{margin-top:0 !important}:host(.duet-theme-turva2) .duet-hero.duet-hero-light.duet-theme-turva,:host(.duet-theme-turva2) .duet-hero.duet-hero-with-image.duet-theme-turva{color:#172a3b;background-image:linear-gradient(#fdf7f2, #fefbf9)}:host(.duet-theme-turva2) .duet-hero.duet-hero-light.duet-theme-turva::before,:host(.duet-theme-turva2) .duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fefbf9, rgb(255, 255, 255))}:host(.duet-theme-turva2) .duet-hero.duet-hero-gray.duet-theme-turva{background:#f5f6f7}:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:2rem}@media (min-width: 22.5em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:2rem}}@media (min-width: 36em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:4rem}}@media (min-width: 48em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:6rem}}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:7rem}}@media (min-width: 76.25em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-bottom:8rem}}@media (min-width: 106.25em){:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .duet-hero-heading,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .duet-hero-heading{margin-botton:9rem}}:host(.duet-theme-turva2) .duet-hero.duet-hero-campaign .background-area .brand-shape,:host(.duet-theme-turva2) .duet-hero.duet-hero-section .background-area .brand-shape{background-color:rgb(255, 255, 255);border-radius:48px;mask-image:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-product .background .background-mask{background-image:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-product .background .brand-shaped-image{border-radius:26px;mask-image:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-product .background .brand-shaped-image::after{position:absolute;bottom:0;z-index:1;width:100%;height:100%;content:\"\";background-image:url(\"data:image/svg+xml,%3Csvg%20width%3D%22530%22%20height%3D%22136%22%20viewBox%3D%220%200%20530%20136%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M530%2018.0108V320.699H0V11.2176C0%202.8484%208.16439%20-2.58266%2015.0467%201.2636C33.0582%2011.2977%2054.6667%2020.0141%2078.875%2027.2525C131.948%2043.1273%20197.512%2051.9149%20265%2051.9149C332.488%2051.9149%20398.061%2043.1273%20451.125%2027.2525C475.333%2020.0052%20496.942%2011.2888%20514.953%201.2547C521.836%20-2.58266%20530%202.8484%20530%2011.2176V18.0108Z%22%20fill%3D%22%23E61740%22%2F%3E%0A%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position-y:bottom;background-size:contain}:host(.duet-theme-turva2) .duet-hero.duet-hero-product .background .brand-shaped-icon{display:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-content .background .background-mask{background-image:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-content .brand-shaped-image{border-radius:26px;mask-image:none}:host(.duet-theme-turva2) .duet-hero.duet-hero-content .brand-shaped-image::after{position:absolute;bottom:0;z-index:1;width:100%;height:100%;content:\"\";background-image:url(\"data:image/svg+xml,%3Csvg%20width%3D%22530%22%20height%3D%22136%22%20viewBox%3D%220%200%20530%20136%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M530%2018.0108V320.699H0V11.2176C0%202.8484%208.16439%20-2.58266%2015.0467%201.2636C33.0582%2011.2977%2054.6667%2020.0141%2078.875%2027.2525C131.948%2043.1273%20197.512%2051.9149%20265%2051.9149C332.488%2051.9149%20398.061%2043.1273%20451.125%2027.2525C475.333%2020.0052%20496.942%2011.2888%20514.953%201.2547C521.836%20-2.58266%20530%202.8484%20530%2011.2176V18.0108Z%22%20fill%3D%22%23E61740%22%2F%3E%0A%3C%2Fsvg%3E\");background-repeat:no-repeat;background-position-y:bottom;background-size:contain}:host(.duet-theme-turva2) .duet-hero.duet-hero-content .duet-hero-wrapper{margin-top:28px}@media (min-width: 48em){:host(.duet-theme-turva2) .duet-hero.duet-hero-content .duet-hero-wrapper{margin-top:36px}}:host(.duet-theme-turva2) .duet-hero .duet-hero-wrapper{margin-top:16px}@media (min-width: 48em){:host(.duet-theme-turva2) .duet-hero .duet-hero-wrapper{margin-top:0}}.duet-theme-turva :host(.duet-theme-turva2) .duet-hero-link{color:#e61740}.duet-theme-turva :host(.duet-theme-turva2) .duet-hero-action-arrow{color:#e61740}";
11945
12055
 
11946
12056
  /**
11947
12057
  * @part duet-hero - piercing selector for styling the hero container
@@ -12403,11 +12513,11 @@ class DuetIcon {
12403
12513
  : {};
12404
12514
  const iconStyles = Object.assign({}, iconRotationStyles);
12405
12515
  const shapeStyle = this.shape === "brand-rotated" ? "duet-icon-shape-brand" : `duet-icon-shape-${this.shape}`;
12406
- return (hAsync(Host, { key: '76f73c7dca17d692bbeb97384c1e73d91167da94', class: {
12516
+ return (hAsync(Host, { key: '6b2ec509f1a717b623bf627d7451c95e5c1af8be', class: {
12407
12517
  "duet-m-0": this.margin === "none",
12408
12518
  "duet-icon-has-outline": !!this.outline,
12409
12519
  "duet-icon-has-background": !!this.background,
12410
- } }, hAsync("span", { key: '9b05a63c459de0c823aad5bb4995737b2991e746', "aria-hidden": "true", style: styles, class: {
12520
+ } }, hAsync("span", { key: 'b3fb3d53f1c096a7072c6c85488d191c4bc61880', "aria-hidden": "true", style: styles, class: {
12411
12521
  "duet-icon": true,
12412
12522
  "duet-theme-turva": this.theme === "turva",
12413
12523
  "duet-theme-default": this.theme === "default",
@@ -12416,7 +12526,7 @@ class DuetIcon {
12416
12526
  [shapeStyle]: true,
12417
12527
  rotated: this.shape === "brand-rotated" && this.theme !== "turva",
12418
12528
  "duet-icon-not-responsive": !this.responsive,
12419
- } }, hAsync("span", { key: 'd12bceed54d5f4e6299fe854626e831014851622', "aria-hidden": "true", class: { "duet-icon-svg": true, rotated: this.shape === "brand-rotated" && this.theme !== "turva" }, "data-name": this.name, innerHTML: this.svgContent, style: iconStyles }))));
12529
+ } }, hAsync("span", { key: 'ff22fbc4a55860c2ed936b3b3037a7a09af46d8d', "aria-hidden": "true", class: { "duet-icon-svg": true, rotated: this.shape === "brand-rotated" && this.theme !== "turva" }, "data-name": this.name, innerHTML: this.svgContent, style: iconStyles }))));
12420
12530
  }
12421
12531
  get element() { return getElement(this); }
12422
12532
  static get watchers() { return {
@@ -13522,12 +13632,13 @@ class DuetLink {
13522
13632
  * Always the last one in the class.
13523
13633
  */
13524
13634
  render() {
13525
- const Tag = !this.url ? "button" : "a";
13635
+ const Tag = !this.url && this.variation !== "default" ? "button" : "a";
13636
+ const role = !this.url && this.variation === "default" ? "button" : null;
13526
13637
  const isButton = Tag === "button";
13527
- return (hAsync(Host, { key: 'e3b157ccb9d11b818957ca23817aecb0fa14588e', class: {
13638
+ return (hAsync(Host, { key: 'e017bc7b1c5288daba5e0b8780b5b4e9c90645c0', class: {
13528
13639
  [`duet-link-${this.variation}`]: true,
13529
13640
  "duet-m-0": this.margin === "none",
13530
- } }, hAsync(Tag, { key: '11b086047abdc814b8816e64268128d831fd84c0', href: this.url, class: {
13641
+ } }, hAsync(Tag, { key: 'eda58fb1424eb72c497e9ca0eceb9850131920ba', href: this.url, class: {
13531
13642
  "duet-link": true,
13532
13643
  "duet-link-is-external": this.external,
13533
13644
  "duet-link-is-download": !!this.download,
@@ -13538,7 +13649,7 @@ class DuetLink {
13538
13649
  "duet-p-0": this.padding === "none",
13539
13650
  [this.padding]: true,
13540
13651
  [this.variation]: true,
13541
- }, target: this.download || !this.url ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.ariaLabel, "aria-expanded": this.accessibleExpanded != null && isButton ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null && isButton ? this.accessiblePopup.toString() : undefined, id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, this.renderContent())));
13652
+ }, target: this.download || !this.url ? null : this.external ? "_blank" : "_self", download: this.resolvedDownload, "aria-label": this.ariaLabel, "aria-expanded": this.accessibleExpanded != null && isButton ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null && isButton ? this.accessiblePopup.toString() : undefined, id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined, role: role }, this.renderContent())));
13542
13653
  }
13543
13654
  static get delegatesFocus() { return true; }
13544
13655
  get element() { return getElement(this); }
@@ -13783,7 +13894,7 @@ class DuetListItem {
13783
13894
  * Always the last one in the class.
13784
13895
  */
13785
13896
  render() {
13786
- return (hAsync(Host, { key: '2ea81e262bcaf94d3251db09d246c4c647857210', class: {
13897
+ return (hAsync(Host, { key: '0df6b5f89eb34332c32bd3bf9354a5cf423b3d1e', class: {
13787
13898
  "duet-theme-turva": this.theme === "turva",
13788
13899
  "duet-no-stacking": !this.responsive,
13789
13900
  "duet-list-item-breakpoint-x-small": this.breakpoint === "x-small",
@@ -13791,7 +13902,7 @@ class DuetListItem {
13791
13902
  "duet-list-item-breakpoint-medium": this.breakpoint === "medium",
13792
13903
  "duet-list-item-breakpoint-large": this.breakpoint === "large",
13793
13904
  "duet-list-item-breakpoint-x-large": this.breakpoint === "x-large",
13794
- } }, hAsync("dt", { key: '4d3bfaea430a2d1a06d271b685c1474724d5cf75' }, hAsync("slot", { key: 'dfe274b441d097022049103369ca4b07e22ac567', name: "label" })), hAsync("dd", { key: '67a4902f2ed46357f47d185e12cd10abba4fef60' }, hAsync("slot", { key: '5af5e6f427b8673d4aa282063b98c4f797247693', name: "value" }))));
13905
+ } }, hAsync("dt", { key: '1093e4160d5a1d7f4ad2bbe831158c532ec3aae9' }, hAsync("slot", { key: '51da7a9bc0ab09bb11e9f4fa2bc291c3975cb07b', name: "label" })), hAsync("dd", { key: '511df663ae77a9e1340c759b183620fee82b9a7b' }, hAsync("slot", { key: 'c0a4e7f4af09aada7bba7d10ab99dce0dd1696af', name: "value" }))));
13795
13906
  }
13796
13907
  get element() { return getElement(this); }
13797
13908
  static get style() { return duetListItemCss; }
@@ -14189,10 +14300,10 @@ class DuetMenuBarButton {
14189
14300
  * Always the last one in the class.
14190
14301
  */
14191
14302
  render() {
14192
- return (hAsync(Host, { key: '10625574045c3473cbd4b14cff1dbb559f011d36', role: "listitem", onfocus: () => this.setFocus() }, hAsync("button", { key: '489e6d9c6954ab615a0da03ce8e97a60178a00fa', ref: button => (this.nativeButton = button), class: {
14303
+ return (hAsync(Host, { key: 'f8b90af733c03cffd048506e78eae259272b9cde', role: "listitem", onfocus: () => this.setFocus() }, hAsync("button", { key: '310a9cdac5ac6da14ed391fac9177810d57a9e01', ref: button => (this.nativeButton = button), class: {
14193
14304
  "duet-menu-bar-button": true,
14194
14305
  "duet-theme-turva": this.theme === "turva",
14195
- }, "aria-controls": this.accessibleControls, "aria-label": this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }, this.icon && (hAsync("duet-icon", { key: 'f1df08b19b5da34664112330d91e5505378531e0', class: "menu-bar-button-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: '4f0974a460336476540a9831203f65bb4c2fe895' }))));
14306
+ }, "aria-controls": this.accessibleControls, "aria-label": this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }, this.icon && (hAsync("duet-icon", { key: '2baeadf942f5f6f577316a5c24d2053307b64c33', class: "menu-bar-button-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: '7d9dfd6a1552d18c7a5f735a87554e3f5d3ecf74' }))));
14196
14307
  }
14197
14308
  get element() { return getElement(this); }
14198
14309
  static get style() { return duetMenuBarButtonCss; }
@@ -14282,17 +14393,17 @@ class DuetMenuBarDropdown {
14282
14393
  * Always the last one in the class.
14283
14394
  */
14284
14395
  render() {
14285
- return (hAsync(Host, { key: '67715fe3c6453ddeefd413f7663ad2e4241fa938', role: "listitem" }, hAsync("div", { key: '6689572c8887e53a99588bb99302cd10081b7376', class: {
14396
+ return (hAsync(Host, { key: '5d1851929ee7081f01cea9c55edeee771dc42be3', role: "listitem" }, hAsync("div", { key: 'e54d3af80bbca5e24f4c5ab831b0797c605c45ca', class: {
14286
14397
  "duet-menu-bar-dropdown": true,
14287
14398
  "duet-theme-turva": this.theme === "turva",
14288
14399
  active: this.open,
14289
14400
  [`duet-menu-bar-dropdown--slot-${this.getVariant()}`]: true,
14290
- } }, hAsync("button", { key: '95cd6a5d291aa18c5ee4a431d7d35f308dd1aab1', ref: element => (this.button = element), "aria-label": this.accessibleLabel, "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
14401
+ } }, hAsync("button", { key: 'cf2bcb77b1a0841f83a21077142e178b066484f0', ref: element => (this.button = element), "aria-label": this.accessibleLabel, "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
14291
14402
  active: this.open,
14292
- }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '9441f84f9cd55041604fa0e9f09c81dba10838f8', class: "menu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: '5e976c5d97cca3bbbea1ef2f198f8cb342a49979', class: "label" }, hAsync("slot", { key: '06af378be8f86d5b9fe3774b490df8fda85634dd', name: "label" }), hAsync("duet-icon", { key: '227e8bfe3123975b543fd75e6a0589c936a0b167', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: '4b841a5a6896d802e76c85011f016ed2bf4edb44', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
14403
+ }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: 'a39f3f0341a93ffe8c5974c8900f42f45c262b4d', class: "menu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: '2333c31f1a6dbb2f90712614d6861cd565e24c99', class: "label" }, hAsync("slot", { key: '55556372f68d0fed856a6fbf49280f4803781e81', name: "label" }), hAsync("duet-icon", { key: '770ff3a4aeb359e88e05cb6f8739e5a9c51109eb', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: 'ca0f2366604f3b92dbdbb2684229f7edd4992ef0', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
14293
14404
  items: true,
14294
14405
  hidden: !this.open,
14295
- } }, hAsync("slot", { key: 'e62a791124ad9eb4f114c3c064f012f9d5cfe3d4' })))));
14406
+ } }, hAsync("slot", { key: 'b9f25b138f37a033bb6bd753f67765bb08a8aff6' })))));
14296
14407
  }
14297
14408
  get element() { return getElement(this); }
14298
14409
  static get style() { return duetMenuBarDropdownCss; }
@@ -14359,11 +14470,11 @@ class DuetMenuBarDropdownLink {
14359
14470
  * Always the last one in the class.
14360
14471
  */
14361
14472
  render() {
14362
- return (hAsync(Host, { key: 'a524f636cab58320a3abf6b4b86bc853af3c057b' }, hAsync("a", { key: 'ba3cf50366da3f3b220340c73854d2ac28516c48', class: {
14473
+ return (hAsync(Host, { key: '3255461b870d6e7985daaaabd358db008926df23' }, hAsync("a", { key: '1ff26c26e3029f63b5a2052676137c2e6f3cb70d', class: {
14363
14474
  "duet-menu-bar-dropdown-link": true,
14364
14475
  [`duet-menu-bar-dropdown-link--slot-${this.getVariant()}`]: true,
14365
14476
  "duet-theme-turva": this.theme === "turva",
14366
- }, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: 'ade470f849abf31cea7d89306b38bcb80d9152d3', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("slot", { key: '0426caf4880cf11249ee70160896196cbdd2f830' }))));
14477
+ }, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '0b009531dc2f921fd0557d417f16974a2a0225e2', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("slot", { key: '1cace4ae4f0967a87b621717569fbfca8d504cb6' }))));
14367
14478
  }
14368
14479
  get element() { return getElement(this); }
14369
14480
  static get style() { return duetMenuBarDropdownLinkCss; }
@@ -14449,11 +14560,11 @@ class DuetMenuBarItem {
14449
14560
  */
14450
14561
  render() {
14451
14562
  const TagName = this.url ? "a" : "button";
14452
- return (hAsync(Host, { key: '3e4ba0fb17318cd3f7f3ce8bd5141632cf70b592', role: "listitem" }, hAsync(TagName, { key: '3b3fe61137bad1ff974adbd75f5eae67d3aeb5fb', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
14563
+ return (hAsync(Host, { key: '96e3f6f65b5e2e3b218d75f1fa26bbf06026389c', role: "listitem" }, hAsync(TagName, { key: 'f673532ffa1d58f430618e6e9b62bbd2291d8262', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
14453
14564
  "duet-menu-bar-item": true,
14454
14565
  "duet-theme-turva": this.theme === "turva",
14455
14566
  active: this.active,
14456
- }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: 'f60bfc42fc389b0b151783bb92c0c86211260de4', class: "leading-icon", size: "auto", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: '3d1c4464f3f6e593137a1f28b4887793360393f1' }), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: '72f5fbd98a81475a7488da4b9584db8b3172fd46', class: {
14567
+ }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '1c232e9096b3307a39f41cb169b3eb4149dcca40', class: "leading-icon", size: "auto", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: '0ce1d48d334370e8b90c6250e3bc4386a1dd6a42' }), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: '0e1f8ea5c34566ff0b6d35672f7ac21c174be123', class: {
14457
14568
  "trailing-icon": !!this.trailingIcon,
14458
14569
  "trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
14459
14570
  "external-icon": !!this.external,
@@ -14518,11 +14629,11 @@ class DuetMenuBarLink {
14518
14629
  * Always the last one in the class.
14519
14630
  */
14520
14631
  render() {
14521
- return (hAsync(Host, { key: '90d2470d7231825e50ed308c571372331ff556e6', role: "listitem" }, hAsync("a", { key: '87729d77e74e49221ad950f2089a9dad55893462', class: {
14632
+ return (hAsync(Host, { key: '2dbba977ecce40e0e35b0446763fb4f2ce144071', role: "listitem" }, hAsync("a", { key: 'e593c87de20138cb156e002a6de68a6492fbcb2b', class: {
14522
14633
  "duet-menu-bar-link": true,
14523
14634
  "duet-theme-turva": this.theme === "turva",
14524
14635
  active: this.active,
14525
- }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '1a72a66e3d2e8261f526faf5d0091d52db5d3485', class: "menu-bar-link-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: '63e4dfc0edd32bb92ff98ad8df15f17fcf3c82fc' }))));
14636
+ }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: 'ea48038cdd45b8fb0ea26eab4a60a1c14f1ce091', class: "menu-bar-link-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), hAsync("slot", { key: 'b679ffa584c1e1738c5c31f320a14ef8aea42937' }))));
14526
14637
  }
14527
14638
  get element() { return getElement(this); }
14528
14639
  static get style() { return duetMenuBarLinkCss; }
@@ -14708,9 +14819,18 @@ class DuetModal {
14708
14819
  enableBodyScroll$1(this.variation === "slide-up" ? this.modalContentEl : this.modalEl);
14709
14820
  this.duetClose.emit();
14710
14821
  this.teleport.removeInertFromSiblings();
14711
- setTimeout(() => {
14712
- focusElement(this.focusedElBeforeOpen);
14713
- }, TRANSITION_MS);
14822
+ if (this.focusElementOnClose !== "") {
14823
+ setTimeout(() => {
14824
+ let focusEl = this.focusedElBeforeOpen;
14825
+ if (typeof this.focusElementOnClose === "string") {
14826
+ focusEl = document.getElementById(this.focusElementOnClose) || focusEl;
14827
+ }
14828
+ else {
14829
+ focusEl = this.focusElementOnClose || focusEl;
14830
+ }
14831
+ focusElement(focusEl);
14832
+ }, TRANSITION_MS);
14833
+ }
14714
14834
  if (this.isAndroidDevice) {
14715
14835
  window.removeEventListener("resize", this.handleAndroidResizeEvents);
14716
14836
  }
@@ -14768,6 +14888,12 @@ class DuetModal {
14768
14888
  async hide() {
14769
14889
  this.open = false;
14770
14890
  }
14891
+ /**
14892
+ * Set focus on the close button of the modal.
14893
+ */
14894
+ async focusCloseButton() {
14895
+ this.buttonEl.setFocus();
14896
+ }
14771
14897
  /**
14772
14898
  * Scolls the top of the modal's content into view
14773
14899
  *
@@ -14829,20 +14955,16 @@ class DuetModal {
14829
14955
  */
14830
14956
  render() {
14831
14957
  var _a, _b;
14832
- let iconColor = "primary";
14833
- let closeColor = "secondary";
14834
- const closingButton = (hAsync("div", { key: '16ecdebdff260207b978a3c14686bb27f99369bc', class: "duet-modal-close" }, hAsync("duet-button", { key: '832185b0eb84406145281ec31a310cba640f42db', ref: button => (this.buttonEl = button), variation: "plain", accessibleLabel: this.accessibleCloseLabel, color: closeColor, iconSize: "large", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: ev => this.closeModal(ev), fixed: true })));
14835
- if (this.theme === "turva") {
14836
- iconColor = "primary-turva";
14837
- closeColor = "secondary-turva";
14838
- }
14839
- return (hAsync("div", { key: 'ff98af4d04d36b5967954bae9fad52d8a3c92af1', ref: modal => (this.modalEl = modal), "aria-label": (_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.heading, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: this.variation === "loader" ? "alert" : "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", class: {
14958
+ const iconColor = postfixTheme("primary", this.theme);
14959
+ const closeColor = postfixTheme("secondary", this.theme);
14960
+ const closingButton = (hAsync("div", { key: '39d89598c50f59be771033542b474cc6b7e1df0b', class: "duet-modal-close" }, hAsync("duet-button", { key: 'b5c6f0c486eaa24d4c7747a839288562e63808bf', ref: button => (this.buttonEl = button), variation: "plain", accessibleLabel: this.accessibleCloseLabel, color: closeColor, iconSize: "large", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: ev => this.closeModal(ev), fixed: true })));
14961
+ return (hAsync("div", { key: '07de0b18de78d147afa8cdaeadc39c877cd32dca', ref: modal => (this.modalEl = modal), "aria-label": (_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.heading, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: this.variation === "loader" ? "alert" : "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", class: {
14840
14962
  "duet-modal-container": true,
14841
14963
  "duet-theme-turva": this.theme === "turva",
14842
14964
  "duet-modal-active": this.open,
14843
14965
  "duet-modal-slide-up": this.variation === "slide-up",
14844
14966
  "duet-modal-has-sticky-header": this.hasStickyHeader,
14845
- } }, hAsync("duet-overlay", { key: 'f5b45235e96cfe9afc7e698f58758f3889c3fd18', "z-index": "-1", visible: this.open, variation: this.variation === "loader" ? "white" : "default" }), hAsync("div", { key: '8e01ae356b01d920b2dc99fb9012d0b36e1160c2', ref: modalInner => (this.modalInnerEl = modalInner), class: {
14967
+ } }, hAsync("duet-overlay", { key: '08d67fe06635ffce14ed2151c9b7211740f5366f', "z-index": "-1", visible: this.open, variation: this.variation === "loader" ? "white" : "default" }), hAsync("div", { key: '83d7365182d8a008dbceca7d19d5f110d4e3e39a', ref: modalInner => (this.modalInnerEl = modalInner), class: {
14846
14968
  "duet-modal-inner": true,
14847
14969
  [this.size]: true,
14848
14970
  "duet-modal-slide-up": this.variation === "slide-up",
@@ -14853,18 +14975,22 @@ class DuetModal {
14853
14975
  this.closeModal(e);
14854
14976
  }
14855
14977
  }
14856
- } }, hAsync("div", { key: '4b67fe5599c29429e2e43d2fa3ec1e4bb2362f5a', ref: modalContentEl => (this.modalContentEl = modalContentEl), class: {
14978
+ } }, hAsync("div", { key: '926f82204442851d8fa4d3b83c49fa1b3e0970f0', ref: modalContentEl => (this.modalContentEl = modalContentEl), "aria-live": this.accessibleAnnounceChanges === "all" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "all" ? "true" : null, class: {
14857
14979
  "duet-modal": true,
14858
14980
  "duet-modal-has-sticky-header": this.hasStickyHeader,
14859
14981
  [this.size]: true,
14860
14982
  [this.variation]: true,
14861
- } }, this.gutterSize !== "none" && !this.hasStickyHeader && hAsync("duet-spacer", { key: '1fc3a1a23142493d5a384fcd1dfbc5e0cb471de4' }), this.hasStickyHeader ? (hAsync("div", { class: "duet-modal-sticky-header" }, closingButton, hAsync("slot", { name: "sticky-header" }))) : (closingButton), hAsync("div", { key: '2f216eb1c8db56490a684203edfdb93bcfd736c7', class: {
14983
+ } }, this.gutterSize !== "none" && !this.hasStickyHeader && hAsync("duet-spacer", { key: 'b1b6c5d0fab63540a89c585e09db2044a9944957' }), this.hasStickyHeader ? (hAsync("div", { class: "duet-modal-sticky-header" }, closingButton, hAsync("slot", { name: "sticky-header" }))) : (closingButton), hAsync("div", { key: '55e0891ac4dc8e5eaebd53740ccc2afb4759c45c', class: {
14862
14984
  "duet-modal-body": true,
14863
14985
  "duet-modal-gutter-none": this.gutterSize === "none",
14864
14986
  "duet-modal-gutter-small": this.gutterSize === "small",
14865
14987
  "duet-modal-gutter-medium": this.gutterSize === "medium",
14866
14988
  "duet-modal-gutter-large": this.gutterSize === "large",
14867
- } }, hAsync("div", { key: 'e727afc6bd9c81124f632929b840cc0beaac6537', class: "duet-modal-header" }, hAsync("span", { key: '8a55cf9f79f46df6f7d15961f7d1300cc42fe345', class: "duet-modal-inner-slot-top" }, hAsync("slot", { key: 'c79cbee03e0bce0b44b4d816b5c4d02b05605a10', name: "top" })), this.icon && hAsync("duet-icon", { key: '278d6e8d84de7394267291e0fb294c577e7be718', name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (hAsync("duet-heading", { key: 'fad28910b603089cfd9f3bf4fb1e9dc4df6a4d6a', "visual-level": (_b = this.headingVisualLevel) !== null && _b !== void 0 ? _b : this.headingLevel, level: this.headingLevel, theme: this.theme }, this.heading))), this.variation === "loader" && (hAsync("div", { key: '67d1778db551a40565263f39968e8a7f3e3d148d', class: "duet-modal-spinner" }, hAsync("duet-spinner", { key: '71fddb78ad12e0ce90c14a725ac017431bf8864a', size: "large", color: "primary" }))), hAsync("div", { key: 'e0a601e11fa6761658d6f74af02a509b835e6f37', class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el), "aria-live": this.variation === "loader" ? "assertive" : "off" }, hAsync("slot", { key: 'a0ef6dab10ebc813443950cbb369303fd2b305a4' })))))));
14989
+ }, "aria-live": this.accessibleAnnounceChanges === "heading" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "heading" ? "true" : null }, hAsync("div", { key: '1cab42f970d7b12c6684ac63e37324516180d168', class: "duet-modal-header" }, hAsync("span", { key: 'a3e9c69a6eb8ebcc8e0cbb282e14438c20153f7c', class: "duet-modal-inner-slot-top" }, hAsync("slot", { key: 'b719c6a7ae968b6687f259d061ec414326ad9301', name: "top" })), this.icon && hAsync("duet-icon", { key: '378d48739073800b81634af0441e5b82013df9a6', name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (hAsync("duet-heading", { key: '8052f57a3d06363e38bcf748d81e37ec8d9e7928', "visual-level": (_b = this.headingVisualLevel) !== null && _b !== void 0 ? _b : this.headingLevel, level: this.headingLevel, theme: this.theme }, this.heading))), this.variation === "loader" && (hAsync("div", { key: 'c98e91827794451431e8f875994446ee09d5bd9f', class: "duet-modal-spinner" }, hAsync("duet-spinner", { key: '08f09524dd18e633063e5a5ac5fced5103610d7d', size: "large", color: postfixTheme("primary", this.theme) }))), hAsync("div", { key: 'b237e8483fd62056b4f99507a78580983b1135a8', "aria-live": this.variation === "loader"
14990
+ ? "assertive"
14991
+ : this.accessibleAnnounceChanges === "body"
14992
+ ? "polite"
14993
+ : null, "aria-atomic": this.accessibleAnnounceChanges === "body" ? "true" : null, class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el) }, hAsync("slot", { key: 'f9ed9945e262cbb20ff4c51d1a2e67329eae9a5e' })))))));
14868
14994
  }
14869
14995
  get element() { return getElement(this); }
14870
14996
  static get watchers() { return {
@@ -14895,9 +15021,12 @@ class DuetModal {
14895
15021
  "color": [1],
14896
15022
  "active": [1540],
14897
15023
  "closeOnBlur": [1028, "close-on-blur"],
15024
+ "focusElementOnClose": [1, "focus-element-on-close"],
15025
+ "accessibleAnnounceChanges": [1, "accessible-announce-changes"],
14898
15026
  "open": [32],
14899
15027
  "show": [64],
14900
15028
  "hide": [64],
15029
+ "focusCloseButton": [64],
14901
15030
  "scrollToTop": [64],
14902
15031
  "addMessage": [64]
14903
15032
  },
@@ -15268,7 +15397,7 @@ class DuetNav {
15268
15397
  * Always the last one in the class.
15269
15398
  */
15270
15399
  render() {
15271
- return (hAsync(Host, { key: '67b6010525da471d8f1d39cdd64cf6a9cbdecba5' }, hAsync("div", { key: '7f7d7cb7e76887002c1bd4116e14780261458c07', class: { container: true, sticky: this.sticky } }, hAsync("slot", { key: '2667b3a0e765609fcd3b77d621dbc59a335dfe32' }), hAsync("slot", { key: '7fc113b96d80e1677ca7661b7504e41638686690', name: "mobile" }), hAsync("slot", { key: 'b6c714e94df2ffe4c94b1c9e56f512b71d3bcde6', name: "desktop" }))));
15400
+ return (hAsync(Host, { key: 'f7a8ed09a94df6c749849af4fa57746415c1ed35' }, hAsync("div", { key: '0698cb914b2069f402b0771c748a488e3523aa67', class: { container: true, sticky: this.sticky } }, hAsync("slot", { key: 'dbac0328ad41f8a9bde92011b654dc8640021b0d' }), hAsync("slot", { key: '9b3161669471c6505d0aab172afe2c6953e09ec2', name: "mobile" }), hAsync("slot", { key: 'd6067606d1a4544c027d36edf530ec1488c15ce9', name: "desktop" }))));
15272
15401
  }
15273
15402
  get element() { return getElement(this); }
15274
15403
  static get style() { return duetNavCss; }
@@ -15355,11 +15484,11 @@ class DuetNotification {
15355
15484
  this.linkElement.focus(options);
15356
15485
  }
15357
15486
  render() {
15358
- return (hAsync("div", { key: 'ad950e443ce4d6f4584dc9721d571a80fe8436b2', role: "listitem", class: {
15487
+ return (hAsync("div", { key: '38f589ecc0f7bfacef51a99bcdc34e11972a623c', role: "listitem", class: {
15359
15488
  "duet-notification": true,
15360
15489
  "duet-notification-highlight": this.highlight,
15361
15490
  "duet-theme-turva": this.theme === "turva",
15362
- } }, hAsync("a", { key: '95bebd9b5dab41ca48f1cd17dacdd314e2e7b310', ref: element => (this.linkElement = element), href: this.url, target: this.external ? "_blank" : "_self" }, hAsync("div", { key: '959973ede9244668649f97b4b196c9d49ce3013d', class: "duet-notification-container" }, hAsync("div", { key: '1fec3042cfba91fb3331b2ba854c2d96078ec452', class: "duet-notification-badge-container" }, this.highlight && (hAsync("div", { key: '44c93136aaefeb3d9e1247c9fb390097346b89e4', class: "duet-notification-badge" }, hAsync("duet-visually-hidden", { key: 'dc0f50e9d0dd7d1d8894d834fc8b43d911a5fcaa' }, this.accessibleLabelUnread, ":")))), hAsync("div", { key: 'a41b7b634dafc5ac0c9b518caedbef53a508f6ae', class: "duet-notification-content" }, hAsync("slot", { key: 'cb2850efc2259436c894c2317342212f4a49ef4b' })), hAsync("div", { key: 'd970b769771b3196e29882ba2d8e8587bdad68f7', class: "duet-notification-date" }, this.date)))));
15491
+ } }, hAsync("a", { key: '1baa41acae73931933c8fd7cb844cc9565486168', ref: element => (this.linkElement = element), href: this.url, target: this.external ? "_blank" : "_self" }, hAsync("div", { key: '86b846fbd0624d5a01f339cb65875300681610e9', class: "duet-notification-container" }, hAsync("div", { key: '41cc6cb349bce5689c3f31b08beb985a0aff4677', class: "duet-notification-badge-container" }, this.highlight && (hAsync("div", { key: 'd51af06ea2f23509bb96299c0b75e04a5e42d41d', class: "duet-notification-badge" }, hAsync("duet-visually-hidden", { key: '6d7f78247068a68e8e2a8eb1157f2788ecb871ab' }, this.accessibleLabelUnread, ":")))), hAsync("div", { key: 'f0ccd721e329487b11e3ccd7dda1a9c252445d9a', class: "duet-notification-content" }, hAsync("slot", { key: '0e583c14cdea246a712a99880b9a39f9d0a4504e' })), hAsync("div", { key: 'ba4174a98f6f89b9cba21ab077c30c85b23675e1', class: "duet-notification-date" }, this.date)))));
15363
15492
  }
15364
15493
  get element() { return getElement(this); }
15365
15494
  static get style() { return duetNotificationCss; }
@@ -15677,7 +15806,8 @@ class DuetNumberInput {
15677
15806
  sv: "{current} euro valt",
15678
15807
  };
15679
15808
  /**
15680
- * Format of message used to announce current amount when switching between amounts.
15809
+ * Format of message used to announce current amount when switching between amounts. Note that the default has "euros"
15810
+ * so if you use another unit is is essential you set this attribute to reflect that unit.
15681
15811
  * The string {current} is replaced with the current amount.
15682
15812
  * @default {fi: "{current} euroa valittuna", en: "{current} euros selected", sv: "{current} valda euro"}
15683
15813
  */
@@ -15895,7 +16025,7 @@ class DuetNumberInput {
15895
16025
  // Set the localized prop value.
15896
16026
  this.value = this.localizeValue(value);
15897
16027
  // Finally also set the visible input value and unit.
15898
- this.duetInputElement.value = `${this.value} ${this.unit}`;
16028
+ this.duetInputElement.value = `${this.value}${this.getUnitString()}`;
15899
16029
  };
15900
16030
  this.add = (ev) => {
15901
16031
  // If this was called via a html button, prevent the default functionality
@@ -15992,6 +16122,10 @@ class DuetNumberInput {
15992
16122
  this.emitNull(ev);
15993
16123
  }
15994
16124
  }
16125
+ // prefix existing unit with white space or return empty string if no unit
16126
+ getUnitString() {
16127
+ return this.unit ? ` ${this.unit}` : "";
16128
+ }
15995
16129
  formatAnnouncement() {
15996
16130
  const current = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
15997
16131
  if (current == null) {
@@ -16005,13 +16139,13 @@ class DuetNumberInput {
16005
16139
  */
16006
16140
  render() {
16007
16141
  const identifier = this.identifier || this.inputId;
16008
- const maxlength = `${this.localizeValue(this.max)} ${this.unit}`.length;
16142
+ const maxlength = `${this.localizeValue(this.max)}${this.getUnitString()}`.length;
16009
16143
  const cleanedValue = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
16010
- return (hAsync(Host, { key: '49a555df21c951b795e625c4799ecb5419fc474e', class: {
16144
+ return (hAsync(Host, { key: 'ff7a3b099b6146f8db869268ecc2609fefa88ca6', class: {
16011
16145
  "duet-theme-turva": this.theme === "turva",
16012
16146
  "duet-expand": this.expand,
16013
16147
  "duet-m-0": this.margin === "none",
16014
- } }, hAsync("div", { key: '95905465685b005ca2589d1934c237473fac78a7', class: "duet-number-container" }, hAsync("duet-input", { key: '6bac3f4ba516dd43f2681d21fcd530d35c772cb5', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value} ${this.unit}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, hAsync("slot", { key: '52a0896ccb3fd7c716625da4c8de5f2f09622a1c', name: "tooltip" }), hAsync("div", { key: 'af1c978396037b1e1e5d8d0d0e8c25904d519098', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, hAsync("button", { key: 'b0bc1e76994b2c22b70a259962adac524b1ca5eb', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, hAsync("duet-visually-hidden", { key: 'c6c374074fe1e74907374d89cba0679bf9f5189d' }, this.accessibleSubtract, " ", this.step), hAsync("duet-icon", { key: '135624fed93bbe112fecdd3b46d95aaf5f416b64', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), hAsync("button", { key: 'c65086cc05992d5120765da78e2eac86183e5630', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, hAsync("duet-visually-hidden", { key: '7f025ffd2816298087614a7d449739631d0ff9c6' }, this.accessibleAdd, " ", this.step), hAsync("duet-icon", { key: 'f232ce3d5c1ad08b350d02b5c65bd21ec7dcf9c5', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (hAsync("duet-visually-hidden", { key: '03a758593f10d9c55307c3622b8a68b14c720f97', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
16148
+ } }, hAsync("div", { key: '04d204f9d0dc1bf334606a101b0b4b5e165d36a3', class: "duet-number-container" }, hAsync("duet-input", { key: '464c323e615b8978944cdeec09e0e1a1503391a0', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value}${this.getUnitString()}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, hAsync("slot", { key: '876fa9e487574bd143648c8649105ac9f5972829', name: "tooltip" }), hAsync("div", { key: '60053c4b4c4602d494693804539eff2149fe2a64', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, hAsync("button", { key: '083dc0860543ddc7e2532620e345ad9d8d163d13', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, hAsync("duet-visually-hidden", { key: '5323ecaf1f86fa97f9267b70bc048dadcca7d34f' }, this.accessibleSubtract, " ", this.step), hAsync("duet-icon", { key: 'd6ab1819fe4c96d6e379570c5a5c4eb41a1a775f', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), hAsync("button", { key: '82b9a72bfeba3653c85f853c2e9d295d146b2152', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, hAsync("duet-visually-hidden", { key: '697550e4c1f874401d2e17f60c6c4f324fc97bd8' }, this.accessibleAdd, " ", this.step), hAsync("duet-icon", { key: '7947d70d3a48a3ea7e36a46aa79c6abc82d52565', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (hAsync("duet-visually-hidden", { key: '0759711664742966c214cb765c179706affc7b2f', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
16015
16149
  }
16016
16150
  get element() { return getElement(this); }
16017
16151
  static get style() { return duetNumberInputCss; }
@@ -16201,12 +16335,12 @@ class DuetPageHeading {
16201
16335
  */
16202
16336
  render() {
16203
16337
  const layout = this.layout === "narrow" ? "narrow" : this.layout === "fluid" ? "fluid" : "auto";
16204
- return (hAsync("div", { key: '628273f674969acc5d8a49ea87897fe30a0aa73b', class: {
16338
+ return (hAsync("div", { key: 'c8965538a92caf79f80e48d48064860b3fba4a1c', class: {
16205
16339
  "duet-page-heading": true,
16206
16340
  "duet-theme-turva": this.theme === "turva",
16207
16341
  "has-icon": !!this.icon,
16208
16342
  [layout]: true,
16209
- } }, hAsync("div", { key: 'e92f86a1b315431caa574ff42342c9ebfe944802', class: "background" }, this.theme === "turva" && hAsync("div", { key: '6c2b46cc3961a2c01cf55dd4ee998930e0203138', class: "background-mask" }), this.theme !== "turva" && hAsync("div", { key: '223d19ded0f680af3a98cc57886344e15ad3e89e', class: "brand-shape" }), this.theme !== "turva" && hAsync("div", { key: '8879e5620c44051f5d913b72228142151aaed976', class: "brand-shape second-shape" }), this.icon && (hAsync("div", { key: '41eb8c4b1b270b3ec17dd00c9b3ae88305287c8c', class: "brand-shaped-icon" }, hAsync("duet-icon", { key: '00fb325f70fb2730c261ad492e2990d481ac0cc9', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), hAsync("div", { key: '23af280baecc0cb0b71382269236fd32d362356c', class: "heading" }, hAsync("slot", { key: '29a66ba008d7e796ba317c115a12756bc0b00f94', name: "heading" }), this.progressCurrentStep && this.progressTotalSteps && (hAsync("div", { key: '6161bb90ecf741d67298184ed058f6857a26726c' }, hAsync("duet-spacer", { key: 'b3bb416d59727ab64ff4b2cd601c1846ad7a64da', size: "large" }), hAsync("div", { key: 'c771ce9dc543006f93a072f2062fbb580064764d', role: "presentation" }, this.progressIndicator()))))));
16343
+ } }, hAsync("div", { key: '845fe8135a9ae4814633cc083a4b87b7ef7b716f', class: "background" }, this.theme === "turva" && hAsync("div", { key: 'c6d6d61458c267811e1b3bd2f5c53a0e69b6fd4e', class: "background-mask" }), this.theme !== "turva" && hAsync("div", { key: '8f17b5fbb587dd2628c8928da6019f00e4d74f53', class: "brand-shape" }), this.theme !== "turva" && hAsync("div", { key: '125cb3cdd58e3f0f43927446c57759efd2d6473d', class: "brand-shape second-shape" }), this.icon && (hAsync("div", { key: 'b547fb58f9df92aeb648bb37f3d28b0d3982fe41', class: "brand-shaped-icon" }, hAsync("duet-icon", { key: 'e74873b15c8f7f2dac7e7589c107308b60bb4ff0', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), hAsync("div", { key: 'e75036eaeaa3a4665202b042acbd9a58a896f2bd', class: "heading" }, hAsync("slot", { key: '3aa3b62846356cf5e5aa8b25dcd7cce2f6d9867f', name: "heading" }), this.progressCurrentStep && this.progressTotalSteps && (hAsync("div", { key: 'cb1b3dcd21c496a3ba752b3ce718d054c6a317ca' }, hAsync("duet-spacer", { key: '08ab03a19f3d5a495cdbad4f5e06f6ed36bd6819', size: "large" }), hAsync("div", { key: 'c7c2fe589b8c599a82403408c9e3bda91d8b01ac', role: "presentation" }, this.progressIndicator()))))));
16210
16344
  }
16211
16345
  get element() { return getElement(this); }
16212
16346
  static get style() { return duetPageHeadingCss; }
@@ -16680,6 +16814,67 @@ class DuetPagination {
16680
16814
  }; }
16681
16815
  }
16682
16816
 
16817
+ const duetPanelCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%;margin:8px 0 20px 0}@media (min-width: 36em){:host{margin:12px 0 28px 0}}:host .duet-m-0{margin:0 !important}.duet-panel{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(8, 42, 77);background-color:rgb(255, 255, 255);border:0 solid rgb(212, 223, 229);border-radius:16px}.duet-panel.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58);border-color:rgb(222, 224, 228)}.duet-panel.padding-small{padding:16px;border-radius:12px}@media (min-width: 36em){.duet-panel.padding-small{padding:20px}}.duet-panel.padding-medium{padding:20px}@media (min-width: 36em){.duet-panel.padding-medium{padding:28px}}.duet-panel.padding-large{padding:28px}@media (min-width: 36em){.duet-panel.padding-large{padding:36px}}.duet-panel.border{border-width:1px}.duet-panel.secondary{background-color:rgb(245, 248, 250)}.duet-panel.secondary.duet-theme-turva{background-color:rgb(245, 247, 250)}.duet-panel.accent{background-color:rgb(240, 247, 250);border-color:rgb(198, 225, 238)}.duet-panel.accent.duet-theme-turva{background-color:rgb(245, 247, 250);border-color:rgb(199, 202, 207)}.duet-panel.accent.secondary{background-color:rgb(217, 236, 245)}.duet-panel.accent.secondary.duet-theme-turva{background-color:rgb(222, 224, 228)}:host(.duet-theme-turva2) .duet-panel.duet-theme-turva{color:#172a3b;border-color:#d4dde2}:host(.duet-theme-turva2) .duet-panel.duet-theme-turva.secondary{background-color:#f5f6f7}:host(.duet-theme-turva2) .duet-panel.duet-theme-turva.accent{background-color:#fdf7f2;border-color:#f1cab2}:host(.duet-theme-turva2) .duet-panel.duet-theme-turva.accent.secondary{background-color:#fbe1d1}";
16818
+
16819
+ class DuetPanel {
16820
+ constructor(hostRef) {
16821
+ registerInstance(this, hostRef);
16822
+ /**
16823
+ * Theme of the panel.
16824
+ */
16825
+ this.theme = "";
16826
+ /**
16827
+ * Controls the padding of the component. Padding is automatically responsive.
16828
+ */
16829
+ this.padding = "medium";
16830
+ /**
16831
+ * The color variation of the panel. Combination of palette ("default", "accent") and palette variation ("primary",
16832
+ * "secondary"). You can ommit "default" and "primary" - they are the defaults.
16833
+ */
16834
+ this.variation = "";
16835
+ /**
16836
+ * Controls the margin of the component.
16837
+ */
16838
+ this.margin = "auto";
16839
+ }
16840
+ /**
16841
+ * Component lifecycle events.
16842
+ */
16843
+ componentWillLoad() {
16844
+ inheritGlobalTheme(this);
16845
+ }
16846
+ render() {
16847
+ return (hAsync(Host, { key: 'ce2c9ad02ea4b482491120c4564322a7ab1b97c8' }, hAsync("section", { key: '058ae2c34b915888645f0a0fbce8c905f9a99330', "aria-label": this.accessibleLabel, "aria-labelledby": this.accessibleLabelledBy, "aria-describedby": this.accessibleDescribedBy, class: {
16848
+ "duet-panel": true,
16849
+ "duet-theme-turva": this.theme === "turva",
16850
+ [this.variation.split("-")[0]]: true,
16851
+ [this.variation.split("-")[1]]: true,
16852
+ [`padding-${this.padding}`]: true,
16853
+ border: this.border,
16854
+ "duet-m-0": this.margin === "none",
16855
+ } }, hAsync("slot", { key: 'eabfa138724309e78227fb8e48507a2a065c5822' }))));
16856
+ }
16857
+ get element() { return getElement(this); }
16858
+ static get style() { return duetPanelCss; }
16859
+ static get cmpMeta() { return {
16860
+ "$flags$": 265,
16861
+ "$tagName$": "duet-panel",
16862
+ "$members$": {
16863
+ "theme": [1025],
16864
+ "padding": [1],
16865
+ "variation": [1],
16866
+ "margin": [1],
16867
+ "border": [4],
16868
+ "accessibleLabel": [1, "accessible-label"],
16869
+ "accessibleLabelledBy": [1, "accessible-labelled-by"],
16870
+ "accessibleDescribedBy": [1, "accessible-described-by"]
16871
+ },
16872
+ "$listeners$": undefined,
16873
+ "$lazyBundleId$": "-",
16874
+ "$attrsToReflect$": []
16875
+ }; }
16876
+ }
16877
+
16683
16878
  const duetParagraphCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%}.duet-paragraph{margin-bottom:16px !important;display:block;width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-style:normal;font-weight:400;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;color:rgb(8, 42, 77)}.duet-paragraph.duet-p-0{padding:0 !important}.duet-paragraph.duet-m-0{margin:0 !important}.duet-paragraph.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-paragraph.duet-paragraph-small{font-size:0.875rem}.duet-paragraph.duet-paragraph-semi-bold{font-weight:600}.duet-paragraph.duet-paragraph-bold{font-weight:700}.duet-paragraph.duet-m-0{margin:0 !important}.duet-paragraph.intro{font-size:2.7vw;margin-bottom:28px !important;-webkit-hyphens:inherit;hyphens:inherit}@media (max-width: 37.037037037rem){.duet-paragraph.intro{font-size:1rem}}@media (min-width: 46.2962962963rem){.duet-paragraph.intro{font-size:1.25rem}}.duet-paragraph.intro.duet-m-0{margin:0 !important}::slotted(a){font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:400;color:rgb(0, 119, 179);text-decoration:underline;transition:300ms ease}::slotted(a).duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(198, 12, 48)}::slotted(a):hover{color:rgb(0, 75, 129);text-decoration:none}::slotted(a):hover.duet-theme-turva{color:rgb(126, 2, 35)}::slotted(a):active{opacity:0.75;transition:none}:host(.duet-theme-turva2) .duet-paragraph.duet-theme-turva{color:#172a3b}:host(.duet-theme-turva2) ::slotted(a).duet-theme-turva{color:#e61740}:host(.duet-theme-turva2) ::slotted(a:hover).duet-theme-turva{color:#8c001e}";
16684
16879
 
16685
16880
  /**
@@ -16729,7 +16924,7 @@ class DuetParagraph {
16729
16924
  const color = getColorByName(this.color);
16730
16925
  // aria-describedby is to fix accessibility issue in Chrome where duet-paragraphs
16731
16926
  // are not announced when placed inside duet-modal
16732
- return (hAsync(Host, { key: 'c9b003a011aafa9722e534be25dba1ebcae4ee68', "aria-describedby": this.id }, hAsync("p", { key: 'd066baf34e3d60e1e7a83f293ce30f305b460a93', id: this.id, class: {
16927
+ return (hAsync(Host, { key: '844328a8133f4abbbbd2424b38cc14b019fd23d4', "aria-describedby": this.id }, hAsync("p", { key: 'dfd78aa829ee142323997f6bebde60ac47bb98e7', id: this.id, class: {
16733
16928
  "duet-paragraph": true,
16734
16929
  "duet-paragraph-small": this.size === "small",
16735
16930
  "duet-paragraph-semi-bold": this.weight === "semi-bold",
@@ -16737,7 +16932,7 @@ class DuetParagraph {
16737
16932
  "duet-m-0": this.margin === "none",
16738
16933
  [this.variation]: true,
16739
16934
  "duet-theme-turva": this.theme === "turva",
16740
- }, style: { color }, part: "duet-paragraph" }, hAsync("slot", { key: '540a59c84498378ff0f83bd1bc7fb1ab187e5d5d' }))));
16935
+ }, style: { color }, part: "duet-paragraph" }, hAsync("slot", { key: 'f014b5496f1b791cc2879b09bd12dd85649fb0e3' }))));
16741
16936
  }
16742
16937
  get element() { return getElement(this); }
16743
16938
  static get style() { return duetParagraphCss; }
@@ -20717,11 +20912,11 @@ class DuetPopupMenuItem {
20717
20912
  };
20718
20913
  // Without the role ternary Safari/iPhone wouldn't announce the label for role menuitem.
20719
20914
  // This is a tradeoff and now Safari announces these items as buttons and links with the label.
20720
- return (hAsync(Host, { key: 'e66206847b5b21c43e70af93e1fc3034d23787e3', role: this.accessibleRole === "menuitem" && this.isSafariBrowser ? null : this.accessibleRole }, hAsync(TagName, { key: '8b56368421c0aad9962c2aa6f097f6aa38759829', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (hAsync("duet-icon", { key: 'be02ad66adf86723fae3a968621989e89fa25e16', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), hAsync("span", { key: 'd7a2749dd04f3acb55d052e2d70df6b988768183', class: "duet-popup-menu-item-label" }, hAsync("slot", { key: '4e8395397defe5adaef38f9c0b415348c95f6425' })), (this.trailingIcon || this.active || (this.url && this.external)) && (hAsync("duet-icon", { key: 'da97a6cf70ab3020b44425846257979492978198', name: this.url && this.external
20915
+ return (hAsync(Host, { key: '8e31b4732e423f363115f217c220217f85a3899a', role: this.accessibleRole === "menuitem" && this.isSafariBrowser ? null : this.accessibleRole }, hAsync(TagName, { key: '4c9a0b3966b5b11b3f8286fdc7bbe83ce93f5df9', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (hAsync("duet-icon", { key: 'decd1fdc669965de735b9538d8256ea34b7d12b7', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), hAsync("span", { key: 'bd28f3d116506e2168fc3e5530d086fa0dd0edcd', class: "duet-popup-menu-item-label" }, hAsync("slot", { key: '0aebe6bcf50f8fbbd7d89bbdc0c4f484f67adb6d' })), (this.trailingIcon || this.active || (this.url && this.external)) && (hAsync("duet-icon", { key: '616a80b13b29eb90f003a163bbcded07a551b58c', name: this.url && this.external
20721
20916
  ? newWindowIcon.title
20722
20917
  : this.active
20723
20918
  ? "messaging-checked-small"
20724
- : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { key: '92e74664e48deb82e2dae45f62ae89bcff698869', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
20919
+ : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { key: '74e587e4cc5c0c431f068bb7974ee8c385cf4259', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
20725
20920
  }
20726
20921
  get element() { return getElement(this); }
20727
20922
  static get style() { return duetPopupMenuItemCss; }
@@ -20913,12 +21108,12 @@ class DuetPromoCard {
20913
21108
  backgroundColor: backgroundColor ? backgroundColor : "none",
20914
21109
  };
20915
21110
  const TagName = this.url ? "a" : "div";
20916
- return (hAsync(Host, { key: 'af448d11e161105c397211ff014c9383079b42f1', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: '79f3ca4d55f67be99f4f7cd6e0a1ef28d64da3ba', class: {
21111
+ return (hAsync(Host, { key: 'dcfc9fe0c01bdd6a3c127d33e73c786dfe34403d', class: { "duet-m-0": this.margin === "none" } }, hAsync("aside", { key: '08e0c5687e205a7b69e0c9ce9c874061a5c77158', class: {
20917
21112
  "duet-promo-card": true,
20918
21113
  "duet-theme-turva": this.theme === "turva",
20919
21114
  "no-bg-color": !this.backgroundColor,
20920
21115
  "duet-promo-card-link": !!this.url,
20921
- }, style: bannerStyles }, hAsync(TagName, { key: '6a09c556defa485766025260e084d876fcc072a3', href: this.url, class: "content-wrapper", ref: element => (this.aOrDivElement = element) }, hAsync("img", { key: '9832d77d4f39e634879c2da087a81552a20aaf13', class: "image", src: this.image, alt: "", role: "presentation" }), hAsync("div", { key: 'fe2cec5d0c889557be33ac5d663a2990d56ee57c', class: "content" }, this.hasPreHeadingSlot && (hAsync("div", { key: 'b105405d3236a416549ee74834214461426a5e93', class: "pre-heading" }, hAsync("slot", { key: '50359bf5424f78947cfa9bd1c25f42344822b8f1', name: "pre-heading" }))), this.hasHeadingSlot && (hAsync("div", { key: '8af70521d1e603b5fe0c44029fbfb99a8a8e89c6', class: "heading" }, hAsync("duet-heading", { key: '85e93d6d7b2e7586763646669087933692ebb4d9', theme: this.theme, level: this.headingLevel, "visual-level": "h3", margin: "none", color: this.textColor }, hAsync("span", { key: '6c606a3c8cd388df51390dd9221dd70e59705532' }, hAsync("slot", { key: '838966e5712aa10bd977fc15bd1dfe627617b5db', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: '42e9d0d08afea654e4152b83d81096313bb98c55', class: "description" }, hAsync("duet-paragraph", { key: '28008c2195cd3bad659aac6d84b5f10122c74d2d', theme: this.theme, margin: "none", color: this.textColor }, hAsync("span", { key: '52d7a34460dc56568447d7277a53391040a17134' }, hAsync("slot", { key: 'baa534ae9994e67a375871a29474d3aaef8845fc', name: "description" }))))), this.hasActionSlot && (hAsync("div", { key: '46096bcff1087436a10c6e604015785d804de8ae', class: "action" }, hAsync("slot", { key: '1202289167a18bac49309d93f03e00737eebf9ff', name: "action" }))))))));
21116
+ }, style: bannerStyles }, hAsync(TagName, { key: 'c44a877377e4e16e1cf651165ada068712de8a1d', href: this.url, class: "content-wrapper", ref: element => (this.aOrDivElement = element) }, hAsync("img", { key: 'e9349820426a672f8e7106f0376e5b5ca9be639c', class: "image", src: this.image, alt: "", role: "presentation" }), hAsync("div", { key: '7a79c417f607e37608dee33ea1a463ca87ed8736', class: "content" }, this.hasPreHeadingSlot && (hAsync("div", { key: 'fce0bc86243d0fe8174b4e1b5e0aeaca9e2fa285', class: "pre-heading" }, hAsync("slot", { key: '55ea16147dbd175071917cee3beda6db4679a6fe', name: "pre-heading" }))), this.hasHeadingSlot && (hAsync("div", { key: 'f5298df0419f9dda577c8ee5632a15e1860f8cf8', class: "heading" }, hAsync("duet-heading", { key: '608bb6c15a2cb6abf5e4f175581738db58fe24ec', theme: this.theme, level: this.headingLevel, "visual-level": "h3", margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: '42abfd8c2e6d350602767b60f3491e0fd575322e' }, hAsync("slot", { key: '4048b41700d0a54a11df20e4c1a180d662424b76', name: "heading" }))))), this.hasDescriptionSlot && (hAsync("div", { key: 'dc7662d900140f51c633ece8abcc46cc1187f5ef', class: "description" }, hAsync("duet-paragraph", { key: 'c61e556777f7dc382d06c913e7e1990304aa5740', theme: this.theme, margin: "none", color: postfixTheme(this.textColor, this.theme) }, hAsync("span", { key: '610970b31c93d2fe14c1d967a43105e3fe7737f3' }, hAsync("slot", { key: 'c38b144ab61f06d8b8df9d072a89acc5c7357a3c', name: "description" }))))), this.hasActionSlot && (hAsync("div", { key: '8206bdc5367fd9cca9eab63539ac488cc8233c14', class: "action" }, hAsync("slot", { key: '162fa1fe7c8ead96253bc3e43bb0d663054a4c37', name: "action" }))))))));
20922
21117
  }
20923
21118
  get element() { return getElement(this); }
20924
21119
  static get style() { return duetPromoCardCss; }
@@ -21124,16 +21319,16 @@ class DuetRadio {
21124
21319
  * Always the last one in the class.
21125
21320
  */
21126
21321
  render() {
21127
- return (hAsync(Host, { key: 'adace1958aa84ea8dffa85c53ebed707cd85af71', onClick: this.onClick, class: {
21322
+ return (hAsync(Host, { key: '173f8f9bee06f6f1fce187b223c661a737e724a5', onClick: this.onClick, class: {
21128
21323
  horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
21129
21324
  "horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
21130
21325
  "duet-m-0": this.margin === "none",
21131
- } }, hAsync("div", { key: '7b36666f734105753f05ae5e49e24ad949d47762', class: { "duet-radio-container": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", { key: '1ebfcd6173ef4cd8e9bf552ddaed3ac034aabb3d', name: "input" }), hAsync("label", { key: 'b10d38b18e4897ff7486b9e6f619efb1a1d9dc3e', inert: true, ref: element => (this.labelElement = element), class: {
21326
+ } }, hAsync("div", { key: 'c234b7ed5eb36bcce5c89ebe92b3347245136267', class: { "duet-radio-container": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", { key: '064045eefce1bcd83621abeba85129b345867a9e', name: "input" }), hAsync("label", { key: '28efb57846fef34d8be372c9d9ac351120efa58d', inert: true, ref: element => (this.labelElement = element), class: {
21132
21327
  "duet-label": true,
21133
21328
  checked: this.checked,
21134
21329
  focus: this.focus,
21135
21330
  disabled: this.disabled || this.groupDisabled,
21136
- } }, hAsync("div", { key: 'a532c0378340ea61a4992f503458f7a53234b99c', class: "duet-label-content" }, this.hasLabel ? hAsync("slot", { name: "label" }) : this.label)))));
21331
+ } }, hAsync("div", { key: '1f6a2376b2c34c7f5479eac3817b3f3c92b7ca42', class: "duet-label-content" }, this.hasLabel ? hAsync("slot", { name: "label" }) : this.label)))));
21137
21332
  }
21138
21333
  get element() { return getElement(this); }
21139
21334
  static get style() { return duetRadioCss; }
@@ -21328,7 +21523,7 @@ class DuetRadioGroup {
21328
21523
  * Always the last one in the class.
21329
21524
  */
21330
21525
  render() {
21331
- return (hAsync(Host, { key: 'dabbfa37060cbe66ac24eaf3cbf61a9458568f4f', onDuetChange: this.onSelect, class: { horizontal: this.direction === "horizontal" } }, hAsync("duet-fieldset", { key: 'd3ebc475550eecb8e0efad23bcd44900c319f158', label: this.label, labelHidden: this.labelHidden, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: 'd3de532b6447a006623932796af8115fea84c78e', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: 'f1f037e60e37c9bc64b2063f09597061c0681ad3', name: "tooltip" }), hAsync("div", { key: 'edca5ba806e3ba78141ac428e6082fc5ee0475cf', class: { "duet-radio-group": true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '683ba284b2dec25ab485fee47db39ecab99c6304' })))));
21526
+ return (hAsync(Host, { key: 'ce0d325f055e68197bbdfc9f84f2b1f318483134', onDuetChange: this.onSelect, class: { horizontal: this.direction === "horizontal" } }, hAsync("duet-fieldset", { key: '8f73fa5457e7e95a5e86c5c69875c10ead9e703a', label: this.label, labelHidden: this.labelHidden, caption: this.caption, error: this.error, margin: this.margin, theme: this.theme, "accessible-live-error": this.accessibleLiveError }, this.tooltip && (hAsync("duet-tooltip", { key: 'd6d6455b725d087219d8aa4aa261530ef6e00d16', slot: "tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '26c388eeed2a7782327e859bc08f6cdd17a22515', name: "tooltip" }), hAsync("div", { key: '7ebf921fb7de9817005aa82317f2cd21736baa48', class: { "duet-radio-group": true, "duet-no-stacking": !this.responsive } }, hAsync("slot", { key: '8d0088c7a3b3951fcede92d7da5aae7a1eb8dc41' })))));
21332
21527
  }
21333
21528
  get element() { return getElement(this); }
21334
21529
  static get watchers() { return {
@@ -21516,13 +21711,13 @@ class DuetRangeSlider {
21516
21711
  const rangeStyles = {
21517
21712
  background: `-webkit-linear-gradient(left,${active} 0%,${active} ${percentage}%,${inactive} ${percentage}%)`,
21518
21713
  };
21519
- return (hAsync(Host, { key: '635d96d58980051af3fbea46fa89192773c6bf6d', class: { "duet-m-0": this.margin === "none", "duet-expand": this.expand } }, hAsync("div", { key: 'd53d8a40c3e65128e9986a64c7027109063f6b32', class: {
21714
+ return (hAsync(Host, { key: '8ae2f8b801002f2d7f36a1f6f2c5d9de5e52d480', class: { "duet-m-0": this.margin === "none", "duet-expand": this.expand } }, hAsync("div", { key: '3faa6f6b699d012b9d6ff43f0f5255dee1842fe8', class: {
21520
21715
  "duet-range-container": true,
21521
21716
  "duet-label-hidden": this.labelHidden,
21522
21717
  "duet-theme-turva": this.theme === "turva",
21523
21718
  "duet-ie": isInternetExplorer(),
21524
21719
  "duet-range-disabled": this.disabled,
21525
- } }, hAsync(DuetInternalLabel, { key: 'fa54945ba8db3543be607e3999c7f70d3676507d', theme: theme, color: this.labelColor, weight: this.labelWeight, margin: "small", for: identifier }, this.label), hAsync("output", { key: '08989934cd596e774900ae1708c5b787c2822fb2', "aria-hidden": "true", htmlFor: identifier, class: "duet-output" }, this.value.toLocaleString(this.locale), this.unit), hAsync("input", { key: 'aacbb760b5646b721e6ce417d66f9617b41c8d0f', onInput: this.onInput, onChange: this.onChange, ref: input => (this.nativeInput = input), type: "range", min: this.min, max: this.max, step: this.step, value: this.value, style: rangeStyles, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this.value, "aria-valuetext": `${this.value} ${this.unit}`, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, id: identifier, name: this.name, disabled: this.disabled, required: this.required, class: "duet-range" }))));
21720
+ } }, hAsync(DuetInternalLabel, { key: '330e765a6f42437f0ec80c8fd12f02aa9c8f564d', theme: theme, color: this.labelColor, weight: this.labelWeight, margin: "small", for: identifier }, this.label), hAsync("output", { key: '91a85bd1d5816c694a32882bbe3bce178afe76ba', "aria-hidden": "true", htmlFor: identifier, class: "duet-output" }, this.value.toLocaleString(this.locale), this.unit), hAsync("input", { key: '9ccf4115591954ca7123216d7fda90ca24a3a06d', onInput: this.onInput, onChange: this.onChange, ref: input => (this.nativeInput = input), type: "range", min: this.min, max: this.max, step: this.step, value: this.value, style: rangeStyles, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this.value, "aria-valuetext": `${this.value} ${this.unit}`, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, id: identifier, name: this.name, disabled: this.disabled, required: this.required, class: "duet-range" }))));
21526
21721
  }
21527
21722
  get element() { return getElement(this); }
21528
21723
  static get style() { return duetRangeSliderCss; }
@@ -21751,10 +21946,10 @@ class DuetRangeStepper {
21751
21946
  * Always the last one in the class.
21752
21947
  */
21753
21948
  render() {
21754
- return (hAsync("div", { key: '8398641a6b79d5480efcf5fd391ae930c825c085', class: {
21949
+ return (hAsync("div", { key: '1b5b22965b01d2a7ae85b7339ee8645f8349f4b6', class: {
21755
21950
  "duet-range-stepper": true,
21756
21951
  "duet-theme-turva": this.theme === "turva",
21757
- }, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { key: '719ddf8b6ecb2eee73ade2ba046cbba95e8bdb16', class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), hAsync("duet-action-button", { key: 'cfad5cb52eb2149e8e2ceff94da6412290d9ec74', disabled: this.disabled || this.buttonLeftDisabled, class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small", title: "" }), hAsync("duet-action-button", { key: 'e0d24f7a7e70269f418cf86483aa718a811ed73f', disabled: this.disabled || this.buttonRightDisabled, class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small", title: "" })));
21952
+ }, onKeyDown: e => this.onKeyboardDown(e), "aria-controls": this.ariaControls }, hAsync("span", { key: '54b38991bc5f22f1834a911aab5adcb3f5564728', class: "duet-range-step-counter", part: "range-numbers" }, this.generateStepSize()), hAsync("duet-action-button", { key: '1f0e154e3dc32e14ebf7ec696182b11915045b5a', disabled: this.disabled || this.buttonLeftDisabled, class: "duet-range-step-button duet-range-step-minus", onClick: e => this.handleClick(e, -1), id: this.leftBn, "accessible-label": `${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`, ref: el => (this.leftBnRef = el), part: "navigation-arrow", iconName: "action-arrow-left-small", title: "" }), hAsync("duet-action-button", { key: '2531345ee7783cc6b6c2e742abdf6240aea88bb9', disabled: this.disabled || this.buttonRightDisabled, class: "duet-range-step-button duet-range-step-plus", onClick: e => this.handleClick(e, 1), "accessible-label": `${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`, id: this.rightBn, ref: el => (this.rightBnRef = el), part: "navigation-arrow", iconName: "action-arrow-right-small", title: "" })));
21758
21953
  }
21759
21954
  get element() { return getElement(this); }
21760
21955
  static get watchers() { return {
@@ -22046,18 +22241,18 @@ class DuetScrollable {
22046
22241
  * Always the last one in the class.
22047
22242
  */
22048
22243
  render() {
22049
- return (hAsync(Host, { key: '0fb3eb646118def9ab36a337c410f1e7c10567b9', class: {
22244
+ return (hAsync(Host, { key: '0052e12de4aea5e4a3f67e031c90f4f6d9ad53d7', class: {
22050
22245
  "duet-theme-turva": this.theme === "turva",
22051
22246
  "duet-theme-default": this.theme === "default",
22052
- } }, this.hasCollapseButtonLabelSlot && (hAsync("div", { key: '067b4a9f825795eb05a9dbcf47374f89a9aad811', class: {
22247
+ } }, this.hasCollapseButtonLabelSlot && (hAsync("div", { key: '9aa2cbde134aa4bdfe60c540cea270c5db2487a2', class: {
22053
22248
  collapse: true,
22054
22249
  hide: !this.needsScrolling && !this.collapsed,
22055
- } }, hAsync("duet-button", { key: '93cce5cf83ec0068723709b27ebec0a3512fcf13', variation: "plain", margin: "none", "center-text": true, onClick: () => this.collapsedOnClick() }, hAsync("slot", { key: 'dfa51544d8e8adab8e671be13e6b04ab74abdd03', name: "collapse-button-label" })))), hAsync("div", { key: '91e4a9fd245f2bb0d1f9dba2d5e0cd2f3f02c6e6', class: {
22250
+ } }, hAsync("duet-button", { key: '10acabde835061194bee92f32e954d2912d768d2', variation: "plain", margin: "none", "center-text": true, onClick: () => this.collapsedOnClick() }, hAsync("slot", { key: 'be354ed8ac0f0f5f6e51a64764d311498a90f3a4', name: "collapse-button-label" })))), hAsync("div", { key: '7c9a6efbf372a908873364f1140e57c8e085ea28', class: {
22056
22251
  "duet-scrollable-items": true,
22057
22252
  buttons: this.buttons,
22058
22253
  center: this.center,
22059
22254
  "duet-theme-turva": this.theme === "turva",
22060
- } }, this.buttons && this.renderButton("left"), hAsync("div", { key: 'dd48f5446a1276128998f7399448e8887f715456', class: {
22255
+ } }, this.buttons && this.renderButton("left"), hAsync("div", { key: '228646dca94886c735c18f35755b30d67cb3e082', class: {
22061
22256
  "duet-scrollable-list": true,
22062
22257
  [`duet-scrollable-list--${this.buttonPosition}`]: true,
22063
22258
  [`gap-${this.gap}`]: true,
@@ -22065,7 +22260,7 @@ class DuetScrollable {
22065
22260
  [`duet-overflow-padding--${this.padding}`]: this.padding !== "none",
22066
22261
  [`duet-scrollable-list--${this.buttonPosition}`]: this.buttonPosition === "absolute",
22067
22262
  "duet-scrollable-stretch": this.stretch,
22068
- }, onScroll: () => this.updateScrollButtons(), ref: element => (this.scrollPaneElement = element) }, hAsync("slot", { key: '4a7c1f7196c3cb9d6e1c63cdc294088dc6f5bd96' })), this.buttons && this.renderButton("right"))));
22263
+ }, onScroll: () => this.updateScrollButtons(), ref: element => (this.scrollPaneElement = element) }, hAsync("slot", { key: '4453deb9090c1ad53469a85232d2c188f9f2556f' })), this.buttons && this.renderButton("right"))));
22069
22264
  }
22070
22265
  get element() { return getElement(this); }
22071
22266
  static get watchers() { return {
@@ -22085,7 +22280,7 @@ class DuetScrollable {
22085
22280
  "center": [516],
22086
22281
  "padding": [1],
22087
22282
  "gap": [1],
22088
- "selected": [1026],
22283
+ "selected": [1538],
22089
22284
  "stretch": [4],
22090
22285
  "scrollPaneAtStart": [32],
22091
22286
  "needsScrolling": [32],
@@ -22094,7 +22289,7 @@ class DuetScrollable {
22094
22289
  },
22095
22290
  "$listeners$": undefined,
22096
22291
  "$lazyBundleId$": "-",
22097
- "$attrsToReflect$": [["collapsed", "collapsed"], ["center", "center"]]
22292
+ "$attrsToReflect$": [["collapsed", "collapsed"], ["center", "center"], ["selected", "selected"]]
22098
22293
  }; }
22099
22294
  }
22100
22295
 
@@ -22122,13 +22317,13 @@ class DuetSectionLayout {
22122
22317
  * Always the last one in the class.
22123
22318
  */
22124
22319
  render() {
22125
- return (hAsync(Host, { key: '18fd98b7d468b66c761c675cf15b44aed33be6f9', class: {
22320
+ return (hAsync(Host, { key: '092586b7c997c6c850a1e6c3af1379765d077b2f', class: {
22126
22321
  "duet-middle": this.middle,
22127
22322
  "duet-ie": isInternetExplorer(),
22128
- } }, hAsync("div", { key: 'd3faef8f827ecbf40c397cf4c0f58004eaf25043', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'b0181c49f873c0a0663073ce36c4fb73dce94d01', class: {
22323
+ } }, hAsync("div", { key: '125c4e3f67f73ee0eed48dcb561349e28587aefd', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'e1786b2d7a0c258bdd3d92bb8132ea0c2371ab36', class: {
22129
22324
  "duet-layout": true,
22130
22325
  [`padding-${this.paddingBreakpoint}`]: !!this.paddingBreakpoint,
22131
- } }, hAsync("section", { key: '1a6ad7a15930a15db6c4fa9ade4f3e050855e9f1', class: "duet-main" }, hAsync("slot", { key: '5937078250ca0abb18d3381278a3fa8da6162780' }))))));
22326
+ } }, hAsync("section", { key: 'cabd2f501a9c6826a30beb2bf40993d0942a1415', class: "duet-main" }, hAsync("slot", { key: 'ee9b8efe014ed27a0e6838028d5060590444ee42' }))))));
22132
22327
  }
22133
22328
  get element() { return getElement(this); }
22134
22329
  static get style() { return duetSectionLayoutCss; }
@@ -22344,23 +22539,23 @@ class DuetSelect {
22344
22539
  */
22345
22540
  render() {
22346
22541
  const identifier = this.identifier || this.selectId;
22347
- return (hAsync(Host, { key: '9d54c9dfad694be3d7e6399d5afc1b1432c1f5dc', onClick: this.onClick, class: {
22542
+ return (hAsync(Host, { key: '3d3bc7d84000806ae8fab973ba04c08a25dc0c2f', onClick: this.onClick, class: {
22348
22543
  "duet-m-0": this.margin === "none",
22349
22544
  "duet-expand": this.expand,
22350
22545
  [`duet-select-variation-${this.variation}`]: true,
22351
- } }, hAsync("div", { key: 'cacd80da0eaeaef2fd6f0e08caec3a39cd273294', class: {
22546
+ } }, hAsync("div", { key: 'fe0f4b2d68a812713191449693d63fa56513164e', class: {
22352
22547
  "duet-select-container": true,
22353
22548
  "duet-label-hidden": this.labelHidden,
22354
22549
  "duet-theme-turva": this.theme === "turva",
22355
22550
  [`duet-select-variation-${this.variation}`]: true,
22356
22551
  "duet-input-top-caption-shown": this.isCaptionVisible,
22357
22552
  "has-error": !!this.error,
22358
- } }, hAsync(DuetInternalLabel, { key: 'be880bfbaabc9d88b6b31b921af37f6706f32cd8', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: '3100b161cfd533403f8a67c305a03e2dc8ea00c5', direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '52ab80f0f605fa9711d84f0f26d4325dad7c64cf', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: '4931ec0414f6cd9716904f1c00d00b02d1550813', id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { key: 'fb713046983da9a542a6aa1c3ad6080c3522a820', class: "duet-select-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: 'a2b3614b6e03359cecd0167f980c5b48de7cc7b0', id: this.topCaptionPlaceholderId, class: "duet-select-placeholder", size: "small" }, this.placeholder)), hAsync("slot", { key: '50070cedd7b6049e93093cca483a47183c77bae5' }), hAsync("select", { key: '4f53bcd8e5f889ddac92f9815364e1b25521da46', ref: select => (this.nativeSelect = select), disabled: this.disabled, name: this.name, id: identifier, role: this.role, "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, required: this.required }, this.placeholder && (hAsync("option", { key: '999f6c43aec61a8c2df743c70444555ae2304e2d', disabled: true, selected: true, value: "" }, this.placeholder)), !this.processedItems ? (hAsync("option", null, "Virhe valintoja ladattaessa. P\u00E4ivit\u00E4 sivu ja kokeile uusiksi.")) : (this.processedItems.map(item => {
22553
+ } }, hAsync(DuetInternalLabel, { key: 'a44feea69dd179e6c27685de9074cf3fa966b571', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: '7a3d46b3f60d283ecfa474b05a918fa8c505d1aa', direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), hAsync("slot", { key: '3566d83ece8668e83b0ccde241ed49418ed941e4', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: '709ed39dea050b314217f5de4190535166a82f3c', id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { key: 'cf8a14439328e37ccc1d41c38190c18414b894ea', class: "duet-select-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: '1b439a475ac5a6220bbab2d93f827c089a7a5c7b', id: this.topCaptionPlaceholderId, class: "duet-select-placeholder", size: "small" }, this.placeholder)), hAsync("slot", { key: '15182f28fa38955377dc822ab7d8ff61238cb4d8' }), hAsync("select", { key: '99ca572fb0b31f28659712b18accef2b30225d4a', ref: select => (this.nativeSelect = select), disabled: this.disabled, name: this.name, id: identifier, role: this.role, "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, required: this.required }, this.placeholder && (hAsync("option", { key: '8e7c047411a37cd3a8a82415566d6f73e71a5533', disabled: true, selected: true, value: "" }, this.placeholder)), !this.processedItems ? (hAsync("option", null, "Virhe valintoja ladattaessa. P\u00E4ivit\u00E4 sivu ja kokeile uusiksi.")) : (this.processedItems.map(item => {
22359
22554
  return isOptionGroup(item) ? this.renderOptionGroup(item) : this.renderOption(item);
22360
- }))), hAsync("div", { key: '78450970b7a3b2f57640bd8b7eec994076ca1a4c', class: {
22555
+ }))), hAsync("div", { key: '05ac432d89ce773e077f01f7b272484f110f10db', class: {
22361
22556
  "duet-select": true,
22362
22557
  [`duet-select-variation-${this.variation}`]: true,
22363
- }, "aria-hidden": "true" }, hAsync("span", { key: this.value, class: "duet-select-selected-value" }, this.getSelectedItemLabel()), (this.variation === "default" && (hAsync("svg", { key: '8e2392a51be92391a7dd207ebe0ec2325a8cb194', role: "img", class: "duet-select-icon", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '43c899cb0891bf42e3ebb7cebbb6000690d0d93e', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" })))) || (hAsync("duet-icon", { key: 'da2b9d8166a8b626b546ee41ac6e10e1473c75b5', theme: this.theme, name: "action-arrow-down-small", color: "currentColor", margin: "none", size: this.variation === "compact" ? "xxx-small" : "xx-small" }))), hAsync("span", { key: '01000fd324d80c490a48f74c1ff2abf87db9f179', class: "duet-keep-container-height", role: "presention", "aria-hidden": "true" }, "_")), hAsync("span", { key: '199a372ef44043d9d44121109013dca701942bdd', class: "duet-select-help", id: this.errorId, "aria-live": this.accessibleLiveError, "aria-atomic": "true", "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '2d14eea7bc7db58eacc761e52eb098d52f8cfdef' }, this.error)))));
22558
+ }, "aria-hidden": "true" }, hAsync("span", { key: this.value, class: "duet-select-selected-value" }, this.getSelectedItemLabel()), (this.variation === "default" && (hAsync("svg", { key: '3c6969c19468b5a26e8cc95ec2947442dcebc42a', role: "img", class: "duet-select-icon", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '36c334a0f8ce00a2b0099d3941570f8526d15dbb', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" })))) || (hAsync("duet-icon", { key: 'f0698dcc03bf523766986c548fa5cad2a6b1875c', theme: this.theme, name: "action-arrow-down-small", color: "currentColor", margin: "none", size: this.variation === "compact" ? "xxx-small" : "xx-small" }))), hAsync("span", { key: 'ae2878e5f962708b0a8cdcf15e22c79e9b26f9d5', class: "duet-keep-container-height", role: "presention", "aria-hidden": "true" }, "_")), hAsync("span", { key: '9f818a79660ccb1e79c0b5160541da183d5b371e', class: "duet-select-help duet-select-error", id: this.errorId, "aria-live": this.accessibleLiveError, "aria-atomic": "true", "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '38b9169e9a7418f193b97512f6303a8e90215e06' }, this.error)))));
22364
22559
  }
22365
22560
  get element() { return getElement(this); }
22366
22561
  static get watchers() { return {
@@ -22440,9 +22635,9 @@ class DuetShapedImage {
22440
22635
  const style = {
22441
22636
  "--rotation": `${this.rotation}deg`,
22442
22637
  };
22443
- return (hAsync(Host, { key: 'c2cefe890056d433f9b070eaeecb6b327954eae2', class: { "duet-theme-turva": this.theme === "turva", "duet-m-0": this.margin === "none" } }, hAsync("span", { key: '8f1dffa682bdba8264cc741e3b2b820b6d2a7b83', class: {
22638
+ return (hAsync(Host, { key: 'dcc19a1624a88154af7cf3c3c895bde83dc28d15', class: { "duet-theme-turva": this.theme === "turva", "duet-m-0": this.margin === "none" } }, hAsync("span", { key: 'e1a1750e828b0b337433d0cfcc2377be44a03642', class: {
22444
22639
  "shaped-image": true,
22445
- }, role: "img", "aria-label": this.accessibleLabel, style: style }, hAsync("span", { key: '3d05a88766196505ee9c66110e24a6cdd2e35806', class: "shaped-image-mask", role: "presentation" }, hAsync("span", { key: '3cf3510ca5a5dd7eb16d9c531732ebef9e77696b', class: "shaped-image-img", role: "presentation", style: { backgroundImage: `url("${this.src}")` } })))));
22640
+ }, role: "img", "aria-label": this.accessibleLabel, style: style }, hAsync("span", { key: 'a75be0a31d3bcef5b7c0191aa5da4235f8f9b548', class: "shaped-image-mask", role: "presentation" }, hAsync("span", { key: '19a03a8a14b1ec7a15c8938e031d73d78819bf00', class: "shaped-image-img", role: "presentation", style: { backgroundImage: `url("${this.src}")` } })))));
22446
22641
  }
22447
22642
  static get style() { return duetShapedImageCss; }
22448
22643
  static get cmpMeta() { return {
@@ -22512,10 +22707,12 @@ class DuetShareChart {
22512
22707
  this.itemsTotalValue = this.items.reduce((total, { value }) => total + value, 0);
22513
22708
  }
22514
22709
  render() {
22515
- return (hAsync(Host, { key: '8ea38d9a00e0a4d24057fd9c0cfbd0d96d24acb7' }, hAsync("div", { key: '9d9d866c172eb265ffe03e63553ba8b8faf6184c', class: "duet-share-chart-horizontal-bar", role: "presentation" }, this.items.map(item => (hAsync("span", { class: "duet-share-chart-share", style: {
22710
+ return (hAsync(Host, { key: '3ada6920466227b32ee18d3bdee2fb8762a555ea' }, hAsync("div", { key: 'f2abaf3b3e3e631e48c4df538c397953f133c357', class: "duet-share-chart-horizontal-bar", role: "presentation" }, this.items
22711
+ .filter(i => !!i.value)
22712
+ .map(item => (hAsync("span", { class: "duet-share-chart-share", style: {
22516
22713
  width: `${(item.value / this.itemsTotalValue) * 100}%`,
22517
22714
  backgroundColor: getColorByName(item.color, this.theme),
22518
- } })))), hAsync("ul", { key: '04fa8bca459b6b359a67dfab612d997e71e8c647', class: "duet-share-chart-item-list" }, this.items.map(item => (hAsync("li", { class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("span", { class: "duet-share-chart-item-color", style: { background: getColorByName(item.color, this.theme) } }), hAsync("span", { class: "duet-share-chart-item-text" }, item.text, ":"), hAsync("span", { class: "duet-share-chart-item-value" }, "\u00A0", formatNumber(item.value), "\u00A0", this.unit), this.unit !== "%" && (hAsync("duet-visually-hidden", null, `${formatNumber((item.value / this.itemsTotalValue) * 100, 0)} %`)))))), hAsync("slot", { key: '50552ff7dd046b39c40e11a7d3cd60b6b28e3e1b' })));
22715
+ } })))), hAsync("ul", { key: '47cc62dfd72a9fd17cfd34e42ddefc84368f8277', class: "duet-share-chart-item-list" }, this.items.map(item => (hAsync("li", { class: { "duet-theme-turva": this.theme === "turva" } }, hAsync("span", { class: "duet-share-chart-item-color", style: { background: getColorByName(item.color, this.theme) } }), hAsync("span", { class: "duet-share-chart-item-text" }, item.text, ":"), hAsync("span", { class: "duet-share-chart-item-value" }, "\u00A0", formatNumber(item.value), "\u00A0", this.unit), this.unit !== "%" && (hAsync("duet-visually-hidden", null, `${formatNumber((item.value / this.itemsTotalValue) * 100, 0)} %`)))))), hAsync("slot", { key: '0dd9f58d3af51af5179e5a93dc18a4ab34c519f3' })));
22519
22716
  }
22520
22717
  get element() { return getElement(this); }
22521
22718
  static get style() { return duetShareChartCss; }
@@ -22542,7 +22739,7 @@ class DuetShareChartItem {
22542
22739
  this.value = 0;
22543
22740
  }
22544
22741
  render() {
22545
- return (hAsync(Host, { key: '511781694a2e40ce565e0c1769075b8f5d1395e5' }, hAsync("div", { key: '8ea6d35e74f9209ef6a0c12301030c8ca7f1e6a4', hidden: true }, hAsync("slot", { key: '66f07cccba2748aa2c0ee6db3c43d0b6c6a91ed1' }))));
22742
+ return (hAsync(Host, { key: '9b3c4881b8b8c51625dd470b88b67988841b2ca1' }, hAsync("div", { key: '9394034bdf632e6c75848d95faec2ab3ffd75ba8', hidden: true }, hAsync("slot", { key: 'd0341130c130271d932639f4d5dc0678432272ad' }))));
22546
22743
  }
22547
22744
  get element() { return getElement(this); }
22548
22745
  static get cmpMeta() { return {
@@ -22692,12 +22889,12 @@ class DuetShowMore {
22692
22889
  * Always the last one of the class.
22693
22890
  */
22694
22891
  render() {
22695
- return (hAsync(Host, { key: '42a6b4bfbf4d246e358bc3684a614ecd7f52f1b7' }, hAsync("div", { key: '53daf706313975c82448da4e2cfd7ab8599df822', class: {
22892
+ return (hAsync(Host, { key: 'a43de6a4bae0a8c38852a11a7b384b7f104ec024' }, hAsync("div", { key: '74f8d429039d38ea1151aeab159f34cfed375df6', class: {
22696
22893
  "duet-show-more": true,
22697
22894
  "duet-theme-turva": this.theme === "turva",
22698
22895
  "duet-m-0": this.margin === "none",
22699
22896
  open: this.open,
22700
- } }, hAsync("div", { key: '66f968e2eaaabebe12de4e6025113540ecf804c1', ref: ref => (this.contentElement = ref), class: { content: true }, id: this.contentId, tabindex: this.open ? "-1" : "" }, hAsync("div", { key: 'c4edb742ff0d77060b9836cc30f3aed2dccfcc73', class: { "slotted-content": true } }, hAsync("slot", { key: '39a71a36458fcaecb1ac385cd7ca4547a671aaa1' }))), hAsync("duet-button", { key: '0e4a81ed2db4eb7ad0f61fdf9c14f15810ab218f', id: this.buttonId, variation: "plain", "accessible-label": this.buttonAriaOpen ? this.showLessAccessibleLabel : this.showMoreAccessibleLabel, "accessible-expanded": this.buttonAriaOpen ? "true" : "false", "accessible-controls": this.contentId, accessiblePressed: this.isSafariBrowser ? this.open : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown, "icon-right": true, icon: this.open ? "action-arrow-up-small" : "action-arrow-down-small", "icon-size": "medium-small", size: "small", margin: this.buttonMargin, padding: this.buttonPadding, theme: this.theme === "turva" ? "turva" : "default" }, hAsync("span", { key: '4064b5b817071d4235ab8cfbe696b2839173b758' }, this.open ? this.showLessLabel : this.showMoreLabel)))));
22897
+ } }, hAsync("div", { key: '1e7b359e2ec056100a22d4fcdf12a9afd3432f36', ref: ref => (this.contentElement = ref), class: { content: true }, id: this.contentId, tabindex: this.open ? "-1" : "" }, hAsync("div", { key: 'd56eb046a4f700defffcefd1c279149ab85b68ae', class: { "slotted-content": true } }, hAsync("slot", { key: '4978e6989abb32797fd956d5bb35d1e860b63f71' }))), hAsync("duet-button", { key: 'ba557d00ed023a0b31efcf3480e1b30b326e6799', id: this.buttonId, variation: "plain", "accessible-label": this.buttonAriaOpen ? this.showLessAccessibleLabel : this.showMoreAccessibleLabel, "accessible-expanded": this.buttonAriaOpen ? "true" : "false", "accessible-controls": this.contentId, accessiblePressed: this.isSafariBrowser ? this.open : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown, "icon-right": true, icon: this.open ? "action-arrow-up-small" : "action-arrow-down-small", "icon-size": "medium-small", size: "small", margin: this.buttonMargin, padding: this.buttonPadding, theme: this.theme === "turva" ? "turva" : "default" }, hAsync("span", { key: '106762507a1b6c28e334d0c383ff481b9a4bf8aa' }, this.open ? this.showLessLabel : this.showMoreLabel)))));
22701
22898
  }
22702
22899
  get element() { return getElement(this); }
22703
22900
  static get style() { return duetShowMoreCss; }
@@ -23224,16 +23421,16 @@ class DuetSlideout {
23224
23421
  };
23225
23422
  const topLevelOpenMenuBarTranslation = getLocaleString(this.topLevelOpenMenuBarLangObject);
23226
23423
  const exitTranslation = getLocaleString(this.exitLangObject);
23227
- return (hAsync(Host, { key: '609dee4fb7b4cae3f3f0560de3ea6812d1bb092b' }, hAsync("div", { key: 'f061d4c21a65b9225b7723bb2ec1638efaba598b', class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, this.modal && hAsync("duet-overlay", { key: '46fa237ec92876e64c5df2d49a44e3e47d6facdd', visible: this.open, "display-device": "large", zIndex: "600" }), hAsync("div", { key: '603b8b5fadd1bf49307e1108eb0bc4038016043b', ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
23424
+ return (hAsync(Host, { key: '80fe71cba1f67117359472cbc3d59ec80910cca2' }, hAsync("div", { key: 'b4611be3d11b74e906804f32fa54f09ef03c9319', class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, this.modal && hAsync("duet-overlay", { key: '72729044a85b3915f914f9b37efc503601681aed', visible: this.open, "display-device": "large", zIndex: "600" }), hAsync("div", { key: 'dd793703df1c6412ba02021f6ee26232180db120', ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
23228
23425
  dialog: true,
23229
23426
  hidden: !this.open,
23230
23427
  modal: this.modal,
23231
- }, style: styles }, hAsync(FocusGuard, { key: 'f94722ac6e55c9317325350d8c37bb521a461c53', moveFocusTo: this.closeButton }), hAsync("div", { key: 'f1f8767bc7c6cf3844b114cd3b908cac380bfcfe', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: '40c22f787228d82cf2c0b16b33ed750a37d8d10f', class: "top" }, hAsync("button", { key: 'fdf5bed6a52758d2fc13fbf0a6ecc8cce38eefcb', ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
23428
+ }, style: styles }, hAsync(FocusGuard, { key: '7217cb29c43fcab1a4d7a0ab2bc25516d5a3db86', moveFocusTo: this.closeButton }), hAsync("div", { key: 'f660e3d4126342062aeef72abb440bfd8c638b26', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: '05ed9fae1dd41c76c8af9e31ec907cc58f83d3d5', class: "top" }, hAsync("button", { key: '65d0a9c2feb22186f337961c6967021d9dbc97f4', ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
23232
23429
  "slideout-close": true,
23233
23430
  active: this.open,
23234
- }, onClick: this.onClick, inert: this.openPanel }, hAsync("duet-icon", { key: '9262c9e66eeaa8e6d0026d4fdca1d1c2a607cc88', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '3aada6f43f49c7474de3a47632088c7f49dfcfe1', class: "sticky-header" }, hAsync("slot", { key: 'd71720ae8c83da6b75930f8bf87fb34c29b7f090', name: "sticky-header" }))), hAsync("div", { key: 'c7296f205661118fc0d8c8b5ede684f42e9f7e82', id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
23431
+ }, onClick: this.onClick, inert: this.openPanel }, hAsync("duet-icon", { key: 'db5c0e81b4fdb700e9cd790249abcc7be8ddb93d', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '3056bf2ec202421d6314e9bbec1176990dac8d7d', class: "sticky-header" }, hAsync("slot", { key: 'c9c7e39ec4d453a110ad37ba6e273bcb50cfe8a8', name: "sticky-header" }))), hAsync("div", { key: 'a051d32697cb79fdf3dddcc5c28c5f6e1e11afb3', id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
23235
23432
  items: true,
23236
- } }, hAsync("slot", { key: '44e81aff2f2a593d8c68075a49779286e3e99ec0' })), hAsync(FocusGuard, { key: 'f9538f7aea09b2e91b4571a94aa6f6847484ecef', moveFocusTo: this.closeButton })))));
23433
+ } }, hAsync("slot", { key: 'b552c7adcb64a48b13ae808a26037b0c6ba34021' })), hAsync(FocusGuard, { key: 'eb6637a6a2c879f6bcab0f798f8f13639d2fdc68', moveFocusTo: this.closeButton })))));
23237
23434
  }
23238
23435
  get element() { return getElement(this); }
23239
23436
  static get watchers() { return {
@@ -23303,7 +23500,7 @@ class DuetSlideoutLang {
23303
23500
  */
23304
23501
  render() {
23305
23502
  const langTranslation = getLocaleString(this.chooseLangObject);
23306
- return (hAsync(Host, { key: '9ea3449645c4b00c8dff52cb68bfb5976fd065fd' }, hAsync("div", { key: '9170bacd52facb5c29c7498baaf0bbc22a249df3', class: "duet-slideout-lang", role: "group", "aria-label": langTranslation }, hAsync("duet-icon", { key: '6d8bda34ee0bca91d53f50e1ad3cb8ed67b41973', name: "navigation-language", margin: "none", color: "secondary" }), hAsync("slot", { key: '6629fa2be22c16d46284cd37dc251d02e64358cf' }))));
23503
+ return (hAsync(Host, { key: '9b4b8cd45c9f80726b2a8b30ee470c1c66a36844' }, hAsync("div", { key: 'a2dd75af5a7f4bc86019e14c7981a33e605bda58', class: "duet-slideout-lang", role: "group", "aria-label": langTranslation }, hAsync("duet-icon", { key: 'c2e848bda85007675b1c312d583d68cb12da8f29', name: "navigation-language", margin: "none", color: "secondary" }), hAsync("slot", { key: 'cf120478d33ad1eb78a600abc241bcc79c7e5c36' }))));
23307
23504
  }
23308
23505
  get element() { return getElement(this); }
23309
23506
  static get style() { return duetSlideoutLangCss; }
@@ -23393,12 +23590,12 @@ class DuetSlideoutLink {
23393
23590
  * Always the last one in the class.
23394
23591
  */
23395
23592
  render() {
23396
- return (hAsync(Host, { key: '6c745dee174c1ffc4cf84d17318335a486d10eaa' }, hAsync("a", { key: 'ff3da5f58e47a07fb10218f06afe852093581c03', target: !this.href ? null : this.external ? "_blank" : "_self", class: {
23593
+ return (hAsync(Host, { key: '8e06b49cf6c749adf92ccc160d8ad3da287ed5b1' }, hAsync("a", { key: 'b828c5cb14d1668459f533e7dd1455b96d749389', target: !this.href ? null : this.external ? "_blank" : "_self", class: {
23397
23594
  "duet-slideout-link": true,
23398
23595
  "duet-theme-turva": this.theme === "turva",
23399
23596
  active: this.active,
23400
23597
  [this.size]: true,
23401
- }, href: this.href, "aria-current": this.active ? "true" : "false", lang: this.targetLanguage, hreflang: this.targetLanguage, "aria-label": (this.href && getAccessibleLinkLabel(this)) || this.accessibleLabel, rel: this.external ? "noopener" : undefined }, this.icon && (hAsync("duet-icon", { key: '4deca6ab1bd4f8e7522f879e22c697605444f8ef', name: this.icon, color: "secondary", size: this.menuItem ? "x-small" : "medium", margin: "none" })), hAsync("div", { key: 'f425ac77231cfbf5bbd039464d358eb7f11b4b62', class: "label" }, hAsync("span", { key: 'fba4ac97eda7bf0e9acd0de41a1025aa931e8de6' }, hAsync("span", { key: '11d0a760f8375869cfc0c95d64a8d455ca68f1a1', class: "label-container" }, hAsync("span", { key: 'e19eebafc42ee0968353876b21eeb54b7161648e', class: "label-content" }, hAsync("slot", { key: '10f8d17611ad9c9edb321afdfa586440dbb53dc5' })), this.external && (hAsync("duet-icon", { key: '2f750a6c9e989428d0fde4aac0a48b211bbe54d7', class: "external-icon", theme: this.theme, name: newWindowIcon.title, margin: "none", size: "auto", color: "currentColor" }))), hAsync("slot", { key: 'f88e82037833cf752296dd8bd9c732746c15e180', name: "description" })), this.caret && (hAsync("duet-icon", { key: '2ac167320adb1702f6e80e71b9926463ebe6ea0c', name: "action-arrow-right", color: "secondary", size: "x-small", margin: "none" }))))));
23598
+ }, href: this.href, "aria-current": this.active ? "true" : "false", lang: this.targetLanguage, hreflang: this.targetLanguage, "aria-label": (this.href && getAccessibleLinkLabel(this)) || this.accessibleLabel, rel: this.external ? "noopener" : undefined }, this.icon && (hAsync("duet-icon", { key: '2b9425445f8002a2e4ba7e4e3505c8dd16f1037b', name: this.icon, color: "secondary", size: this.menuItem ? "x-small" : "medium", margin: "none" })), hAsync("div", { key: '299f3051479f68f1526bef4ac0b7829e6c1e599e', class: "label" }, hAsync("span", { key: '58e45ed7ec8752c8d123a0de448ef6aae50fe928' }, hAsync("span", { key: 'b7e99ab8c08332ee1fb816ca174333d45ddd856a', class: "label-container" }, hAsync("span", { key: '52592842baf1612fd196be0e46b6dbee46e27422', class: "label-content" }, hAsync("slot", { key: 'b0c2f5f85ddea248f188c1a33d6e4c50ec4232ba' })), this.external && (hAsync("duet-icon", { key: '7c65cd396055e355fd604e9ad7eab4b6314be31c', class: "external-icon", theme: this.theme, name: newWindowIcon.title, margin: "none", size: "auto", color: "currentColor" }))), hAsync("slot", { key: 'ca4a97fef08540a3ec086e27b4f952567e6c4428', name: "description" })), this.caret && (hAsync("duet-icon", { key: 'ed73e7886cfcf256368e4daa5b272d127ed192a3', name: "action-arrow-right", color: "secondary", size: "x-small", margin: "none" }))))));
23402
23599
  }
23403
23600
  get element() { return getElement(this); }
23404
23601
  static get style() { return duetSlideoutLinkCss; }
@@ -23580,23 +23777,23 @@ class DuetSlideoutPanel {
23580
23777
  };
23581
23778
  const exitTranslation = getLocaleString(this.exitLangObject);
23582
23779
  const backTranslation = getLocaleString(this.backLangObject);
23583
- return (hAsync(Host, { key: '61551430976ed139813afbbc005a9f4003bb0a94' }, hAsync("div", { key: '0d0d89eda55b21e53d5ec9f0cb35a2e1dfb18717', class: {
23780
+ return (hAsync(Host, { key: 'afd36490cf0c6d09eda7d8baff552e38dd096c4c' }, hAsync("div", { key: '986b2a87ea1c43e8f86e4d01dfad235b52ace8cc', class: {
23584
23781
  "duet-slideout-panel": true,
23585
23782
  "duet-theme-turva": this.theme === "turva",
23586
23783
  active: this.open,
23587
- } }, hAsync("button", { key: '0e7fe47bd0751b2cb6bd4cda7bff03f4cb991997', ref: element => (this.openButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
23784
+ } }, hAsync("button", { key: '3edf7d1d3e0366b5032fc132b01efa9daede6090', ref: element => (this.openButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
23588
23785
  link: true,
23589
23786
  active: this.active,
23590
- }, onClick: this.onClick, inert: this.open }, this.icon && (hAsync("div", { key: 'cf24b3d307866aff9e4aa27e6cce7b5e073a987b', class: "duet-slideout-icon" }, hAsync("duet-icon", { key: '01b28dff00808c5d5a5aed9ab6c35eabc0ef6d68', name: this.icon, size: "medium", margin: "none", color: "secondary" }), this.badge && hAsync("div", { key: '905f8009760a859481c6d33febdd8e74db64df6a', class: "duet-slideout-badge" }))), hAsync("span", { key: 'deda8d3fe7bd882c94a55a6123492e5941d96d75', class: "label" }, hAsync("span", { key: '561077ac5a10187d07a18692df2314eb94ddaac3', class: { "label-text": true, [this.labelSize]: true } }, hAsync("slot", { key: 'd597b6b5d3952bf03f8242567e50dcd33c289c08', name: "label" })), hAsync("duet-icon", { key: '9e7141fb1fea117840c3e45534cd8a5c43369371', class: "caret", name: "action-arrow-right", margin: "none", size: "x-small", color: "secondary" }))), hAsync("div", { key: 'a2c0486601583c685d0e464db5752823b168e0cb', ref: element => (this.dialog = element), class: {
23787
+ }, onClick: this.onClick, inert: this.open }, this.icon && (hAsync("div", { key: '5dd55d6242510d00b1eaeb6e77a92920a7681838', class: "duet-slideout-icon" }, hAsync("duet-icon", { key: 'd57f4a660cd4ddc96298f249191917bc39b89944', name: this.icon, size: "medium", margin: "none", color: "secondary" }), this.badge && hAsync("div", { key: '43df47250dfab5e896892e3e97ef14a43946c3fe', class: "duet-slideout-badge" }))), hAsync("span", { key: '1369627522c7594abe5d4ba5db3db4c13fd9d883', class: "label" }, hAsync("span", { key: 'e90b85f8745db02e8b6a1a7170493167db209bc1', class: { "label-text": true, [this.labelSize]: true } }, hAsync("slot", { key: '6a8526daee6d38ec252b1af3aa695f570ee9f42a', name: "label" })), hAsync("duet-icon", { key: '7e73cb75767071d370dc967920bb9158bce33db4', class: "caret", name: "action-arrow-right", margin: "none", size: "x-small", color: "secondary" }))), hAsync("div", { key: '84e1373565feee119c920fc65c48f59f89162eff', ref: element => (this.dialog = element), class: {
23591
23788
  dialog: true,
23592
23789
  hidden: !this.open,
23593
- }, style: styles }, hAsync(FocusGuard, { key: 'd51a504e26a48761aa48bb9f1103fb00cad97341', moveFocusTo: this.closeButton }), hAsync("div", { key: '93ccd2897a884bfecb4d166f7284960fd8fedb8a', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: 'a68809aa80badf43f9cfa1de23460842a4982b66', class: "top" }, hAsync("button", { key: 'ce263a30b67f58480141e401fe20d5bfb4cd2a55', ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-label": `${backTranslation}`, type: "button", class: {
23790
+ }, style: styles }, hAsync(FocusGuard, { key: '9226ff82f6efbbbad946ae3484000d213a6611da', moveFocusTo: this.closeButton }), hAsync("div", { key: 'fe9a1debab52a26239eb64bada4872541934d4cd', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { key: 'e27e127736dafcf1611b608a658a7b8331b41d21', class: "top" }, hAsync("button", { key: '24ea4eba589c4ad194bb8869e9ef030273c42485', ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-label": `${backTranslation}`, type: "button", class: {
23594
23791
  back: true,
23595
- }, onClick: this.onClick }, hAsync("duet-icon", { key: 'b972fb4888fef4489d77e46be76b3a1c94881d3b', class: "caret", name: "action-arrow-left", margin: "none", size: "small", color: "secondary" })), hAsync("span", { key: 'd3c663ded8d156b776970cbcb72effc6653eb49d' }, this.label.innerHTML), hAsync("button", { key: '3bbcb1c972af540d27e8280e211597a7117955f3', class: "close", type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, hAsync("duet-icon", { key: 'c9dffb03a8a312585c44c82d59f99fb7560e91b9', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '711d24f842b15729187af19d35e1f64d840d08ef', class: "sticky-header" }, hAsync("slot", { key: '0fdd182a420e3fa529fc3f732a5af2a77ee4d5ef', name: "sticky-header" }))), hAsync("div", { key: 'd3fbd36dc5816175032c3ecaf68fb4a55753a65a', tabindex: "-1", role: "menu",
23792
+ }, onClick: this.onClick }, hAsync("duet-icon", { key: '64350d00957fc92a6bbe8d118a6b2e19211aafc7', class: "caret", name: "action-arrow-left", margin: "none", size: "small", color: "secondary" })), hAsync("span", { key: '14a36e4811739ca58157a8471dca3093b41092d4' }, this.label.innerHTML), hAsync("button", { key: '65ab2fb0772eb15968c8c39947297b6fe5267be6', class: "close", type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, hAsync("duet-icon", { key: '35f57ddf92c662cd34471e252d92a5659bc9f156', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { key: '6a04831c4fd00957cadaed33b05b40916dd7df23', class: "sticky-header" }, hAsync("slot", { key: '11ac017b06d70caa56a96504d571e645f8688490', name: "sticky-header" }))), hAsync("div", { key: '81e41a2cbff93f37de79ad06547cf8851ba9d200', tabindex: "-1", role: "menu",
23596
23793
  //TODO: slideout menu fades out, needs to be instant
23597
23794
  id: "menu", "aria-labelledby": "button", class: {
23598
23795
  items: true,
23599
- } }, hAsync("slot", { key: '1e0a07cabf18cff207520a71272ac1243dbb7bc5' })), hAsync(FocusGuard, { key: '5f38ea7e8026467c1e0a811dea566c7cc094bfad', moveFocusTo: this.closeButton })))));
23796
+ } }, hAsync("slot", { key: 'b5078c149d14316098f0a24e61f66ad805d90447' })), hAsync(FocusGuard, { key: '552292100714317d2dee0c464fca748358cdd5e7', moveFocusTo: this.closeButton })))));
23600
23797
  }
23601
23798
  get element() { return getElement(this); }
23602
23799
  static get watchers() { return {
@@ -23677,16 +23874,16 @@ class DuetSlideoutPanelDropdown {
23677
23874
  * Always the last one in the class.
23678
23875
  */
23679
23876
  render() {
23680
- return (hAsync(Host, { key: 'e658b4c8c33e04cd052a13c51653502a7ccc3d3d' }, hAsync("div", { key: 'fc15746899049a9caa6274b59232fb1d9019669f', class: {
23877
+ return (hAsync(Host, { key: '70632cbca7f7f90d9ed33f75c8913bffb398b4e6' }, hAsync("div", { key: 'b69b29bf73e4706eebb0b7d0068250577f19808e', class: {
23681
23878
  "duet-slideout-panel-dropdown": true,
23682
23879
  "duet-theme-turva": this.theme === "turva",
23683
23880
  active: this.open,
23684
- } }, hAsync("button", { key: 'ccbb6057de55f68ccb31f97a80de87c8c4f9d376', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
23881
+ } }, hAsync("button", { key: 'bb15069b603473eb2f366449677e2f59f0547981', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
23685
23882
  active: this.active,
23686
- }, onClick: this.onClick }, this.icon && hAsync("duet-icon", { key: '8b646cec992ae5e5534f7980eca030a398f23281', name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("span", { key: '3c9c765e0d7d568b8a8bdcae22285113b3d42b09', class: "label" }, hAsync("slot", { key: 'b3405c1414d2d03df674b4e76a3afda6c37869a1', name: "label" }), hAsync("duet-icon", { key: 'b83e52c7ba95a808a2de0c6601871f2ce3b94547', class: "caret", name: "action-arrow-down-small", margin: "none", size: "xx-small", color: "secondary" }))), hAsync("div", { key: '82e80bd57086b570e6c5e9a77faac514aad4330d', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
23883
+ }, onClick: this.onClick }, this.icon && hAsync("duet-icon", { key: '5992324c1a87a2a0f5338f3fd82dee182747d686', name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("span", { key: '4d00fac6dfa37bac0d46c7dc0e6a973d5186f52b', class: "label" }, hAsync("slot", { key: 'acab9e5e487fe00ef21349332683feaf89ee5c56', name: "label" }), hAsync("duet-icon", { key: 'b46c4a55691e471aa548a212934540481319c469', class: "caret", name: "action-arrow-down-small", margin: "none", size: "xx-small", color: "secondary" }))), hAsync("div", { key: 'c5fe75f29aae07bc9b94f50cbef5e3af44a138af', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
23687
23884
  items: true,
23688
23885
  hidden: !this.open,
23689
- } }, hAsync("slot", { key: '60d8bc1ae8f3bfb07a7002cd78b21815374c5910' })))));
23886
+ } }, hAsync("slot", { key: 'f98bb0683206267f64f87a51093f067f3eeb53c2' })))));
23690
23887
  }
23691
23888
  get element() { return getElement(this); }
23692
23889
  static get style() { return duetSlideoutPanelDropdownCss; }
@@ -23730,7 +23927,7 @@ class DuetSpacer {
23730
23927
  * Always the last one in the class.
23731
23928
  */
23732
23929
  render() {
23733
- return (hAsync(Host, { key: '674e35f9f009457a29e8a3e44d0f5190f5f0367e', class: {
23930
+ return (hAsync(Host, { key: 'f2f4fa377c08b91ba94544d234bc8ab55c8b35b5', class: {
23734
23931
  "duet-spacer": true,
23735
23932
  "duet-spacer-xx-small": this.breakpoint === "xx-small",
23736
23933
  "duet-spacer-x-small": this.breakpoint === "x-small",
@@ -23793,11 +23990,11 @@ class DuetSpinner {
23793
23990
  */
23794
23991
  render() {
23795
23992
  const color = this.color === "currentColor" ? "currentColor" : getColorByName(this.color);
23796
- return (hAsync(Host, { key: '1e4de3df57809d0616aee4eba0932615753f160a', class: {
23993
+ return (hAsync(Host, { key: '8e4d0ddb4abd8fb9c68b9f3935ca75fb65f63cf3', class: {
23797
23994
  "duet-custom-color": this.color !== "currentColor" && this.theme !== "turva" && this.theme !== "default",
23798
23995
  "duet-theme-turva": this.theme === "turva" && this.color !== "currentColor",
23799
23996
  "duet-theme-default": this.theme === "default" && this.color !== "currentColor",
23800
- } }, hAsync("div", { key: 'b049994ffa0f8e2ef99f19d5730a9b7c961c7c23', class: {
23997
+ } }, hAsync("div", { key: '4940f908c0ecdb401c361b0ab7dc2720d5c6a1a1', class: {
23801
23998
  "duet-spinner": true,
23802
23999
  [this.size]: true,
23803
24000
  }, style: { color }, "aria-label": this.accessibleLabel })));
@@ -23902,10 +24099,10 @@ class DuetStatusIcon {
23902
24099
  }
23903
24100
  }
23904
24101
  render() {
23905
- return (hAsync(Host, { key: '32909f04556cc08ab2ed508dbdbe7ac377119d5a', class: {
24102
+ return (hAsync(Host, { key: 'cdcf064007e8c8e9a10f15a87a8d995da2b5fbc4', class: {
23906
24103
  [`duet-status-icon-${this.getVariation()}`]: true,
23907
24104
  "duet-strong-bg": this.strong,
23908
- } }, hAsync("duet-icon", { key: '1a058d91860d5d715a2eec8e69460509309faf37', icon: this.getIcon(), size: this.size, margin: this.margin })));
24105
+ } }, hAsync("duet-icon", { key: '9437981c1dc35ab71d67e9616100b8ec991f55af', icon: this.getIcon(), size: this.size, margin: this.margin })));
23909
24106
  }
23910
24107
  static get cmpMeta() { return {
23911
24108
  "$flags$": 265,
@@ -24026,13 +24223,13 @@ class DuetStep {
24026
24223
  * Always the last one in the class.
24027
24224
  */
24028
24225
  render() {
24029
- return (hAsync("div", { key: 'aabaaf3753284a1d7523a6fd9d7f067b27dddea6', class: {
24226
+ return (hAsync("div", { key: '3204237f7f65d0f7e40d171da59beae2438d0b73', class: {
24030
24227
  "duet-step": true,
24031
24228
  [`is-${this.state}`]: true,
24032
24229
  "rounded-top": this.roundedTop,
24033
24230
  "rounded-bottom": this.roundedBottom,
24034
24231
  "duet-theme-turva": this.theme === "turva",
24035
- } }, hAsync("div", { key: 'cb59231788afdc7a49bee7049c26bcdb4f1cefdd', class: "duet-step-heading", id: this.buttonId, role: this.state !== "current" ? "button" : "region", "aria-current": this.state === "current" ? "step" : undefined, tabindex: this.state !== "current" ? "0" : undefined, "aria-disabled": this.isClickDisabled().toString(), "aria-expanded": (this.state === "current").toString(), "aria-controls": this.contentId, "aria-selected": (this.state === "current").toString(), onClick: this.handleClick, onKeyDown: this.handleKeyDown, ref: element => (this.buttonElement = element) }, hAsync("div", { key: '3d942cb5fb3493fc0ca7767ab71889b728571bdd', "aria-hidden": "true" }, hAsync("div", { key: '143939ce81911bc480e6edaf7f0203cf8697115c', class: "duet-step-counter" }, this.renderStepCounter())), hAsync("duet-spacer", { key: '3b7f53b8257ce2d0a6a72ddf44f24262be50bb51', direction: "horizontal", size: "large", breakpoint: "small" }), hAsync("duet-spacer", { key: '2da8c1bbcbbc926d81daafc3dd68e1622588c8f2', direction: "horizontal", size: "medium", breakpoint: "x-small" }), hAsync("div", { key: 'fe5986a3319a111b3a990128c8d9aaf39bda546a' }, hAsync("duet-heading", { key: '200d0ae39df8b39fc952f3de234627bf5fb7eb2f', theme: this.theme, level: this.headingLevel, visualLevel: "h4", color: this.headingColor(), margin: "none" }, this.heading)), hAsync("duet-spacer", { key: 'cc775a86bddaf0b0a27b7a6412859733af2c0b3b', direction: "horizontal", size: "large" }), hAsync("div", { key: '6d97eb5590370f1a323f27852a21e815eb17dd1e', class: "duet-step-heading-slot" }, hAsync("slot", { key: '6b19e4da0e1101c54548b72e47df376a2224ac99', name: "heading-content" }))), hAsync("div", { key: '24ab81369e7c138d76d28ca432b45a4d1c61078c', class: "duet-step-content-wrapper" }, hAsync("div", { key: '18cc21aa85dca19bd79f846aeb4636d0d6a4ff97', class: "duet-step-content", role: "region", "aria-labelledby": this.buttonId, id: this.contentId }, hAsync("slot", { key: '9820d59f4feca0e319e4a2947538bf476bd8a35a' })))));
24232
+ } }, hAsync("div", { key: '144dc2c4f67e3ab88437ba11dbe665d8d938e998', class: "duet-step-heading", id: this.buttonId, role: this.state !== "current" ? "button" : "region", "aria-current": this.state === "current" ? "step" : undefined, tabindex: this.state !== "current" ? "0" : undefined, "aria-disabled": this.isClickDisabled().toString(), "aria-expanded": (this.state === "current").toString(), "aria-controls": this.contentId, "aria-selected": (this.state === "current").toString(), onClick: this.handleClick, onKeyDown: this.handleKeyDown, ref: element => (this.buttonElement = element) }, hAsync("div", { key: '3a16cbf1b403adb015eafda7d8768e17eae7fb40', "aria-hidden": "true" }, hAsync("div", { key: '8ee2d9f18fcef2d1cdb2ad43cf8a41c5615b4765', class: "duet-step-counter" }, this.renderStepCounter())), hAsync("duet-spacer", { key: '0dd226292f09ae93ba5ca9bde08511982771fe15', direction: "horizontal", size: "large", breakpoint: "small" }), hAsync("duet-spacer", { key: 'd2fea319dfc6db59b1aaba216a913c3a8e9e81e8', direction: "horizontal", size: "medium", breakpoint: "x-small" }), hAsync("div", { key: '7c3dee5bf9df62db35cbe5896551062c482d8b3e' }, hAsync("duet-heading", { key: '27d4325d36f4f0621af0bf633fe3de821822d4bc', theme: this.theme, level: this.headingLevel, visualLevel: "h4", color: this.headingColor(), margin: "none" }, this.heading)), hAsync("duet-spacer", { key: 'f0e367883df25339d1882ebe17ff56c3555d4cd1', direction: "horizontal", size: "large" }), hAsync("div", { key: 'f4313eed84ca3fe24272ce59a59b711169c4c0a8', class: "duet-step-heading-slot" }, hAsync("slot", { key: 'a06a67c70d672288b7ef3f76149561fe5200ed99', name: "heading-content" }))), hAsync("div", { key: '62b81bf1127a74bd5fb1cec4b0aa1e9c706d2038', class: "duet-step-content-wrapper" }, hAsync("div", { key: 'c46f37355b38f10b1dc182108cae7f444025246d', class: "duet-step-content", role: "region", "aria-labelledby": this.buttonId, id: this.contentId }, hAsync("slot", { key: 'f08a916f605a7227add9fdb0bd4f6ede0719ec02' })))));
24036
24233
  }
24037
24234
  get element() { return getElement(this); }
24038
24235
  static get style() { return duetStepCss; }
@@ -24179,7 +24376,7 @@ class DuetStepper {
24179
24376
  * Always the last one in the class.
24180
24377
  */
24181
24378
  render() {
24182
- return (hAsync(Host, { key: 'ec5ca5e9408a00384cf24330b299b6cc06bf5ede', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '2d0b2bf059b5adf1b073f17b5d0df0be16689660', class: { "duet-stepper": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("duet-visually-hidden", { key: 'ef57bc497a409d7e6f6591d987eb8f249c9f2e1f', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement()), hAsync("slot", { key: '1cfe6851e7b1d2c24e72e7eb21e6838d9cdd13c3' }))));
24379
+ return (hAsync(Host, { key: 'f135a9f1ddcc6eaa86acdcdc9d11def0ec489b81', class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'd68ff41042b6582c21d555e3131054278e9eaf1f', class: { "duet-stepper": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("duet-visually-hidden", { key: '21d8af2f8896f0e5f893f041a2f3010ada1e74c9', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement()), hAsync("slot", { key: 'efe281a3ddce9364e69c5131e7e59e3a9c2bb9d5' }))));
24183
24380
  }
24184
24381
  get element() { return getElement(this); }
24185
24382
  static get watchers() { return {
@@ -24333,19 +24530,19 @@ class DuetSubmenuBar {
24333
24530
  * Always the last one in the class.
24334
24531
  */
24335
24532
  render() {
24336
- return (hAsync(Host, { key: '5c18e6f61099dd56fe8881164f345f4e890c3ba8' }, hAsync("nav", { key: 'c9598dc340f590e7fe74c8bd337a3b4a44181b56', class: {
24533
+ return (hAsync(Host, { key: '98b1aef33dbecb72db770aad2e638895df757769' }, hAsync("nav", { key: '2da9e98166d85b6bf7b693ec74f2c7862da6e32f', class: {
24337
24534
  "duet-submenu-bar": true,
24338
24535
  "duet-theme-turva": this.theme === "turva",
24339
24536
  hidden: this.hidden,
24340
- }, "aria-label": this.accessibleLabel }, this.hasItems && (hAsync("button", { key: '817b519993919dd462e68eeb34118b7c5c2da178', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
24537
+ }, "aria-label": this.accessibleLabel }, this.hasItems && (hAsync("button", { key: '1a118edf09c9be310988c12d093c63d27949e5bf', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
24341
24538
  active: this.open,
24342
- }, onClick: this.onClick }, hAsync("span", { key: '0bebb8664ca385d92be22af8bc2c584296e83c9a', class: "label" }, hAsync("slot", { key: '54e66b0e7e63d0a64b31658ee4dd4f9b3a71893c', name: "label" }), hAsync("duet-icon", { key: '5b41cf474c8290316ab32e949f09f45efba7da20', theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), hAsync("div", { key: '3f771d607c6addebffb232f2b0c74e7cb352c838', class: {
24539
+ }, onClick: this.onClick }, hAsync("span", { key: '7b26b751bf105fe6c40320dc2eb68b8f729a1a8f', class: "label" }, hAsync("slot", { key: 'b2fae59665ec7f21d8b9d6cebce396cda942d6de', name: "label" }), hAsync("duet-icon", { key: 'dce5c1f7585eb179ebbc6cb604c8cae186282d61', theme: this.theme, class: "caret", name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" })))), hAsync("div", { key: '003ce0e07e1b88ea0353b13a24531ce65ddddfd7', class: {
24343
24540
  "menu-container": true,
24344
24541
  hidden: !this.open,
24345
- }, role: "presentation" }, hAsync("div", { key: 'd96ff9575dceec428343b75334eebd0337eaf398', role: this.mobile ? "menu" : null, id: "menu", "aria-labelledby": this.mobile ? "button" : null, "aria-expanded": this.mobile ? (this.open ? "true" : "false") : null, class: {
24542
+ }, role: "presentation" }, hAsync("div", { key: 'df40a36793d796f1a78304db83f2b650834b7dc4', role: this.mobile ? "menu" : null, id: "menu", "aria-labelledby": this.mobile ? "button" : null, "aria-expanded": this.mobile ? (this.open ? "true" : "false") : null, class: {
24346
24543
  items: true,
24347
24544
  hidden: !this.open,
24348
- }, ref: element => (this.itemsContainer = element) }, hAsync("div", { key: '7533b1798677bb3cdcd4f2cd61fc8de0ebe2d12e', class: "list", role: this.mobile ? "presentation" : "list" }, hAsync("slot", { key: 'fb8a67fe97664fca24c969ba2b059ecd6af0b24a' }), hAsync("div", { key: 'ed3c80f64fe1dcf338f6474b80a33493886da07d', class: "list-padding" }))), hAsync("duet-overlay", { key: '15d20bca846bdd41d391ef2a6ec24641c07987a0', "keep-stacking-context": true, visible: this.open, "display-device": "not-large", transition: "immediate" })))));
24545
+ }, ref: element => (this.itemsContainer = element) }, hAsync("div", { key: '2e63a7cbbc0221285dd94bb4a9abf18724dd51ce', class: "list", role: this.mobile ? "presentation" : "list" }, hAsync("slot", { key: '15914d5a16f162661e52be38210d64266c1a2175' }), hAsync("div", { key: '5b59a4d292c2631a45c9c16de265dfae6a12c5e9', class: "list-padding" }))), hAsync("duet-overlay", { key: 'ad96690e7d9db9801005ed9010293734263b9a61', "keep-stacking-context": true, visible: this.open, "display-device": "not-large", transition: "immediate" })))));
24349
24546
  }
24350
24547
  get element() { return getElement(this); }
24351
24548
  static get watchers() { return {
@@ -24477,18 +24674,18 @@ class DuetSubmenuBarDropdown {
24477
24674
  * Always the last one in the class.
24478
24675
  */
24479
24676
  render() {
24480
- return (hAsync(Host, { key: '652543259e31b7a19807a8d6810ba6d0f5236986', role: "listitem" }, hAsync("div", { key: '2538c90061f6e18614db48e259a6e824223aac6e', class: {
24677
+ return (hAsync(Host, { key: '576e12e55d09213173616d89f5b408c8492ba5af', role: "listitem" }, hAsync("div", { key: '08580206c21044dbb8d4545f8544e0ced9b6a14e', class: {
24481
24678
  "duet-submenu-bar-dropdown": true,
24482
24679
  "duet-theme-turva": this.theme === "turva",
24483
24680
  open: this.open,
24484
24681
  active: this.active,
24485
- } }, hAsync("button", { key: 'e957754f94c7eb471a717c8c1982ab75c9c2a7d0', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
24682
+ } }, hAsync("button", { key: 'be74c18d69e315c5db7d23665d4a9625fc0b04d0', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
24486
24683
  open: this.open,
24487
24684
  active: this.active,
24488
- }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '362425074c3914c6a79b216dc35f598e90fcd263', class: "submenu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: '4188c97491e17f9076d76f83b406b7fe328f6fa8', class: "label" }, hAsync("span", { key: 'fd1f65d1fc3a622683f91272012245743cc6bfc0', class: "label-text" }, hAsync("slot", { key: 'ef9bd1386e925dd1aad55f628ae14d430317f156', name: "label" })), hAsync("duet-icon", { key: 'e26be5b6923b4654e5a1b1dc69790f3afb5f1a77', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: 'e86eac292c5448b613016a10977f6f6499893b03', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
24685
+ }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '5bfc68090e446c4233ac00f348beaeefcd451709', class: "submenu-bar-dropdown-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: 'e8fb4a7b73f6344bf5752b4855454dd964d20580', class: "label" }, hAsync("span", { key: 'ff915210483dee69657e6b285a710ad9c5b1fef4', class: "label-text" }, hAsync("slot", { key: '580d71312446d97630ee169b4d00e527d1c3acb5', name: "label" })), hAsync("duet-icon", { key: 'a67edbe1c6a6a386db9738da55a07c13969bd9a6', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: 'f13cdbe5d132fdc0c9470e87ee2fe4e9bd4599dd', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
24489
24686
  items: true,
24490
24687
  hidden: !this.open,
24491
- } }, hAsync("slot", { key: 'b6fe3f2206cb9862de55a0c33f346bceeab6ddfe' })))));
24688
+ } }, hAsync("slot", { key: '4c3c1e530e6ae8d2893d7d57c3f89dc42ea4ca73' })))));
24492
24689
  }
24493
24690
  get element() { return getElement(this); }
24494
24691
  static get style() { return duetSubmenuBarDropdownCss; }
@@ -24557,12 +24754,12 @@ class DuetSubmenuBarDropdownLink {
24557
24754
  * Always the last one in the class.
24558
24755
  */
24559
24756
  render() {
24560
- return (hAsync(Host, { key: 'ef0f1811114384e71db5b17f57822a4b6e3f026e' }, hAsync("a", { key: 'a45f2b4a589fc38a6578cefd26d73c60eb0f47cd', class: {
24757
+ return (hAsync(Host, { key: '2fee28c0408aea99ea9eca4f11d4e2f841364790' }, hAsync("a", { key: '0d7695a6ab69f0137ecf0ceeafec3a46af81dd1f', class: {
24561
24758
  "duet-submenu-bar-dropdown-link": true,
24562
24759
  "duet-theme-turva": this.theme === "turva",
24563
24760
  highlight: this.highlight,
24564
24761
  active: this.active,
24565
- }, "aria-current": this.active ? "true" : "false", href: this.href, onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '7e2b78b528e601f5761d1a6b815e2453aef67857', name: this.icon, size: "x-small", margin: "none", color: "currentColor" }), hAsync("span", { key: '0d0963f46c02806088142c383d7a469b8928a560', class: "label-container" }, hAsync("span", { key: '8409d8d5e431cee3220ca54b358fc019a0604d2f', class: "label" }, hAsync("slot", { key: '034a99ca11cbb83e257cca2e0076d1478f591106' })), this.caret && hAsync("duet-icon", { key: '9ac5a6dafdf39b39a88fe3b35b99d8f0eaf43c09', name: "action-arrow-right-small", size: "xxx-small", margin: "none" })), this.active && (hAsync("duet-icon", { key: '0a7b0addbef96f1309db9077d549b5cd0b3c5d44', class: "active-check", name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
24762
+ }, "aria-current": this.active ? "true" : "false", href: this.href, onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '01df67e9b8670dc05128745c6882d2938ef9eedc', name: this.icon, size: "x-small", margin: "none", color: "currentColor" }), hAsync("span", { key: '6c841e3ff249215c127c9e94f08bae8d7a18a5b8', class: "label-container" }, hAsync("span", { key: '7a6170103bd0c33ec47d8c5bd315d0933674280d', class: "label" }, hAsync("slot", { key: '325eed72978c7f19c85163b6af1cce4df6cd9bbf' })), this.caret && hAsync("duet-icon", { key: '075731587db83d4e2857574fdec50f701f3b1e9e', name: "action-arrow-right-small", size: "xxx-small", margin: "none" })), this.active && (hAsync("duet-icon", { key: '8751218f86cec61805f4a74d1fd5449a7b936b6f', class: "active-check", name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
24566
24763
  }
24567
24764
  get element() { return getElement(this); }
24568
24765
  static get style() { return duetSubmenuBarDropdownLinkCss; }
@@ -24658,7 +24855,7 @@ class DuetSubmenuBarItem {
24658
24855
  render() {
24659
24856
  const TagName = this.url ? "a" : "button";
24660
24857
  const role = this.url ? "link" : "button";
24661
- return (hAsync(Host, { key: '9273b9b8d2b00abd034156bf4c70b9945db11c75', role: "listitem" }, hAsync(TagName, { key: '3e1d3f9ae8eafda68f106273f0c5e74842c60ab3', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: { "duet-submenu-bar-item": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.url, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, role: role, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '48ad0e603669bad5976e46609f729c92034445ab', class: "leading-icon", theme: this.theme, name: this.leadingIcon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: 'c4aed9f2f36f74a99199a48175323b986a259f1e', class: "label" }, hAsync("span", { key: 'f754166cd285c4a56c59d58c9166c81c70b3066c', class: "label-text" }, hAsync("slot", { key: '3f98eb2611e5c053c87aeb07db7ea9a97779269a' })), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: '7085fcef269d439470eeb19bd724a1acb2b3138e', class: {
24858
+ return (hAsync(Host, { key: 'e36b7b57f271197062c51666cbbbd1d57132b681', role: "listitem" }, hAsync(TagName, { key: 'b95b4f6fd21f111bb18c1bc866c9a6ec125a6144', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: { "duet-submenu-bar-item": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.url, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, role: role, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { key: '5a087cb5fcd29a41c424e025bad0040ef6e86900', class: "leading-icon", theme: this.theme, name: this.leadingIcon, size: "auto", margin: "none", color: "currentColor" })), hAsync("div", { key: 'a365ea511e78cdfa9b940934ba6f38fdda5937a8', class: "label" }, hAsync("span", { key: '527ee473a8da72431ae6afd60e35b21e5211c589', class: "label-text" }, hAsync("slot", { key: '51f297ccaf35795f59e7bcf616c22711f1e92f06' })), (this.trailingIcon || this.external) && (hAsync("duet-icon", { key: 'ab43acf3850c0148e50ac264530643a67ab1a276', class: {
24662
24859
  "trailing-icon": !!this.trailingIcon,
24663
24860
  "trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
24664
24861
  "external-icon": !!this.external,
@@ -24730,7 +24927,7 @@ class DuetSubmenuBarLink {
24730
24927
  * Always the last one in the class.
24731
24928
  */
24732
24929
  render() {
24733
- return (hAsync(Host, { key: '68474da6c67cb159cac22f5325a46b241fd55b94', role: "listitem" }, hAsync("a", { key: 'a324a7cf0112385dd2ef1c40de4746b8b4d4b926', class: { "duet-submenu-bar-link": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.href, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false" }, this.icon && (hAsync("duet-icon", { key: '14213b6bb176c42ddfc1c24838ab9148b1bf9f67', class: "submenu-bar-link-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("span", { key: 'a199aa0ad1aab49b4aa8c1568ab7da76169f26e4', class: "label" }, hAsync("slot", { key: 'b509d166b4756b8fdd52aad407d66990976d01cf' })))));
24930
+ return (hAsync(Host, { key: '3b758ccd9b6b2aed28589ddea46b8c6ac516d059', role: "listitem" }, hAsync("a", { key: '6a28b37917562bcad81693762e537734dfe39c4d', class: { "duet-submenu-bar-link": true, "duet-theme-turva": this.theme === "turva", active: this.active }, href: this.href, onKeyUp: e => this.handleEscape(e), "aria-current": this.active ? "true" : "false" }, this.icon && (hAsync("duet-icon", { key: '545a4c6be36be038fc79745186c7260e2509d8e5', class: "submenu-bar-link-icon", theme: this.theme, name: this.icon, size: "auto", margin: "none", color: "currentColor" })), hAsync("span", { key: '5274e116ccaa52e75981801000933956f074eb29', class: "label" }, hAsync("slot", { key: 'bcca6d327a8e7dfab90e9b6b4c625c0e024efcd2' })))));
24734
24931
  }
24735
24932
  get element() { return getElement(this); }
24736
24933
  static get style() { return duetSubmenuBarLinkCss; }
@@ -24853,7 +25050,7 @@ class DuetTab {
24853
25050
  * Always the last one in the class.
24854
25051
  */
24855
25052
  render() {
24856
- return (hAsync("div", { key: '31d1c06d4e3c898fe3cde14ceb7f4ea74db20a35', ref: element => {
25053
+ return (hAsync("div", { key: 'b4bd4852c9b69f58d223d3c9f4abe99b6657eb1e', ref: element => {
24857
25054
  if (!this.contentId) {
24858
25055
  this.tabpanelElement = element;
24859
25056
  }
@@ -24862,7 +25059,7 @@ class DuetTab {
24862
25059
  "duet-tab": true,
24863
25060
  selected: this.selected,
24864
25061
  "has-content-id": !!this.contentId,
24865
- }, "aria-description": this.accessibleDescription, "aria-labelledby": this.accessibleLabelledBy, tabindex: "-1" }, hAsync("slot", { key: 'ae00a38320b796e166452a6e73ada02bb32c3e48' })));
25062
+ }, "aria-description": this.accessibleDescription, "aria-labelledby": this.accessibleLabelledBy, tabindex: "-1" }, hAsync("slot", { key: '18c22a0a004cf4c7e38b88aaa2abbffcc2145baa' })));
24866
25063
  }
24867
25064
  get element() { return getElement(this); }
24868
25065
  static get watchers() { return {
@@ -25047,7 +25244,7 @@ class DuetTabGroup {
25047
25244
  });
25048
25245
  this.mutationO.observe(this.element, {
25049
25246
  attributes: true,
25050
- attributeFilter: ["label"],
25247
+ attributeFilter: ["label", "selected"],
25051
25248
  childList: true,
25052
25249
  characterData: true,
25053
25250
  subtree: true,
@@ -25126,24 +25323,27 @@ class DuetTabGroup {
25126
25323
  return description;
25127
25324
  }
25128
25325
  async updateTabs() {
25129
- this.selected = undefined;
25326
+ let selected;
25130
25327
  this.tabs = this.getTabs();
25131
25328
  this.tabs.forEach((tab, index) => {
25132
25329
  tab.id = this.getTabId(index);
25133
25330
  if (tab.selected) {
25134
- if (this.selected === undefined) {
25135
- this.selected = index;
25331
+ if (selected === undefined) {
25332
+ // keep first selected
25333
+ selected = index;
25136
25334
  }
25137
25335
  else {
25336
+ // unselect the rest
25138
25337
  tab.selected = false;
25139
25338
  }
25140
25339
  }
25141
25340
  });
25142
- if (this.selected === undefined) {
25143
- this.selected = 0;
25341
+ // select first tab if none were selected
25342
+ if (selected === undefined) {
25343
+ selected = 0;
25144
25344
  this.tabs[0].selected = true;
25145
25345
  }
25146
- return;
25346
+ this.selected = selected;
25147
25347
  }
25148
25348
  /**
25149
25349
  * To support text-align: center;
@@ -25168,13 +25368,13 @@ class DuetTabGroup {
25168
25368
  [`duet-notification-mark-${element.notificationMark}`]: !!element.notificationMark,
25169
25369
  [largeBreakpoint]: ["default", "plain", "plain-scrolling"].includes(this.variation) ? true : false,
25170
25370
  }, onClick: () => this.onTabSelect(index), onKeyDown: ev => this.handleKeyDown(ev) }, this.variation === "checked" ? (hAsync("div", { class: { "checked-tab-content": true, "stackable-checked-tab-content": this.tabs.length <= 3 } }, hAsync("div", { class: { "checked-tab-description": true, "stackable-description": this.tabs.length <= 3 } }, hAsync("p", null, element.label), hAsync("p", { class: { "tab-caption": true, selected: element.selected } }, element.caption)), hAsync("div", { class: { "stackable-checkmark": this.tabs.length <= 3 } }, hAsync("duet-checkmark", { theme: this.theme, checked: element.selected, type: "radio", "presentation-only": true, center: true })))) : (element.label))));
25171
- return (hAsync("div", { key: '09a66d5e7b686bdd15eb41d6eb8bcb7a5497f3da', class: {
25371
+ return (hAsync("div", { key: '826170daba42dde6a2c0cb9c9a4a61edebe73185', class: {
25172
25372
  "duet-tab-group": true,
25173
25373
  "duet-theme-turva": this.theme === "turva",
25174
25374
  [variationClass]: true,
25175
25375
  "duet-tab-plain-scrolling": this.variation === "plain-scrolling",
25176
25376
  "duet-tab-group-scrolls": true,
25177
- }, "aria-label": this.accessibleLabel }, hAsync("div", { key: '2ea69f0925c8df2c6aeff1038a3a47964a4e8493', role: "tablist", class: {
25377
+ }, "aria-label": this.accessibleLabel }, hAsync("div", { key: '4726322a99036852035af473957765866d515a41', role: "tablist", class: {
25178
25378
  "duet-m-0": this.margin === "none" || this.variation === "checked",
25179
25379
  "duet-tab-group-tabs": true,
25180
25380
  "duet-tab-group-hidden": this.tabs.length > 3 && !isSwipeScrollable,
@@ -25185,11 +25385,11 @@ class DuetTabGroup {
25185
25385
  } }, this.variation === "checked" ? (buttons) : (hAsync("div", { class: {
25186
25386
  "duet-tab-group-scrollable-wrapper": true,
25187
25387
  "duet-tab-group-fill-space-wrapper": this.fillSpace && this.variation === "default",
25188
- } }, this.fillSpace && !this.stretch && this.variation === "default" && (hAsync("div", { class: "duet-scrollable-stretch-overlay" }, hAsync("div", { class: "background" }), hAsync("div", { class: "border" }))), hAsync("duet-scrollable", { selected: this.selected, identifier: this.identifier, gap: ["default", "plain", "plain-scrolling"].includes(this.variation) ? "none" : "large", buttonPosition: this.variation === "default" ? "absolute" : "relative", center: this.isCentered() ? this.isCentered() : this.element.style.textAlign == "center", theme: this.theme, stretch: this.stretch }, buttons)))), hAsync("div", { key: '2f52fcd531e3672ee0ad508612b0b007ebfd9216', class: {
25388
+ } }, this.fillSpace && !this.stretch && this.variation === "default" && (hAsync("div", { class: "duet-scrollable-stretch-overlay" }, hAsync("div", { class: "background" }), hAsync("div", { class: "border" }))), hAsync("duet-scrollable", { selected: this.selected, identifier: this.identifier, gap: ["default", "plain", "plain-scrolling"].includes(this.variation) ? "none" : "large", buttonPosition: this.variation === "default" ? "absolute" : "relative", center: this.isCentered() ? this.isCentered() : this.element.style.textAlign == "center", theme: this.theme, stretch: this.stretch }, buttons)))), hAsync("div", { key: '76e60e6a65004b9c27f167a8defcab3a326789f2', class: {
25189
25389
  "duet-tab-group-content": true,
25190
25390
  "duet-m-0": this.margin === "none",
25191
25391
  "checked-group-content": this.variation === "checked",
25192
- } }, hAsync("slot", { key: '5ac5065579d505e2364613192cc0d88cf69b28bf' }))));
25392
+ } }, hAsync("slot", { key: '184ae2f3e46544c39f2fa28e72941af72e06fd4f' }))));
25193
25393
  }
25194
25394
  get element() { return getElement(this); }
25195
25395
  static get style() { return duetTabGroupCss; }
@@ -25882,7 +26082,7 @@ class DuetTable {
25882
26082
  }
25883
26083
  }
25884
26084
  render() {
25885
- return (hAsync(Host, { key: 'f09bf787a7f03e0a090150db43e6dc6161e20cea', class: {
26085
+ return (hAsync(Host, { key: '845e0bcc5bb460928ee219debef072b816e21662', class: {
25886
26086
  [`duet-table-${this.variation}`]: true,
25887
26087
  "duet-table-flattened": !this.matchesBreakpoint,
25888
26088
  // sticky only valid when in regular table layout
@@ -25891,7 +26091,7 @@ class DuetTable {
25891
26091
  "duet-m-0": this.margin === "none",
25892
26092
  "duet-theme-turva": this.theme === "turva",
25893
26093
  "duet-table-hide-head-visually": this.hideHeadVisually,
25894
- } }, hAsync("slot", { key: 'f451049eeedc4d2c51d6c974f4b6a221d96fb55c' })));
26094
+ } }, hAsync("slot", { key: 'f0baf26a61a35e0faf5363a8e7d24e3080af3180' })));
25895
26095
  }
25896
26096
  get element() { return getElement(this); }
25897
26097
  static get watchers() { return {
@@ -26145,17 +26345,17 @@ class DuetTextarea {
26145
26345
  */
26146
26346
  render() {
26147
26347
  const identifier = this.identifier || this.textareaId;
26148
- return (hAsync(Host, { key: '7300750a864cbadc91a4bf3a7ab7d04450780427', class: {
26348
+ return (hAsync(Host, { key: 'f5f89ec4deb6832fb80b077eca0401ceae4f8bf8', class: {
26149
26349
  "duet-m-0": this.margin === "none",
26150
26350
  "duet-has-counter": this.counter && !this.error,
26151
26351
  "duet-expand": this.expand,
26152
- } }, hAsync("div", { key: '11152c72abbdf7761bdf1eff48b05ea47e5cf0b1', class: {
26352
+ } }, hAsync("div", { key: '36131b2417d7eed326112df08c9736814bc90b8d', class: {
26153
26353
  "duet-textarea-container": true,
26154
26354
  "duet-theme-turva": this.theme === "turva",
26155
26355
  "duet-label-hidden": this.labelHidden,
26156
26356
  "duet-input-top-caption-shown": this.isCaptionVisible,
26157
26357
  "has-error": !!this.error,
26158
- } }, hAsync(DuetInternalLabel, { key: '341a0f4d4ec5c5bf84c514f6bdc38f4ccc9548dd', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: 'b08b7af4e807526f403a40c8887cd15a5edd8cab', direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), hAsync("slot", { key: '1ab0eb95abcf55eb154449d113a5c70c27f6ebf3', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: 'a69d491c8ee0f43b5689df13cb0a1412f77edabd', id: this.topCaptionId, size: "medium", theme: this.theme === "turva" ? "turva" : "default" }, this.caption)), hAsync("div", { key: '4f1bd9dbca5d69b508179470d1bd5562c661e0d8', class: "duet-textarea-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: 'bf68cac7d9974c793345a1654f376ec81c6193a3', id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)), hAsync("textarea", { key: '17eb3015fbc945d255d76a109220758424ee2d71', onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })), hAsync("duet-grid", { key: 'e4126ef678a63d32dc279d72428e3491c51242c8', alignment: "stretch" }, hAsync("duet-grid-item", { key: '7ce0d99ade2805d01726100eeb2516586ffd4726', margin: "none", fill: true }, hAsync("div", { key: 'a5048cbc807d2077f3841dee73f68da64482aa05', class: "duet-textarea-help duet-textarea-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '539f796779b6d2d9458373c7b0f3fa2f8c32d917' }, this.error))), hAsync("duet-grid-item", { key: '5ee0d0aa71cc0f800b72bb27f2a42c8173124b13', margin: "none", class: "duet-character-count-caption" }, this.counter && (hAsync(CharacterCount, { key: 'ae74a603668cff212ecbed513f7d158060cb38e9', theme: this.theme, value: this.value, maxlength: this.maxlength, label: this.counterLabel })))), this.counter && (hAsync("duet-visually-hidden", { key: '44c5437f6487f02e856ecd6d0483fdab0650b9a4', class: "duet-visually-hidden", id: this.characterCountId, ref: el => {
26358
+ } }, hAsync(DuetInternalLabel, { key: '0120ce299715ef884c1cc2f1e42373e5bcb0e7a7', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { key: '1b729cb1128299e33c70671aa55d5125ffcdc18a', direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), hAsync("slot", { key: '9072f184bc0244ec5fb2a2fe6719696028bb7d0b', name: "tooltip" }), this.caption && (hAsync("duet-caption", { key: '848706df1a73ce054a2b06f7c6e5510a21ff4a11', id: this.topCaptionId, size: "medium", theme: this.theme === "turva" ? "turva" : "default" }, this.caption)), hAsync("div", { key: '11ede29273d13f5ecb0ce24264096f387ec78c84', class: "duet-textarea-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { key: '07ac46dc00428b32d11b7d5e3e5a1b3c4f2aad05', id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)), hAsync("textarea", { key: '936fdccf8c2ad06a96579c790f044db2f5d9b17d', onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })), hAsync("duet-grid", { key: '5b42e4e2f4f76d45c40aa36caec99eaaa242586a', alignment: "stretch" }, hAsync("duet-grid-item", { key: '59fd223682e940aeefdf807a2cdfd724a503b8e5', margin: "none", fill: true }, hAsync("div", { key: '01d99f1d11d978925155a9d4856920780df240bf', class: "duet-textarea-help duet-textarea-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && hAsync("span", { key: '5da5cc08fb85900d797232142167ce3be0f1cbb0' }, this.error))), hAsync("duet-grid-item", { key: '5124866d99a9a381afcb045edf709ae6df2f342b', margin: "none", class: "duet-character-count-caption" }, this.counter && (hAsync(CharacterCount, { key: 'eed9f6583984587452c6f0825dcfa801295f4c74', theme: this.theme, value: this.value, maxlength: this.maxlength, label: this.counterLabel })))), this.counter && (hAsync("duet-visually-hidden", { key: '3dd2f6aee58742d3ad84b9f213ee26a1d17c04ba', class: "duet-visually-hidden", id: this.characterCountId, ref: el => {
26159
26359
  this.hiddenCounterLabel = el;
26160
26360
  } })))));
26161
26361
  }
@@ -26311,12 +26511,12 @@ class DuetToggle {
26311
26511
  */
26312
26512
  render() {
26313
26513
  const identifier = this.identifier || this.toggleId;
26314
- return (hAsync(Host, { key: '2093a760b60b31d12293248e71400f35f8d61d41', onClick: this.disabled ? undefined : this.onClick, class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: '9df498b9eaa9afc656efbe057170c8ff9a5fbc8c', class: {
26514
+ return (hAsync(Host, { key: '1dd080e2157b99e6fa5b08148203be1318d2b842', onClick: this.disabled ? undefined : this.onClick, class: { "duet-m-0": this.margin === "none" } }, hAsync("div", { key: 'c75404887077682a10ab2c936730230b67fbfd60', class: {
26315
26515
  "duet-toggle": true,
26316
26516
  "duet-theme-turva": this.theme === "turva",
26317
26517
  "duet-side-label": this.labelPosition !== "top",
26318
26518
  "duet-reverse-label": this.labelPosition === "right",
26319
- } }, hAsync(DuetInternalLabel, { key: '2de3e1957b169bd62655f09a896e1dc97ae320e6', theme: this.theme, color: this.labelColor, weight: this.labelWeight, for: identifier, margin: this.labelPosition === "top" ? "auto" : "none" }, this.label), hAsync("label", { key: '2bccb4e68b9b16233b058a3164846f68f30e89aa', class: "duet-switch" }, hAsync("input", { key: 'e50e0c876b32fc0e1295808715df252c9380cf27', type: "checkbox", value: this.value, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, id: identifier, role: this.role, name: this.name, checked: this.checked, required: this.required, disabled: this.disabled, ref: input => (this.nativeInput = input) }), hAsync("div", { key: '1effe3927aab889725ea51afaf2312e30262fc88', class: "duet-slider" })))));
26519
+ } }, hAsync(DuetInternalLabel, { key: '729c25fde1456d487e6f469fb8fb9fb1f45a5bb9', theme: this.theme, color: this.labelColor, weight: this.labelWeight, for: identifier, margin: this.labelPosition === "top" ? "auto" : "none" }, this.label), hAsync("label", { key: '7a551eb3640c2ff849c18fa6d257cb8787e056e1', class: "duet-switch" }, hAsync("input", { key: '30c8f85f4938c0ee3b258d02446ce24c03664897', type: "checkbox", value: this.value, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, id: identifier, role: this.role, name: this.name, checked: this.checked, required: this.required, disabled: this.disabled, ref: input => (this.nativeInput = input) }), hAsync("div", { key: 'fe4a68e81538ba476056ee0aa98c50b7fbccbe98', class: "duet-slider" })))));
26320
26520
  }
26321
26521
  get element() { return getElement(this); }
26322
26522
  static get watchers() { return {
@@ -26391,11 +26591,11 @@ class DuetToolbar {
26391
26591
  : this.variation === "secondary"
26392
26592
  ? "secondary"
26393
26593
  : "default";
26394
- return (hAsync(Host, { key: '08d97da22707379b6749ccac39cb2af709ba2358' }, hAsync("nav", { key: '2d65a3079fbad651cd8583b52d601bf24771dfcb', class: {
26594
+ return (hAsync(Host, { key: '05fd002169efa5a30698c5bcabc292ee2baa6377' }, hAsync("nav", { key: '35cf1fcaa7ebd3fd4eb4c61f80afb95be4111ce1', class: {
26395
26595
  "duet-toolbar": true,
26396
26596
  "duet-theme-turva": this.theme === "turva",
26397
26597
  [variation]: true,
26398
- }, "aria-label": this.accessibleLabel }, hAsync("div", { key: 'd6aa1f9190f6111b7468eaabbb6499f6d306a02d', class: "container" }, hAsync("div", { key: '9679d394d88960f13f1957df24cf2af2c57f0932', class: "list", role: "list" }, hAsync("slot", { key: '83d46b0c5eea3316b75ab78aec0f53e624e91a77', name: "left" })), hAsync("div", { key: '4c53db4a75a81e9c8ee8a5aa76585cb9ea113a60', class: "list", role: "list" }, hAsync("slot", { key: '5e00f1e0fdee3cd2dbc60806a769424690e31081', name: "right" }))))));
26598
+ }, "aria-label": this.accessibleLabel }, hAsync("div", { key: '3e0a970290f9762ac54ab968bf2fe8e446da4403', class: "container" }, hAsync("div", { key: 'b7145d3c5f00d42208349b2dc6782b88e00d9ec5', class: "list", role: "list" }, hAsync("slot", { key: 'a230928fe78000b31a25459171a45cba1dbdadea', name: "left" })), hAsync("div", { key: '8ed6891a00fb0afe984540e03b5d15a2836ebfef', class: "list", role: "list" }, hAsync("slot", { key: '32d442b55918d5cc5b83c6dd0499433aace9c916', name: "right" }))))));
26399
26599
  }
26400
26600
  get element() { return getElement(this); }
26401
26601
  static get style() { return duetToolbarCss; }
@@ -26476,18 +26676,18 @@ class DuetToolbarDropdown {
26476
26676
  itemsAlign = this.element.parentElement.getAttribute("slot") === "left" ? "right" : "left";
26477
26677
  }
26478
26678
  const variation = this.variation === "negative" ? "negative" : "white";
26479
- return (hAsync(Host, { key: '39c1289c2c1a080a501b139a4862a36d6ee04dfc', role: "listitem" }, hAsync("div", { key: '20445cfed0e28ada2172a9d89ca1b6ac98d26f30', class: {
26679
+ return (hAsync(Host, { key: 'ad32c005cc4dfece39976408ec731ad96297e4db', role: "listitem" }, hAsync("div", { key: 'b791f09d2801543fc704d595a30e139a7ff93dbb', class: {
26480
26680
  "duet-toolbar-dropdown": true,
26481
26681
  "duet-theme-turva": this.theme === "turva",
26482
26682
  [itemsAlign]: true,
26483
26683
  [variation]: true,
26484
- } }, hAsync("button", { key: '7c490c965c678dadc7cdb92a6333b1ad4cf9c942', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel, id: "button", type: "button", class: {
26684
+ } }, hAsync("button", { key: 'c77108abfcb29f2fb804ddde58c00f0a4b59838c', ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel, id: "button", type: "button", class: {
26485
26685
  active: this.active,
26486
26686
  open: this.open,
26487
- }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '83b913caee9f4cba1586a9125743fc22fb1d66cc', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("span", { key: 'd0e9c90771ac841afb4943b8560eeb9467ff6a14', class: "label" }, hAsync("slot", { key: '851da1fe3173b1c7500cf7f3b3c0abf2265f2a06', name: "label" }), hAsync("duet-icon", { key: 'a364c0cd06daa71aa34ad1752c42f030240237fb', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: '1122bfaa127a37c495c231f1419214d356939103', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
26687
+ }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { key: '4636794b744877564dfdb08ff12bd10ec0d86ff1', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("span", { key: '8c92356b5a4bbfbc26eb3b061e2324c5a9828d34', class: "label" }, hAsync("slot", { key: 'edc193a859a685dafdb910a5cd10c54f3161e3fe', name: "label" }), hAsync("duet-icon", { key: 'd9e79f77afa7c940153f98fe723ee8b4478a5bd5', class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { key: '87f9a96e7c40f3c20063ebe7b1c5bb82789eef9b', tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
26488
26688
  items: true,
26489
26689
  hidden: !this.open,
26490
- } }, hAsync("slot", { key: '668e154b19b4e44b45c2dfc2dd70a7cd386eb8b2' })))));
26690
+ } }, hAsync("slot", { key: 'e9c7f62984e135b28c8b43c0d3aea88f77eb5d29' })))));
26491
26691
  }
26492
26692
  get element() { return getElement(this); }
26493
26693
  static get style() { return duetToolbarDropdownCss; }
@@ -26553,11 +26753,11 @@ class DuetToolbarDropdownLink {
26553
26753
  * Always the last one in the class.
26554
26754
  */
26555
26755
  render() {
26556
- return (hAsync(Host, { key: 'b6b0276c18bb21d1bfe0c88258010d143d559c21' }, hAsync("a", { key: 'ad6461c3419c4cd8b16b64ba906848ca050cea51', class: {
26756
+ return (hAsync(Host, { key: 'd0137e5350105ae59b5e03faaf4f7d8e7776f632' }, hAsync("a", { key: 'b10ffca862b2d9166b7811e812f3d41d1fc567c6', class: {
26557
26757
  "duet-toolbar-dropdown-link": true,
26558
26758
  "duet-theme-turva": this.theme === "turva",
26559
26759
  active: this.active,
26560
- }, href: this.href, lang: this.targetLanguage, hreflang: this.targetLanguage, role: "link menuitem", "aria-label": this.accessibleLabel, "aria-current": this.active ? "true" : "false", onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: '95e0be9746f101bb646c60514e3a1f1f3190c38f', name: this.icon, size: "x-small", margin: "none" }), hAsync("span", { key: 'e4699dc773d36708ec9ad24fcf2441031cc2b7fd', class: "label" }, hAsync("slot", { key: '67d87e78838d2c1f07b2d2d850132ab1e2e9daff' })), this.active && (hAsync("duet-icon", { key: '78af16cb5da1eac3c17072277c1c42c3f3d78ce9', name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
26760
+ }, href: this.href, lang: this.targetLanguage, hreflang: this.targetLanguage, role: "link menuitem", "aria-label": this.accessibleLabel, "aria-current": this.active ? "true" : "false", onKeyUp: e => this.handleEscape(e) }, this.icon && hAsync("duet-icon", { key: 'c858922116de7e062ec8af31796174818ad1e4b1', name: this.icon, size: "x-small", margin: "none" }), hAsync("span", { key: '78da92d5c6814abff7a08866b6d146571d060656', class: "label" }, hAsync("slot", { key: 'ec452b4938fae6ee2b0b5fab9de4fe87b650366a' })), this.active && (hAsync("duet-icon", { key: 'a28714381b97051e25df09fe6179b430acd51779', name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor" })))));
26561
26761
  }
26562
26762
  get element() { return getElement(this); }
26563
26763
  static get style() { return duetToolbarDropdownLinkCss; }
@@ -26660,17 +26860,17 @@ class DuetToolbarItem {
26660
26860
  : this.variation === "secondary"
26661
26861
  ? "secondary"
26662
26862
  : "default";
26663
- return (hAsync(Host, { key: '64c6d59d858d9a367de1e9d2888609dc99af0bed', role: "listitem" }, hAsync(TagName, { key: '6a4ba040913ea2730aa20a4391f6d5cdd0b02121', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
26863
+ return (hAsync(Host, { key: '6e4eb217aa669a64d985c1890b1cb1f9e5cbfab1', role: "listitem" }, hAsync(TagName, { key: '50fa9a7295a14f093cbd6141ac54abf11b41d392', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
26664
26864
  "duet-toolbar-item": true,
26665
26865
  "duet-theme-turva": this.theme === "turva",
26666
26866
  active: this.active,
26667
26867
  [variation]: true,
26668
- }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("div", { key: 'adf46745db5ff738dc6fc84e2c2d6012a31e1a75', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: '2ff8285855845e9fd2c83679326418d794924738', size: "x-small", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" }), this.badge && hAsync("div", { key: '7416e778240ef89b8084d45b4d980c352ca2307a', class: "duet-toolbar-badge" }))), hAsync("slot", { key: '81ad250808b48b9959bed95b755c6586a383e394' }), (this.trailingIcon || (this.url && this.external)) && (hAsync("div", { key: '00d8495878984b986cff410786834b6053679017', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: '2998a4370ade9d5a8e47e6b9cd5fc0b7bc791362', class: {
26868
+ }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("div", { key: '3628348a1512edf58911b056b8568342a366ac30', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: '42f263d6a3e6afb0a9138f29f26b19031074a3d4', size: "x-small", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" }), this.badge && hAsync("div", { key: 'b6dade4311e7350ba175e3643dff8b2f59ed52e3', class: "duet-toolbar-badge" }))), hAsync("slot", { key: 'cb85f2d32dd19b24af351cdd9f79ce4fd3fdcd15' }), (this.trailingIcon || (this.url && this.external)) && (hAsync("div", { key: '32f6a2b9bd0da55bb075209fd435080e3f75b74e', class: "duet-toolbar-icon" }, hAsync("duet-icon", { key: '93618bcdd91c8405b3359514bd24ad9dc82d13d0', class: {
26669
26869
  "trailing-icon": !!this.trailingIcon,
26670
26870
  "trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
26671
26871
  "external-icon": !!(this.url && this.external),
26672
26872
  rotate: this.trailingIcon === "action-arrow-down-small" && this.accessibleExpanded,
26673
- }, theme: this.theme, name: this.trailingIcon ? this.trailingIcon : this.url && this.external ? newWindowIcon.title : "", margin: "none", size: "auto", color: "currentColor" }), this.badge && this.trailingIcon !== "action-arrow-down-small" && hAsync("div", { key: 'b11a71d59e3829f02ce84d82a038fe299958dac9', class: "duet-toolbar-badge" }))))));
26873
+ }, theme: this.theme, name: this.trailingIcon ? this.trailingIcon : this.url && this.external ? newWindowIcon.title : "", margin: "none", size: "auto", color: "currentColor" }), this.badge && this.trailingIcon !== "action-arrow-down-small" && hAsync("div", { key: '5d380d254863d03f5e7df7e07c0bafebfcdf3ff8', class: "duet-toolbar-badge" }))))));
26674
26874
  }
26675
26875
  get element() { return getElement(this); }
26676
26876
  static get style() { return duetToolbarItemCss; }
@@ -26737,12 +26937,12 @@ class DuetToolbarLink {
26737
26937
  */
26738
26938
  render() {
26739
26939
  const variation = this.variation === "negative" ? "negative" : "white";
26740
- return (hAsync(Host, { key: '527a9f5ac48f5c2fcb31f39fe44ddaaea0a03307', role: "listitem" }, hAsync("a", { key: '07c174dedae6a03e865c17297004f630eddc4b83', class: {
26940
+ return (hAsync(Host, { key: '1eabc147aca4fae095ac6d30a02d7945b85d0360', role: "listitem" }, hAsync("a", { key: 'e470e9bab29f2bf9b4d966289dd8aff81faa4313', class: {
26741
26941
  "duet-toolbar-link": true,
26742
26942
  "duet-theme-turva": this.theme === "turva",
26743
26943
  active: this.active,
26744
26944
  [variation]: true,
26745
- }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: '44290c9a074a5f3a3937e77679988a1e1c79b8bd', size: "x-small", name: this.icon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: '130d6d433324b5a8977c8858c6876785cd759335' }))));
26945
+ }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (hAsync("duet-icon", { key: 'd2847c5bb7219a8910b5389a61e14f72496b3983', size: "x-small", name: this.icon, margin: "none", theme: this.theme, color: "currentColor" })), hAsync("slot", { key: '4d3b7ea36e57824bd934cd1a2bfb7acf6085c522' }))));
26746
26946
  }
26747
26947
  get element() { return getElement(this); }
26748
26948
  static get style() { return duetToolbarLinkCss; }
@@ -27064,13 +27264,13 @@ class DuetTooltipButton {
27064
27264
  * Always the last one in the class.
27065
27265
  */
27066
27266
  render() {
27067
- const visuallyHidden = hAsync("duet-visually-hidden", { key: 'ca106bddf825b34794a4501e0524c08a5f51c004' }, this.accessibleLabel);
27068
- return (hAsync(Host, { key: 'e51d106da5da08f757140ee8d8bb553cb8068ad0' }, hAsync("button", { key: '39d6d544869f4f16266da85c945bb6b16352c4cc', ref: el => (this.buttonElement = el), "aria-controls": this.tooltipId, "aria-expanded": this.active ? "true" : "false", type: "button", class: {
27267
+ const visuallyHidden = hAsync("duet-visually-hidden", { key: 'd7f9bd7543527fcc24c5a87734b06e433bc4f911' }, this.accessibleLabel);
27268
+ return (hAsync(Host, { key: '7435172c19c5e7415c325ce0f8f1b1318862b284' }, hAsync("button", { key: '99a53c5a669b62ee63d5c00d41d7811b9525af69', ref: el => (this.buttonElement = el), "aria-controls": this.tooltipId, "aria-expanded": this.active ? "true" : "false", type: "button", class: {
27069
27269
  "duet-tooltip-button": true,
27070
27270
  "duet-tooltip-button-has-label": !!this.label,
27071
27271
  "duet-theme-turva": this.theme === "turva",
27072
27272
  "duet-tooltip-button-negative": this.negative,
27073
- } }, hAsync("svg", { key: '171062cb01a49fca11be5c779a976626ea252ab7', "aria-hidden": "true", role: "img", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '06fcd87af8e4748f282822df669153ed480ca76e', d: "m13.5 17.25c-1.241 0-2.25-1.009-2.25-2.25v-3.75h-.75c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h.75c.827 0 1.5.673 1.5 1.5v3.75c0 .414.336.75.75.75h.75c.414 0 .75.336.75.75s-.336.75-.75.75z" }), hAsync("circle", { key: '7c876aad503ad68f5745ee28a785de62c08f21fa', cx: "11.625", cy: "7.125", r: "1.125" }), hAsync("path", { key: 'e63ba148a4082e179dc32a232cff6529f2afa5e6', d: "m12 24c-6.617 0-12-5.383-12-12s5.383-12 12-12 12 5.383 12 12-5.383 12-12 12zm0-22.5c-5.79 0-10.5 4.71-10.5 10.5s4.71 10.5 10.5 10.5 10.5-4.71 10.5-10.5-4.71-10.5-10.5-10.5z" })), this.label ? (hAsync("span", { class: "duet-tooltip-label" }, this.label, visuallyHidden)) : (visuallyHidden))));
27273
+ } }, hAsync("svg", { key: '3d843e440d7cfc958e4944d1a49211a8e7d48c5f', "aria-hidden": "true", role: "img", fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, hAsync("path", { key: '64cf65349c9b83b6daaebc44f443c460861f28d2', d: "m13.5 17.25c-1.241 0-2.25-1.009-2.25-2.25v-3.75h-.75c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h.75c.827 0 1.5.673 1.5 1.5v3.75c0 .414.336.75.75.75h.75c.414 0 .75.336.75.75s-.336.75-.75.75z" }), hAsync("circle", { key: 'd07181ecde0771c63f172097403b65eb419ce832', cx: "11.625", cy: "7.125", r: "1.125" }), hAsync("path", { key: 'bec8531db6c080a8b1ff6a301479aa0c7f49f328', d: "m12 24c-6.617 0-12-5.383-12-12s5.383-12 12-12 12 5.383 12 12-5.383 12-12 12zm0-22.5c-5.79 0-10.5 4.71-10.5 10.5s4.71 10.5 10.5 10.5 10.5-4.71 10.5-10.5-4.71-10.5-10.5-10.5z" })), this.label ? (hAsync("span", { class: "duet-tooltip-label" }, this.label, visuallyHidden)) : (visuallyHidden))));
27074
27274
  }
27075
27275
  get element() { return getElement(this); }
27076
27276
  static get style() { return duetTooltipButtonCss; }
@@ -27135,11 +27335,11 @@ class DuetTooltipPopup {
27135
27335
  this.contentEl.focus();
27136
27336
  }
27137
27337
  render() {
27138
- return (hAsync(Host, { key: '2899e860feadd6d31e257dd8f67a765b2dd103de' }, hAsync("div", { key: 'e2ad1d1db943c91b633c40cb76fd1a8c62afc4f7', class: {
27338
+ return (hAsync(Host, { key: '45c3a95797c3e9c7550a82e6fd60d10132ae8f62' }, hAsync("div", { key: '380cb318509eb85adfef3ce71c6bf6644f0b7b6b', class: {
27139
27339
  "duet-tooltip": true,
27140
27340
  "duet-theme-turva": this.theme === "turva",
27141
27341
  "duet-tooltip-active": this.active === true,
27142
- } }, hAsync(FocusGuard, { key: 'a638d291e9a3347c63e8717fe923b10c33b0844e', moveFocusTo: this.buttonEl }), hAsync("div", { key: '0eaab033773324479dd1e39842022beb57ea0722', ref: element => (this.contentEl = element), class: "duet-tooltip-content-area", tabindex: -1, id: this.tooltipId }, hAsync("slot", { key: '89344c3b60eb73c65a766e9d997b46b86f25a33e' })), hAsync("div", { key: '6b1ffe4455528169bafe06cbdca8da2594b4ee23', ref: element => (this.arrowEl = element), class: { arrow: true, [this.placement]: true }, style: this.arrowStyles }, hAsync("div", { key: '526889c3662f088271636b8c9fd2406b3df73e32', class: { "arrow-container": true, [this.placement]: true } })), hAsync("button", { key: '2541026316c4d6e1c8cc01c9ed7b6c14cec5a46f', type: "button", class: "duet-tooltip-close", onClick: this.handleCloseClick, ref: el => (this.buttonEl = el) }, hAsync("duet-icon", { key: 'cd144f2f0f78be9a84b101349aa429a28b2d2593', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xxx-small" }), hAsync("duet-visually-hidden", { key: 'd391959976c40cfd26bf2e2f1dca6ced9851c921' }, this.accessibleCloseLabel)), hAsync(FocusGuard, { key: 'ebbbb2f752d245c4953851e422b641add964e99b', moveFocusTo: this.contentEl }))));
27342
+ } }, hAsync(FocusGuard, { key: '857a45f310c93184cd82740af4f0f5bf82242f9a', moveFocusTo: this.buttonEl }), hAsync("div", { key: 'bd80a3ab570d36bda9ddfea47e17e64bf917977a', ref: element => (this.contentEl = element), class: "duet-tooltip-content-area", tabindex: -1, id: this.tooltipId }, hAsync("slot", { key: 'd8757e126145a0c3672a6cc381ff508c0059ea95' })), hAsync("div", { key: 'f4c5c6a434c572b8e01eb20aa07899c81063cb76', ref: element => (this.arrowEl = element), class: { arrow: true, [this.placement]: true }, style: this.arrowStyles }, hAsync("div", { key: '2333884d098cbb81583a44504587cf96d6093d30', class: { "arrow-container": true, [this.placement]: true } })), hAsync("button", { key: '1963817cd01361ba77ee107ac936654ae125f8c0', type: "button", class: "duet-tooltip-close", onClick: this.handleCloseClick, ref: el => (this.buttonEl = el) }, hAsync("duet-icon", { key: 'ad35ab147f093a0f4397e284b6d4ee85acace0cb', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xxx-small" }), hAsync("duet-visually-hidden", { key: '2eadca556e9fe940e0dff808ec02107ebf182c8a' }, this.accessibleCloseLabel)), hAsync(FocusGuard, { key: 'afad7dc8804fa5f300a93f9a9497658928adff7b', moveFocusTo: this.contentEl }))));
27143
27343
  }
27144
27344
  get element() { return getElement(this); }
27145
27345
  static get style() { return duetTooltipPopupCss; }
@@ -27288,14 +27488,14 @@ class DuetTray {
27288
27488
  * Always the last one in the class.
27289
27489
  */
27290
27490
  render() {
27291
- return (hAsync("div", { key: 'd5ec6c18ad014ddd13019b9c8fcb8ca226c68e42', class: {
27491
+ return (hAsync("div", { key: '4c0914013c1c96e92cdd301499abddf24663af65', class: {
27292
27492
  "duet-tray": true,
27293
27493
  "duet-tray-is-active": this.active,
27294
27494
  "duet-tray-is-hidden": this.hiddenState,
27295
27495
  "duet-tray-is-responsive": this.responsive,
27296
27496
  "duet-theme-turva": this.theme === "turva",
27297
27497
  "duet-tray-is-expandable": this.hasAdditionalContent,
27298
- } }, hAsync("div", { key: 'ce175640e511a0c3f296d1639fef3952c88781de', class: "duet-tray-default-content", role: "status" }, hAsync("slot", { key: 'c0277022e4e85149018516b0d44126cb2af05abc' })), this.hasAdditionalContent && (hAsync(Fragment, { key: 'e631d00e9a9e0853c0787cf28bf849533440ee31' }, hAsync("button", { key: '2790af455c1435ca517c34eda7ba5d12268c3951', "aria-expanded": this.expanded ? "true" : "false", "aria-controls": this.expandableId, onClick: ev => this.toggleExpandable(ev), class: { "duet-tray-button": true, "duet-tray-is-expanded": this.expanded } }, hAsync("duet-icon", { key: 'deb414a7f3307046ec454317e8912aaaf98201f2', name: "action-arrow-down", size: "small", color: "currentColor", margin: "none" }), hAsync("duet-visually-hidden", { key: 'dd64f532c66429931fd8b7316acb93e55eb10d2c' }, this.expanded ? this.accessibleCloseLabel : this.accessibleOpenLabel)), hAsync("div", { key: '8c4251fdb0f0ff12f9eb09018988f864efdbc57d', id: this.expandableId, class: { "duet-tray-expandable": true, active: this.expanded } }, hAsync("div", { key: '247c210c97a547d944d6816f32a180102bbc33cd', class: "duet-tray-expandable-content" }, hAsync("slot", { key: '74ca2eed38f55e91384710d6ebc2e4f536b23b3c', name: "additional" })))))));
27498
+ } }, hAsync("div", { key: 'bd62b82c81cfd1064965c504962df3e1d9cec32a', class: "duet-tray-default-content", role: "status" }, hAsync("slot", { key: 'c16cd026132f96e58dcfc44b4047183b2c86b518' })), this.hasAdditionalContent && (hAsync(Fragment, { key: '41e73f4d582af1f87dbcf8178a6139c09df9748f' }, hAsync("button", { key: 'e5529d076bb9bd90a22c6b4fafb8bc42a0b14e3b', "aria-expanded": this.expanded ? "true" : "false", "aria-controls": this.expandableId, onClick: ev => this.toggleExpandable(ev), class: { "duet-tray-button": true, "duet-tray-is-expanded": this.expanded } }, hAsync("duet-icon", { key: 'e58b775cc578dae594f24126e4fb9340e61bf352', name: "action-arrow-down", size: "small", color: "currentColor", margin: "none" }), hAsync("duet-visually-hidden", { key: '10826f7f2711529595cfb0a0a2ae7f027e880e07' }, this.expanded ? this.accessibleCloseLabel : this.accessibleOpenLabel)), hAsync("div", { key: '3c71df7f296686978f3d69d5eb2d06c1492d4e22', id: this.expandableId, class: { "duet-tray-expandable": true, active: this.expanded } }, hAsync("div", { key: '37d4c6199048e02a80d8a84f1d9ea49c921427b6', class: "duet-tray-expandable-content" }, hAsync("slot", { key: 'ff619c71df2d9f7f49a18d82ba0c1aeb0fc24e49', name: "additional" })))))));
27299
27499
  }
27300
27500
  get element() { return getElement(this); }
27301
27501
  static get style() { return duetTrayCss; }
@@ -28610,10 +28810,10 @@ class DuetUpload {
28610
28810
  this.externalUploadButton.accessibleLabel = `${this.externalUploadButton.innerText}. ${caption}`;
28611
28811
  }
28612
28812
  // @ts-ignore
28613
- return (hAsync(Host, { key: '084a0fc2bdde1a2941f8c744c78d87f20b491681', class: { "duet-m-0": this.margin === "none" } }, hAsync("duet-fieldset", { key: 'ba680ad033e9d3bbba97a6326831706cd0ec00e1', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, hAsync("slot", { key: '4b4e6594c6e5d19db6547b0e91080af0b8c1ef7a', name: "header" }), !this.files.size && (hAsync("duet-empty-state", { key: 'ac8cf5b831c07604bc78432dad2b402e0ba54399', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, hAsync("duet-paragraph", { key: '8ae08f17cf6280d6e91e4fe3912768a36f4fb702', margin: "none" }, this.fileListEmpty))), !!this.files.size && hAsync("slot", { key: '269c0959dbe07e7400f06c40272029108a311ee6', name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { key: '5ad7161fa88215b73cea4edf6f8c4a66eda241bd', invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && this.renderUploadedItems(), !!this.files.size && hAsync("slot", { key: '9bcae363685725a71813fbf84439ba87041cb064', name: "filefooter" }), hAsync("slot", { key: '85a1662f1a503993f785c445dc96e473aa088664', name: "uploadfooter" }), this.captionOnBottom && (hAsync("duet-caption", { key: '192dc7c2ec57694930ad33a367d28926eb952dda', margin: "none", size: "small" }, hAsync("div", { key: 'e5b95619ec2b80356a52cb8b68a85df64b1a905e', class: "upload-bottom-caption" }, caption))), hAsync("slot", { key: 'd2abfe6f0e1589b89929dc3e3198099b22d0bd43', name: "afterfooter" }), !this.hideButton && (hAsync(Fragment, { key: 'd86816588b150cd6d581b4046ec7252c94088236' }, hAsync("duet-spacer", { key: 'b785196b527a28f0bc907b9457589615ae09cd64', size: "large" }), hAsync("duet-button", { key: '05289972d06138915a81648060702dc37d41d4e2', id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel || `${this.buttonLabel}. ${caption}`, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel))), (this.fileMaxReached ||
28813
+ return (hAsync(Host, { key: '778bd75c9be94d65bb9722e49f919ebe96d0232d', class: { "duet-m-0": this.margin === "none" } }, hAsync("duet-fieldset", { key: '86cb01a83aaa8b07b30a0dea14df211cba69f3ab', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, hAsync("slot", { key: '4bde3430f3d36cb1220fc12bbb801eafe70c4e91', name: "header" }), !this.files.size && (hAsync("duet-empty-state", { key: '3427abd455392d8063bd85a3396a831efc5f099e', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, hAsync("duet-paragraph", { key: '5c46fc6e79ad3427d705d237cbb7cbc271179c3f', margin: "none" }, this.fileListEmpty))), !!this.files.size && hAsync("slot", { key: 'bd7345b68ba7339c2163a07055bcd0195be06974', name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { key: '3d4316e1a725d9c76b077d6f7af8f7e555070aa3', invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && this.renderUploadedItems(), !!this.files.size && hAsync("slot", { key: '37e2422249ea697845dc47e1e793feef29927186', name: "filefooter" }), hAsync("slot", { key: '0056e0dd3847319978358fee188d82398c06c9a1', name: "uploadfooter" }), this.captionOnBottom && (hAsync("duet-caption", { key: '962a0485219f6a4a0d983d362860aa9caaecdd9c', margin: "none", size: "small" }, hAsync("div", { key: 'c0e53f5f8e508406eb2b79bc3aca2e6d9c91ac42', class: "upload-bottom-caption" }, caption))), hAsync("slot", { key: '7476632f57f0516caff8967a08d7c011c4859c21', name: "afterfooter" }), !this.hideButton && (hAsync(Fragment, { key: '3f7e814dd7256beee8db3e8393b837be7da1f8a8' }, hAsync("duet-spacer", { key: '8ef3e7422cfa406c721cdc843ad2625c64dd4f7b', size: "large" }), hAsync("duet-button", { key: 'b3af8fa02fea6339f92b3e5fe46b4259392357fa', id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel || `${this.buttonLabel}. ${caption}`, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel))), (this.fileMaxReached ||
28614
28814
  this.bytesMaxReached ||
28615
28815
  this.filesToUploadExceedsLimit ||
28616
- this.filesToUploadTotalSizeIsAboveMax) && (hAsync(Fragment, { key: '856d59a346ff18608610f391196b0c9b451262f4' }, hAsync("duet-spacer", { key: '6cc9e2be4be1c50a7d15f00524d206a77ee47657', size: "medium" }), hAsync("duet-alert", { key: 'ca56a2bc49443a4d330ef5d6c2ebee9f5166b54d', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && getI18nError("duet-upload-203", this.errorCodes)))), hAsync("duet-visually-hidden", { key: '1e24539b6ac3ff88d3d36bf0503c2dba768f1559', "aria-hidden": "true" }, hAsync("input", { key: '455bea761a5c5d990b22fe1e87081f5b5fbd66f2', ref: input => {
28816
+ this.filesToUploadTotalSizeIsAboveMax) && (hAsync(Fragment, { key: '51436c684d7830dac19f0cfac75b85b85945aaa9' }, hAsync("duet-spacer", { key: '5d32c83854ace51e13433bd001d936d61ffd2a3c', size: "medium" }), hAsync("duet-alert", { key: '97960577cf5e708740f6b68d6a7e242b696e7378', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && getI18nError("duet-upload-203", this.errorCodes)))), hAsync("duet-visually-hidden", { key: 'd1063962b250be5515cf9e98738b0b2ddb437d80', "aria-hidden": "true" }, hAsync("input", { key: 'b7e46fbc27706de8c6159467c471c81834663b65', ref: input => {
28617
28817
  this.nativeInput = input;
28618
28818
  }, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
28619
28819
  "duet-upload": true,
@@ -28955,7 +29155,7 @@ class DuetUploadAriaStatus {
28955
29155
  * Always the last one in the class.
28956
29156
  */
28957
29157
  render() {
28958
- return (hAsync(Host, { key: 'fa31b3d79feba2c657b461cf62d5391b09d59c3c', role: "status", "aria-live": "assertive", "aria-atomic": "true", "aria-relevant": "all" }, hAsync("duet-visually-hidden", { key: 'b2198ea8a27870a5a2fa351a7588774ff9d287b1' }, this.statusMessage)));
29158
+ return (hAsync(Host, { key: '1517704341df38ba10e11dd0b2094e6bb9eb6649', role: "status", "aria-live": "assertive", "aria-atomic": "true", "aria-relevant": "all" }, hAsync("duet-visually-hidden", { key: 'b760da550813b4c8ce4a3214aa86707c1cdcf133' }, this.statusMessage)));
28959
29159
  }
28960
29160
  get element() { return getElement(this); }
28961
29161
  static get watchers() { return {
@@ -29135,9 +29335,9 @@ class DuetUploadItem {
29135
29335
  const { uid, meta, item } = this.data;
29136
29336
  const Badges = meta && meta.badges ? (hAsync("span", null, meta.badges.map(badgeText => (hAsync("duet-badge", { color: "primary" }, badgeText))))) : undefined;
29137
29337
  const actionDescription = `${meta && meta.badges ? meta.badges.join(",") : ""} ${item.name}`;
29138
- return (hAsync("div", { key: '0f541bd5eab133034ce730ccd2393e4a32fa0f04', class: {
29338
+ return (hAsync("div", { key: 'd5e5d2db3667a4f6011411a27fef2f9b45108f8e', class: {
29139
29339
  "upload-item-row": true,
29140
- } }, this.showCategory && (hAsync("div", { key: '1453c4a57897f79ff16c394e364a49bec0564c01', class: "item-categories" }, hAsync("duet-heading", { key: '70abc60205d0a1762ab1bb0e280dffa8e6cc6771', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.categoryLabel)), Badges)), hAsync("div", { key: '4fbfc73b03cea70267c423440d34ab1a356fb14a', class: { "item-name": true, "no-category": !this.showCategory } }, !!this.label && (hAsync("duet-heading", { key: '76e07f77e629200029052bbb394a40602f7b8ce0', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.label))), this.getFileNameLine()), hAsync("div", { key: '97be35ab3df99a8ad62fb85e605fc39f378c8e0c', class: "item-actions" }, this.actions.map(actionItem => {
29340
+ } }, this.showCategory && (hAsync("div", { key: '1ab11fe55d884a902497e0e3af8126f4b007af5f', class: "item-categories" }, hAsync("duet-heading", { key: 'f035ab2fdb44c04d6e2d8747caee034db92325bc', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.categoryLabel)), Badges)), hAsync("div", { key: 'e9eebcc83bcaac3a8eeb8fd441f6663cd43be213', class: { "item-name": true, "no-category": !this.showCategory } }, !!this.label && (hAsync("duet-heading", { key: '4e18a21c1e78c6af26e4728635930b83de247593', class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.label))), this.getFileNameLine()), hAsync("div", { key: '3b1ee538c1f5e43ff3cd35f99bcb2a565e5e68e2', class: "item-actions" }, this.actions.map(actionItem => {
29141
29341
  return (hAsync("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle: this.getActionButtonTitle(actionItem), ref: button => (this.actionButton = button) }));
29142
29342
  }))));
29143
29343
  }
@@ -29177,7 +29377,7 @@ class DuetVisuallyHidden {
29177
29377
  * Always the last one in the class.
29178
29378
  */
29179
29379
  render() {
29180
- return (hAsync(Host, { key: 'effee6c13cd71f7c0015171b5a0fe6cd92ca9368', class: "duet-visually-hidden" }, hAsync("slot", { key: 'f1f5ed8ac886b181b184ef4bc796524ac03386ad' })));
29380
+ return (hAsync(Host, { key: 'e47f8bed18de6dae30530e82af44fe043d18a5f3', class: "duet-visually-hidden" }, hAsync("slot", { key: '1cb1034114f5c5f5626ede98f1cacfc68a200250' })));
29181
29381
  }
29182
29382
  get element() { return getElement(this); }
29183
29383
  static get style() { return duetVisuallyHiddenCss; }
@@ -29245,6 +29445,7 @@ registerComponents([
29245
29445
  DuetOverlay,
29246
29446
  DuetPageHeading,
29247
29447
  DuetPagination,
29448
+ DuetPanel,
29248
29449
  DuetParagraph,
29249
29450
  DuetPhoneInput,
29250
29451
  DuetPopupMenu,