@duetds/components 9.1.1 → 9.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (725) hide show
  1. package/hydrate/index.js +291 -194
  2. package/lib/cjs/{app-globals-bbbc26ee.js → app-globals-8b08f415.js} +1 -1
  3. package/lib/cjs/duet-action-button.cjs.entry.js +2 -2
  4. package/lib/cjs/duet-alert.cjs.entry.js +3 -3
  5. package/lib/cjs/duet-badge.cjs.entry.js +3 -3
  6. package/lib/cjs/duet-banner.cjs.entry.js +2 -2
  7. package/lib/cjs/duet-breadcrumb.cjs.entry.js +6 -6
  8. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +4 -4
  9. package/lib/cjs/duet-button_2.cjs.entry.js +4 -4
  10. package/lib/cjs/duet-callout.cjs.entry.js +4 -4
  11. package/lib/cjs/duet-caption_4.cjs.entry.js +6 -6
  12. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-checkmark.cjs.entry.js +3 -3
  15. package/lib/cjs/{duet-chip.cjs.entry.js → duet-chip_3.cjs.entry.js} +327 -1
  16. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  17. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  18. package/lib/cjs/duet-combobox.cjs.entry.js +42 -32
  19. package/lib/cjs/duet-contact-card.cjs.entry.js +4 -4
  20. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-date-picker.cjs.entry.js +38 -6
  22. package/lib/cjs/duet-divider_2.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-editable-table_3.cjs.entry.js +7 -7
  24. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-fieldset.cjs.entry.js +5 -5
  26. package/lib/cjs/duet-file-chooser.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-footer.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  30. package/lib/cjs/duet-hero.cjs.entry.js +3 -3
  31. package/lib/cjs/duet-icon.cjs.entry.js +4 -4
  32. package/lib/cjs/duet-input_2.cjs.entry.js +3 -3
  33. package/lib/cjs/duet-layout.cjs.entry.js +7 -10
  34. package/lib/cjs/duet-list_2.cjs.entry.js +4 -4
  35. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +3 -3
  36. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +3 -3
  37. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +5 -5
  38. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +3 -3
  39. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +3 -3
  40. package/lib/cjs/duet-menu-bar.cjs.entry.js +5 -5
  41. package/lib/cjs/duet-modal.cjs.entry.js +10 -10
  42. package/lib/cjs/duet-multiselect.cjs.entry.js +8 -8
  43. package/lib/cjs/duet-nav.cjs.entry.js +2 -2
  44. package/lib/cjs/duet-notification_2.cjs.entry.js +6 -6
  45. package/lib/cjs/duet-number-input.cjs.entry.js +3 -3
  46. package/lib/cjs/duet-overlay.cjs.entry.js +2 -2
  47. package/lib/cjs/duet-page-heading.cjs.entry.js +3 -3
  48. package/lib/cjs/duet-pagination_2.cjs.entry.js +15 -15
  49. package/lib/cjs/duet-progress.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-promo-card.cjs.entry.js +4 -4
  51. package/lib/cjs/duet-radio_2.cjs.entry.js +2 -2
  52. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  53. package/lib/cjs/duet-scrollable_3.cjs.entry.js +13 -13
  54. package/lib/cjs/duet-section-layout.cjs.entry.js +5 -6
  55. package/lib/cjs/duet-select.cjs.entry.js +2 -2
  56. package/lib/cjs/duet-shaped-image.cjs.entry.js +3 -3
  57. package/lib/cjs/duet-show-more.cjs.entry.js +4 -4
  58. package/lib/cjs/duet-slideout-lang.cjs.entry.js +3 -3
  59. package/lib/cjs/duet-slideout-link.cjs.entry.js +3 -3
  60. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +5 -5
  61. package/lib/cjs/duet-slideout-panel.cjs.entry.js +10 -10
  62. package/lib/cjs/duet-slideout.cjs.entry.js +8 -8
  63. package/lib/cjs/duet-step_2.cjs.entry.js +2 -2
  64. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +3 -3
  65. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +5 -5
  66. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +2 -2
  67. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  68. package/lib/cjs/duet-submenu-bar.cjs.entry.js +6 -6
  69. package/lib/cjs/duet-textarea.cjs.entry.js +7 -7
  70. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  71. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +3 -3
  72. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +5 -5
  73. package/lib/cjs/duet-toolbar-item.cjs.entry.js +11 -5
  74. package/lib/cjs/duet-toolbar-link.cjs.entry.js +3 -3
  75. package/lib/cjs/duet-toolbar.cjs.entry.js +11 -5
  76. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +6 -6
  77. package/lib/cjs/duet-tooltip.cjs.entry.js +2 -2
  78. package/lib/cjs/duet-tray.cjs.entry.js +4 -4
  79. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
  80. package/lib/cjs/duet-upload-item.cjs.entry.js +5 -5
  81. package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
  82. package/lib/cjs/duet.cjs.js +3 -3
  83. package/lib/cjs/{errorcodes.utils-6fe27aab.js → errorcodes.utils-79df4fcd.js} +1 -1
  84. package/lib/cjs/{focus-utils-b8926034.js → focus-utils-87585a09.js} +1 -1
  85. package/lib/cjs/{index-0c9fd2f8.js → index-290ab697.js} +1 -1
  86. package/lib/cjs/{language-utils-8f7743a1.js → language-utils-3372de6f.js} +1 -1
  87. package/lib/cjs/loader.cjs.js +3 -3
  88. package/lib/cjs/{slot-utils-85cd307f.js → slot-utils-8015a7e6.js} +1 -1
  89. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  90. package/lib/collection/components/duet-alert/duet-alert.js +1 -1
  91. package/lib/collection/components/duet-badge/duet-badge.js +2 -2
  92. package/lib/collection/components/duet-banner/duet-banner.js +1 -1
  93. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -4
  94. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -2
  95. package/lib/collection/components/duet-button/duet-button.js +5 -5
  96. package/lib/collection/components/duet-callout/duet-callout.js +2 -2
  97. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  98. package/lib/collection/components/duet-card/duet-card.js +3 -3
  99. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  100. package/lib/collection/components/duet-chip/duet-chip.js +6 -6
  101. package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
  102. package/lib/collection/components/duet-choice/duet-choice.js +3 -3
  103. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  104. package/lib/collection/components/duet-combobox/duet-combobox-select.js +4 -8
  105. package/lib/collection/components/duet-combobox/duet-combobox.css +2 -79
  106. package/lib/collection/components/duet-combobox/duet-combobox.js +38 -20
  107. package/lib/collection/components/duet-contact-card/duet-contact-card.js +2 -2
  108. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  109. package/lib/collection/components/duet-date-picker/duet-date-picker.js +40 -7
  110. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  111. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  112. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  113. package/lib/collection/components/duet-fieldset/duet-fieldset.js +3 -3
  114. package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +1 -1
  115. package/lib/collection/components/duet-footer/duet-footer.js +7 -7
  116. package/lib/collection/components/duet-grid/duet-grid.js +3 -3
  117. package/lib/collection/components/duet-header/duet-header.js +15 -15
  118. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  119. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  120. package/lib/collection/components/duet-icon/duet-icon.js +3 -3
  121. package/lib/collection/components/duet-input/duet-input.js +8 -8
  122. package/lib/collection/components/duet-label/duet-label.js +2 -2
  123. package/lib/collection/components/duet-layout/duet-layout.css +24 -20
  124. package/lib/collection/components/duet-layout/duet-layout.js +5 -8
  125. package/lib/collection/components/duet-link/duet-link.js +2 -2
  126. package/lib/collection/components/duet-list/duet-list.js +4 -4
  127. package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
  128. package/lib/collection/components/duet-logo/duet-logo.js +2 -2
  129. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +2 -0
  130. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +3 -3
  131. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +2 -2
  132. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +4 -4
  133. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -2
  134. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +2 -2
  135. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -2
  136. package/lib/collection/components/duet-modal/duet-modal.js +10 -10
  137. package/lib/collection/components/duet-multiselect/duet-multiselect.js +11 -11
  138. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  139. package/lib/collection/components/duet-notification/duet-notification.js +2 -2
  140. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +3 -3
  141. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  142. package/lib/collection/components/duet-overlay/duet-overlay.js +2 -2
  143. package/lib/collection/components/duet-page-heading/duet-page-heading.js +2 -2
  144. package/lib/collection/components/duet-pagination/duet-pagination.js +13 -13
  145. package/lib/collection/components/duet-paragraph/duet-paragraph.js +5 -5
  146. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +45 -11
  147. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.css +8 -0
  148. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +28 -5
  149. package/lib/collection/components/duet-promo-card/duet-promo-card.js +2 -2
  150. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  151. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  152. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +3 -3
  153. package/lib/collection/components/duet-scrollable/duet-scrollable.js +5 -5
  154. package/lib/collection/components/duet-section-layout/duet-section-layout.css +24 -16
  155. package/lib/collection/components/duet-section-layout/duet-section-layout.js +3 -4
  156. package/lib/collection/components/duet-select/duet-select.js +5 -5
  157. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +2 -2
  158. package/lib/collection/components/duet-show-more/duet-show-more.js +3 -3
  159. package/lib/collection/components/duet-slideout/duet-slideout.js +5 -5
  160. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +1 -1
  161. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -2
  162. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +6 -6
  163. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +4 -4
  164. package/lib/collection/components/duet-spacer/duet-spacer.js +3 -3
  165. package/lib/collection/components/duet-spinner/duet-spinner.js +3 -3
  166. package/lib/collection/components/duet-step/duet-step.js +2 -2
  167. package/lib/collection/components/duet-stepper/duet-stepper.js +2 -2
  168. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +5 -5
  169. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +4 -4
  170. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -2
  171. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +1 -1
  172. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +1 -1
  173. package/lib/collection/components/duet-tab-group/duet-tab-group.js +10 -10
  174. package/lib/collection/components/duet-table/duet-table.js +2 -2
  175. package/lib/collection/components/duet-textarea/duet-textarea.js +9 -12
  176. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  177. package/lib/collection/components/duet-toolbar/duet-toolbar.css +10 -4
  178. package/lib/collection/components/duet-toolbar/duet-toolbar.js +12 -6
  179. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +4 -4
  180. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -2
  181. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.css +28 -12
  182. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +12 -6
  183. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -2
  184. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +2 -2
  185. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +2 -2
  186. package/lib/collection/components/duet-tooltip/duet-tooltip.js +1 -1
  187. package/lib/collection/components/duet-tray/duet-tray.js +2 -2
  188. package/lib/collection/components/duet-upload/duet-upload.js +16 -16
  189. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +1 -1
  190. package/lib/collection/components/duet-upload-item/duet-upload-item.js +4 -4
  191. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
  192. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  193. package/lib/dist-custom-elements/duet-alert.js +1 -1
  194. package/lib/dist-custom-elements/duet-badge.js +1 -1
  195. package/lib/dist-custom-elements/duet-banner.js +3 -3
  196. package/lib/dist-custom-elements/duet-breadcrumb.js +7 -7
  197. package/lib/dist-custom-elements/duet-breadcrumbs.js +3 -3
  198. package/lib/dist-custom-elements/duet-button.js +1 -1
  199. package/lib/dist-custom-elements/duet-callout.js +4 -4
  200. package/lib/dist-custom-elements/duet-caption.js +1 -1
  201. package/lib/dist-custom-elements/duet-card.js +3 -3
  202. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  203. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  204. package/lib/dist-custom-elements/duet-chip.js +1 -1
  205. package/lib/dist-custom-elements/duet-choice-group.js +8 -8
  206. package/lib/dist-custom-elements/duet-choice.js +4 -4
  207. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  208. package/lib/dist-custom-elements/duet-combobox.js +78 -50
  209. package/lib/dist-custom-elements/duet-contact-card.js +10 -10
  210. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  211. package/lib/dist-custom-elements/duet-date-picker.js +49 -16
  212. package/lib/dist-custom-elements/duet-divider.js +1 -1
  213. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  214. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  215. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  216. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  217. package/lib/dist-custom-elements/duet-footer.js +7 -7
  218. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  219. package/lib/dist-custom-elements/duet-grid.js +1 -1
  220. package/lib/dist-custom-elements/duet-header.js +8 -8
  221. package/lib/dist-custom-elements/duet-heading.js +1 -1
  222. package/lib/dist-custom-elements/duet-hero.js +9 -9
  223. package/lib/dist-custom-elements/duet-icon.js +1 -1
  224. package/lib/dist-custom-elements/duet-input.js +1 -1
  225. package/lib/dist-custom-elements/duet-label.js +1 -1
  226. package/lib/dist-custom-elements/duet-layout.js +6 -9
  227. package/lib/dist-custom-elements/duet-link.js +1 -1
  228. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  229. package/lib/dist-custom-elements/duet-list.js +1 -1
  230. package/lib/dist-custom-elements/duet-logo.js +1 -1
  231. package/lib/dist-custom-elements/duet-menu-bar-button.js +4 -4
  232. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +4 -4
  233. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +6 -6
  234. package/lib/dist-custom-elements/duet-menu-bar-item.js +4 -4
  235. package/lib/dist-custom-elements/duet-menu-bar-link.js +4 -4
  236. package/lib/dist-custom-elements/duet-menu-bar.js +5 -5
  237. package/lib/dist-custom-elements/duet-modal.js +14 -14
  238. package/lib/dist-custom-elements/duet-multiselect.js +14 -14
  239. package/lib/dist-custom-elements/duet-nav.js +2 -2
  240. package/lib/dist-custom-elements/duet-notification-drawer.js +6 -6
  241. package/lib/dist-custom-elements/duet-notification.js +4 -4
  242. package/lib/dist-custom-elements/duet-number-input.js +11 -11
  243. package/lib/dist-custom-elements/duet-overlay.js +1 -1
  244. package/lib/dist-custom-elements/duet-page-heading.js +4 -4
  245. package/lib/dist-custom-elements/duet-pagination.js +24 -24
  246. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  247. package/lib/dist-custom-elements/duet-popup-menu-item.js +1 -111
  248. package/lib/dist-custom-elements/duet-popup-menu.js +1 -277
  249. package/lib/dist-custom-elements/duet-progress.js +1 -1
  250. package/lib/dist-custom-elements/duet-promo-card.js +5 -5
  251. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  252. package/lib/dist-custom-elements/duet-radio.js +1 -1
  253. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  254. package/lib/dist-custom-elements/duet-range-stepper.js +6 -6
  255. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  256. package/lib/dist-custom-elements/duet-section-layout.js +5 -6
  257. package/lib/dist-custom-elements/duet-select.js +1 -1
  258. package/lib/dist-custom-elements/duet-shaped-image.js +3 -3
  259. package/lib/dist-custom-elements/duet-show-more.js +1 -1
  260. package/lib/dist-custom-elements/duet-slideout-lang.js +3 -3
  261. package/lib/dist-custom-elements/duet-slideout-link.js +4 -4
  262. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +6 -6
  263. package/lib/dist-custom-elements/duet-slideout-panel.js +8 -8
  264. package/lib/dist-custom-elements/duet-slideout.js +7 -7
  265. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  266. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  267. package/lib/dist-custom-elements/duet-step.js +4 -4
  268. package/lib/dist-custom-elements/duet-stepper.js +3 -3
  269. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +4 -4
  270. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +6 -6
  271. package/lib/dist-custom-elements/duet-submenu-bar-item.js +3 -3
  272. package/lib/dist-custom-elements/duet-submenu-bar-link.js +3 -3
  273. package/lib/dist-custom-elements/duet-submenu-bar.js +8 -8
  274. package/lib/dist-custom-elements/duet-tab-group.js +18 -18
  275. package/lib/dist-custom-elements/duet-tab.js +1 -1
  276. package/lib/dist-custom-elements/duet-table.js +1 -1
  277. package/lib/dist-custom-elements/duet-textarea.js +16 -15
  278. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  279. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +4 -4
  280. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +6 -6
  281. package/lib/dist-custom-elements/duet-toolbar-item.js +12 -6
  282. package/lib/dist-custom-elements/duet-toolbar-link.js +4 -4
  283. package/lib/dist-custom-elements/duet-toolbar.js +11 -5
  284. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  285. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  286. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  287. package/lib/dist-custom-elements/duet-tray.js +5 -5
  288. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  289. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  290. package/lib/dist-custom-elements/duet-upload.js +21 -21
  291. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  292. package/lib/dist-custom-elements/index.js +1 -1
  293. package/lib/dist-custom-elements/{p-33a40488.js → p-0403f6da.js} +3 -3
  294. package/lib/dist-custom-elements/{p-bcc759f6.js → p-0bb6686b.js} +4 -4
  295. package/lib/dist-custom-elements/{p-9587e63e.js → p-0fb7a267.js} +2 -2
  296. package/lib/dist-custom-elements/{p-5d15bc28.js → p-10f0fddb.js} +3 -3
  297. package/lib/dist-custom-elements/{p-976cffee.js → p-1dbac987.js} +8 -8
  298. package/lib/dist-custom-elements/{p-1a0717b2.js → p-20420946.js} +3 -3
  299. package/lib/dist-custom-elements/{p-6ded6ab0.js → p-2e9f301d.js} +5 -5
  300. package/lib/dist-custom-elements/{p-fa97c257.js → p-33b260ff.js} +1 -1
  301. package/lib/dist-custom-elements/p-3bc3ac8a.js +119 -0
  302. package/lib/dist-custom-elements/{p-78c42188.js → p-3f00c32a.js} +1 -1
  303. package/lib/dist-custom-elements/{p-4e2ad0e0.js → p-43a7f93f.js} +2 -2
  304. package/lib/dist-custom-elements/{p-08ba0c8e.js → p-43f6f1e6.js} +2 -2
  305. package/lib/dist-custom-elements/{p-c25a991b.js → p-4e532364.js} +1 -1
  306. package/lib/dist-custom-elements/{p-f5199769.js → p-52535b60.js} +12 -12
  307. package/lib/dist-custom-elements/{p-4c7eab86.js → p-550504de.js} +3 -3
  308. package/lib/dist-custom-elements/{p-eca652e9.js → p-684cca0d.js} +3 -3
  309. package/lib/dist-custom-elements/{p-ccc48f38.js → p-6a5c7011.js} +10 -10
  310. package/lib/dist-custom-elements/{p-2f3cb54b.js → p-6d83f337.js} +4 -4
  311. package/lib/dist-custom-elements/{p-1195ba92.js → p-7e6cdbe3.js} +1 -1
  312. package/lib/dist-custom-elements/{p-f474833e.js → p-8b0dee3e.js} +1 -1
  313. package/lib/dist-custom-elements/{p-092cf346.js → p-8e557451.js} +2 -2
  314. package/lib/dist-custom-elements/{p-003f07d0.js → p-936d5746.js} +2 -2
  315. package/lib/dist-custom-elements/{p-151ba4af.js → p-95971567.js} +1 -1
  316. package/lib/dist-custom-elements/{p-d656dd95.js → p-ae262553.js} +2 -2
  317. package/lib/dist-custom-elements/{p-717f62de.js → p-b3773c10.js} +3 -3
  318. package/lib/dist-custom-elements/{p-5faf2571.js → p-bdeb5fba.js} +10 -10
  319. package/lib/dist-custom-elements/{p-41222b8d.js → p-c775f5b9.js} +1 -1
  320. package/lib/dist-custom-elements/{p-203e91c1.js → p-cdf8041c.js} +7 -7
  321. package/lib/dist-custom-elements/{p-13259f25.js → p-d6a8840d.js} +5 -5
  322. package/lib/dist-custom-elements/{p-7a4e27a2.js → p-e0913e76.js} +6 -6
  323. package/lib/dist-custom-elements/{p-6b4d1a90.js → p-e416ccec.js} +3 -3
  324. package/lib/dist-custom-elements/{p-2ad70bfb.js → p-e5f6aaab.js} +2 -2
  325. package/lib/dist-custom-elements/{p-7f7ad9b6.js → p-e7918410.js} +5 -5
  326. package/lib/dist-custom-elements/{p-f58dfec6.js → p-e8d60da0.js} +2 -2
  327. package/lib/dist-custom-elements/{p-0f98be73.js → p-e9361277.js} +4 -4
  328. package/lib/{esm/duet-popup-menu.entry.js → dist-custom-elements/p-ec4d6856.js} +68 -19
  329. package/lib/dist-custom-elements/{p-d7d32738.js → p-ecc803b3.js} +1 -1
  330. package/lib/dist-custom-elements/{p-7ecba39f.js → p-f055bb61.js} +3 -3
  331. package/lib/dist-custom-elements/{p-8027f9ce.js → p-f2f2bcca.js} +4 -4
  332. package/lib/duet/duet.esm.js +1 -1
  333. package/lib/duet/duet.js +1 -1
  334. package/lib/duet/{p-022f9a30.entry.js → p-002c99c1.entry.js} +1 -1
  335. package/lib/duet/p-0258c8de.entry.js +4 -0
  336. package/lib/duet/{p-1512ddad.system.entry.js → p-04734a93.system.entry.js} +2 -2
  337. package/lib/duet/{p-5799fe5f.system.entry.js → p-04efd66c.system.entry.js} +2 -2
  338. package/lib/duet/p-06051dcb.entry.js +4 -0
  339. package/lib/duet/{p-78b5469b.system.entry.js → p-0660a0ef.system.entry.js} +1 -1
  340. package/lib/duet/{p-df0168af.entry.js → p-07293953.entry.js} +1 -1
  341. package/lib/duet/{p-78fe82c7.system.js → p-0740edce.system.js} +1 -1
  342. package/lib/duet/{p-8707a699.system.entry.js → p-083353cb.system.entry.js} +1 -1
  343. package/lib/duet/{p-2725220b.system.entry.js → p-0bfe2f53.system.entry.js} +1 -1
  344. package/lib/duet/p-0bfee3a1.system.entry.js +4 -0
  345. package/lib/duet/{p-06ad5d11.system.js → p-0c12d3cd.system.js} +1 -1
  346. package/lib/duet/{p-2c40be98.system.entry.js → p-0ce0c979.system.entry.js} +1 -1
  347. package/lib/duet/p-0e1e68bc.system.entry.js +4 -0
  348. package/lib/duet/{p-45746854.system.js → p-0e2c37c7.system.js} +1 -1
  349. package/lib/duet/{p-e5ecf940.entry.js → p-0fdbde27.entry.js} +1 -1
  350. package/lib/duet/{p-c62788a1.system.entry.js → p-11e4c749.system.entry.js} +1 -1
  351. package/lib/duet/{p-0bd39158.entry.js → p-17077f57.entry.js} +1 -1
  352. package/lib/duet/p-17b64351.system.entry.js +4 -0
  353. package/lib/duet/{p-b6269765.entry.js → p-18917d49.entry.js} +1 -1
  354. package/lib/duet/{p-c6584315.system.entry.js → p-18cd13be.system.entry.js} +1 -1
  355. package/lib/duet/{p-ae095513.entry.js → p-18e6e7fe.entry.js} +1 -1
  356. package/lib/duet/{p-d78d6df5.entry.js → p-199d505a.entry.js} +1 -1
  357. package/lib/duet/{p-20490634.system.entry.js → p-1abf7d11.system.entry.js} +1 -1
  358. package/lib/duet/{p-6b76b443.entry.js → p-1db515c6.entry.js} +1 -1
  359. package/lib/duet/{p-18b40fa3.system.entry.js → p-210715c1.system.entry.js} +1 -1
  360. package/lib/duet/{p-3fb27027.system.entry.js → p-21ad7b3a.system.entry.js} +1 -1
  361. package/lib/duet/{p-11a2ab97.system.entry.js → p-231c6724.system.entry.js} +1 -1
  362. package/lib/duet/{p-c646d135.entry.js → p-277fd80e.entry.js} +1 -1
  363. package/lib/duet/{p-f0806e36.system.entry.js → p-27aa38b5.system.entry.js} +1 -1
  364. package/lib/duet/{p-dd813d4e.entry.js → p-281fa7a1.entry.js} +1 -1
  365. package/lib/duet/{p-40c557ff.system.entry.js → p-29072d2d.system.entry.js} +1 -1
  366. package/lib/duet/{p-ccc30136.system.entry.js → p-2a2f7fe9.system.entry.js} +2 -2
  367. package/lib/duet/{p-9bfeb191.entry.js → p-2b790430.entry.js} +1 -1
  368. package/lib/duet/{p-e35347a0.system.entry.js → p-357fba0e.system.entry.js} +1 -1
  369. package/lib/duet/{p-ac0130a8.entry.js → p-372b1880.entry.js} +1 -1
  370. package/lib/duet/{p-3720efca.system.entry.js → p-3958bcfa.system.entry.js} +1 -1
  371. package/lib/duet/{p-e219a93f.entry.js → p-39630105.entry.js} +1 -1
  372. package/lib/duet/{p-b5074ff6.entry.js → p-39dab293.entry.js} +1 -1
  373. package/lib/duet/{p-8ff34272.system.entry.js → p-3daaefaf.system.entry.js} +1 -1
  374. package/lib/duet/{p-8afd53b2.system.entry.js → p-40b33a43.system.entry.js} +1 -1
  375. package/lib/duet/{p-e18e5311.system.entry.js → p-40ee32f0.system.entry.js} +1 -1
  376. package/lib/duet/p-410c17b6.system.entry.js +4 -0
  377. package/lib/duet/{p-cbbeefba.system.entry.js → p-434bda24.system.entry.js} +1 -1
  378. package/lib/duet/{p-920ab643.entry.js → p-4407ea5a.entry.js} +1 -1
  379. package/lib/duet/{p-20e0094b.entry.js → p-4451f3eb.entry.js} +1 -1
  380. package/lib/duet/{p-4b5fdaa5.entry.js → p-44c19fe9.entry.js} +1 -1
  381. package/lib/duet/{p-a209fed5.entry.js → p-44d2dbb7.entry.js} +1 -1
  382. package/lib/duet/{p-335bfe63.entry.js → p-44ecb79f.entry.js} +1 -1
  383. package/lib/duet/p-4543f9e7.entry.js +4 -0
  384. package/lib/duet/{p-07802adc.system.entry.js → p-477d4c2a.system.entry.js} +1 -1
  385. package/lib/duet/p-48836fcc.system.entry.js +4 -0
  386. package/lib/duet/{p-b2b147c9.entry.js → p-49051d57.entry.js} +1 -1
  387. package/lib/duet/{p-e0e090bb.system.entry.js → p-49e6e791.system.entry.js} +2 -2
  388. package/lib/duet/{p-a79114c3.system.entry.js → p-4a59b12a.system.entry.js} +1 -1
  389. package/lib/duet/{p-bca879ba.system.entry.js → p-4cc5c937.system.entry.js} +1 -1
  390. package/lib/duet/{p-b832a5eb.system.entry.js → p-4e485c1c.system.entry.js} +1 -1
  391. package/lib/duet/{p-a3e5abb2.entry.js → p-50f8076d.entry.js} +1 -1
  392. package/lib/duet/{p-87b3fb3e.system.entry.js → p-51675591.system.entry.js} +1 -1
  393. package/lib/duet/{p-01e57a3b.system.entry.js → p-522e0468.system.entry.js} +1 -1
  394. package/lib/duet/{p-2aa3dfc5.entry.js → p-52fc5c3b.entry.js} +1 -1
  395. package/lib/duet/{p-20b2b9af.system.entry.js → p-54460ce3.system.entry.js} +1 -1
  396. package/lib/duet/{p-18494c5d.entry.js → p-546ca397.entry.js} +1 -1
  397. package/lib/duet/{p-f1cb7fa4.entry.js → p-54d7e599.entry.js} +1 -1
  398. package/lib/duet/{p-b7453f14.entry.js → p-554cff02.entry.js} +1 -1
  399. package/lib/duet/{p-9e927d04.system.entry.js → p-5839bb7a.system.entry.js} +1 -1
  400. package/lib/duet/{p-f80687b8.entry.js → p-58400179.entry.js} +1 -1
  401. package/lib/duet/{p-a56e060b.entry.js → p-584be931.entry.js} +1 -1
  402. package/lib/duet/{p-49da095c.system.entry.js → p-5899db41.system.entry.js} +1 -1
  403. package/lib/duet/{p-9fd3ced5.system.entry.js → p-5a8ca9f7.system.entry.js} +1 -1
  404. package/lib/duet/{p-b4ed38ea.system.entry.js → p-5c5202c1.system.entry.js} +1 -1
  405. package/lib/duet/p-5e0a2a78.system.entry.js +4 -0
  406. package/lib/duet/{p-21429748.system.entry.js → p-5e46b67c.system.entry.js} +1 -1
  407. package/lib/duet/{p-b08d87b0.system.entry.js → p-5eda45d0.system.entry.js} +1 -1
  408. package/lib/duet/{p-c331a8ef.system.entry.js → p-6014d518.system.entry.js} +1 -1
  409. package/lib/duet/{p-be8aa52a.entry.js → p-6119ef0a.entry.js} +1 -1
  410. package/lib/duet/{p-c01aa549.system.entry.js → p-61fe999e.system.entry.js} +1 -1
  411. package/lib/duet/{p-f52d988b.entry.js → p-66da99e1.entry.js} +1 -1
  412. package/lib/duet/p-681afce7.js +4 -0
  413. package/lib/duet/{p-63f481c7.system.entry.js → p-69bb93ee.system.entry.js} +1 -1
  414. package/lib/duet/{p-84f32ade.system.entry.js → p-6b2a8199.system.entry.js} +2 -2
  415. package/lib/duet/p-6db337db.entry.js +4 -0
  416. package/lib/duet/{p-7b93c24f.entry.js → p-6f1fc369.entry.js} +1 -1
  417. package/lib/duet/{p-494fc947.entry.js → p-73f290b1.entry.js} +1 -1
  418. package/lib/duet/p-747505e8.entry.js +4 -0
  419. package/lib/duet/p-765f640d.js +4 -0
  420. package/lib/duet/{p-d30a413a.system.entry.js → p-77009e02.system.entry.js} +1 -1
  421. package/lib/duet/{p-6fc66353.system.entry.js → p-7776b2e3.system.entry.js} +1 -1
  422. package/lib/duet/{p-7f779fb0.system.entry.js → p-77bd02b8.system.entry.js} +1 -1
  423. package/lib/duet/{p-c106aa51.entry.js → p-7bc8a7ba.entry.js} +1 -1
  424. package/lib/duet/{p-36f89415.system.entry.js → p-7ca5fee5.system.entry.js} +1 -1
  425. package/lib/duet/{p-251392d6.entry.js → p-80ebdba0.entry.js} +1 -1
  426. package/lib/duet/{p-593b4911.system.entry.js → p-82557326.system.entry.js} +1 -1
  427. package/lib/duet/p-83dc6278.entry.js +4 -0
  428. package/lib/duet/{p-8a162701.js → p-8483586d.js} +1 -1
  429. package/lib/duet/{p-eda3baff.entry.js → p-8575f97e.entry.js} +1 -1
  430. package/lib/duet/{p-a0699de6.system.entry.js → p-86ddbb9f.system.entry.js} +1 -1
  431. package/lib/duet/{p-e0dc3a1e.entry.js → p-88a370ef.entry.js} +1 -1
  432. package/lib/duet/{p-8464bb3e.system.entry.js → p-89bc2c76.system.entry.js} +1 -1
  433. package/lib/duet/{p-d7a4a799.system.entry.js → p-8d6d407f.system.entry.js} +1 -1
  434. package/lib/duet/{p-e5a5248f.entry.js → p-8d7d23ca.entry.js} +1 -1
  435. package/lib/duet/{p-888cf6df.system.entry.js → p-8e8ac460.system.entry.js} +1 -1
  436. package/lib/duet/{p-382da2ee.entry.js → p-907e01e1.entry.js} +1 -1
  437. package/lib/duet/{p-14ffc1f0.entry.js → p-90e39ad6.entry.js} +1 -1
  438. package/lib/duet/{p-2b92ea13.entry.js → p-912860f0.entry.js} +1 -1
  439. package/lib/duet/{p-6e904090.entry.js → p-98d9fcfc.entry.js} +1 -1
  440. package/lib/duet/{p-deef8ec0.system.entry.js → p-995b0ea5.system.entry.js} +1 -1
  441. package/lib/duet/{p-a7e281f2.system.entry.js → p-9b70444f.system.entry.js} +2 -2
  442. package/lib/duet/{p-4d0be2e2.entry.js → p-9bbdecc7.entry.js} +1 -1
  443. package/lib/duet/{p-36dab1b1.entry.js → p-9df917b9.entry.js} +1 -1
  444. package/lib/duet/{p-7d7efba3.entry.js → p-9f08395f.entry.js} +1 -1
  445. package/lib/duet/p-9fa9db50.entry.js +4 -0
  446. package/lib/duet/{p-624552e4.system.js → p-9fdb1552.system.js} +1 -1
  447. package/lib/duet/{p-b35f871e.system.entry.js → p-a2023033.system.entry.js} +1 -1
  448. package/lib/duet/{p-77af0e90.system.entry.js → p-a25f447e.system.entry.js} +1 -1
  449. package/lib/duet/{p-b7166c29.system.entry.js → p-a37a7f5f.system.entry.js} +1 -1
  450. package/lib/duet/{p-5765427b.entry.js → p-a4d2aea7.entry.js} +1 -1
  451. package/lib/duet/{p-c91b3c9f.system.entry.js → p-a4d589fb.system.entry.js} +2 -2
  452. package/lib/duet/p-a623fa7e.entry.js +4 -0
  453. package/lib/duet/{p-f492378f.entry.js → p-a696a103.entry.js} +1 -1
  454. package/lib/duet/{p-17279a7b.entry.js → p-a710fd68.entry.js} +1 -1
  455. package/lib/duet/{p-087fbd73.entry.js → p-a89f11eb.entry.js} +1 -1
  456. package/lib/duet/{p-0ce89e2e.system.entry.js → p-ab487d80.system.entry.js} +1 -1
  457. package/lib/duet/{p-ce1b8c29.entry.js → p-ab5f9de6.entry.js} +1 -1
  458. package/lib/duet/{p-bb027e2f.entry.js → p-acd9cb61.entry.js} +1 -1
  459. package/lib/duet/{p-faf67509.js → p-ae8d9deb.js} +1 -1
  460. package/lib/duet/p-af311c80.entry.js +4 -0
  461. package/lib/duet/{p-1362dce1.entry.js → p-b01e1603.entry.js} +1 -1
  462. package/lib/duet/p-b24bbdc0.entry.js +4 -0
  463. package/lib/duet/{p-5395dceb.entry.js → p-b5329846.entry.js} +1 -1
  464. package/lib/duet/p-b5dabfe2.entry.js +4 -0
  465. package/lib/duet/{p-198dd1e6.entry.js → p-b69d6f0f.entry.js} +1 -1
  466. package/lib/duet/{p-74bfeccb.js → p-b6e8a587.js} +1 -1
  467. package/lib/duet/{p-64c3bff5.system.entry.js → p-b7efe3b3.system.entry.js} +1 -1
  468. package/lib/duet/{p-e6517fd1.system.entry.js → p-b97c6e73.system.entry.js} +1 -1
  469. package/lib/duet/{p-7ed9e2a8.entry.js → p-b9ca5786.entry.js} +1 -1
  470. package/lib/duet/{p-8767b8b2.system.entry.js → p-ba7657d2.system.entry.js} +1 -1
  471. package/lib/duet/p-bb896f73.system.js +4 -0
  472. package/lib/duet/{p-64901815.entry.js → p-bc188b4d.entry.js} +1 -1
  473. package/lib/duet/{p-38c82b27.entry.js → p-bd60816f.entry.js} +1 -1
  474. package/lib/duet/{p-6b1eff48.system.entry.js → p-be7c8c61.system.entry.js} +1 -1
  475. package/lib/duet/{p-276354d7.system.entry.js → p-bff7ece1.system.entry.js} +1 -1
  476. package/lib/duet/{p-66819401.system.entry.js → p-c02efffc.system.entry.js} +1 -1
  477. package/lib/duet/p-c162e573.system.entry.js +4 -0
  478. package/lib/duet/{p-a843b8a9.system.entry.js → p-c1e4c10f.system.entry.js} +1 -1
  479. package/lib/duet/{p-ff92b024.system.entry.js → p-c999ea8d.system.entry.js} +1 -1
  480. package/lib/duet/{p-a9ed4cb0.entry.js → p-cb7626f8.entry.js} +1 -1
  481. package/lib/duet/{p-7cb4b92c.system.entry.js → p-cb833d34.system.entry.js} +1 -1
  482. package/lib/duet/p-d19b027a.system.js +4 -0
  483. package/lib/duet/p-d1c6861d.system.entry.js +4 -0
  484. package/lib/duet/{p-bb153ecd.entry.js → p-d2b0c35d.entry.js} +1 -1
  485. package/lib/duet/p-d40e8899.system.js +4 -0
  486. package/lib/duet/p-d64e3229.entry.js +4 -0
  487. package/lib/duet/p-d7d9526b.entry.js +4 -0
  488. package/lib/duet/{p-4649b4a3.entry.js → p-d9f0722f.entry.js} +1 -1
  489. package/lib/duet/{p-a2301b59.system.entry.js → p-da60c177.system.entry.js} +1 -1
  490. package/lib/duet/{p-2c4294f8.system.entry.js → p-dd48441b.system.entry.js} +1 -1
  491. package/lib/duet/{p-92466b4a.system.entry.js → p-deaa6b23.system.entry.js} +1 -1
  492. package/lib/duet/{p-fa1bebb0.entry.js → p-e021729d.entry.js} +1 -1
  493. package/lib/duet/{p-fb3d3226.system.entry.js → p-e3bf718e.system.entry.js} +1 -1
  494. package/lib/duet/{p-07df4f67.system.entry.js → p-e43ff11c.system.entry.js} +1 -1
  495. package/lib/duet/{p-b85b3fb8.entry.js → p-e8daf1e2.entry.js} +1 -1
  496. package/lib/duet/{p-ca7c0e04.entry.js → p-ec809c70.entry.js} +1 -1
  497. package/lib/duet/p-ed4d1a8b.js +4 -0
  498. package/lib/duet/{p-0fa9b797.entry.js → p-ede1eb73.entry.js} +1 -1
  499. package/lib/duet/{p-c127c18e.entry.js → p-ee6bfb1e.entry.js} +1 -1
  500. package/lib/duet/{p-26c32975.entry.js → p-f00a57c0.entry.js} +1 -1
  501. package/lib/duet/{p-a91a3cf2.system.entry.js → p-f3a6603e.system.entry.js} +1 -1
  502. package/lib/duet/{p-1f66ca2d.entry.js → p-f4b2f2e8.entry.js} +1 -1
  503. package/lib/duet/{p-1c4895df.entry.js → p-f7845fea.entry.js} +1 -1
  504. package/lib/duet/{p-9965b2bb.system.entry.js → p-fef50246.system.entry.js} +1 -1
  505. package/lib/esm/{app-globals-96009d83.js → app-globals-01df0e2e.js} +1 -1
  506. package/lib/esm/duet-action-button.entry.js +2 -2
  507. package/lib/esm/duet-alert.entry.js +3 -3
  508. package/lib/esm/duet-badge.entry.js +3 -3
  509. package/lib/esm/duet-banner.entry.js +2 -2
  510. package/lib/esm/duet-breadcrumb.entry.js +6 -6
  511. package/lib/esm/duet-breadcrumbs.entry.js +4 -4
  512. package/lib/esm/duet-button_2.entry.js +4 -4
  513. package/lib/esm/duet-callout.entry.js +4 -4
  514. package/lib/esm/duet-caption_4.entry.js +6 -6
  515. package/lib/esm/duet-card.entry.js +1 -1
  516. package/lib/esm/duet-checkbox.entry.js +1 -1
  517. package/lib/esm/duet-checkmark.entry.js +3 -3
  518. package/lib/esm/{duet-chip.entry.js → duet-chip_3.entry.js} +327 -3
  519. package/lib/esm/duet-choice_2.entry.js +3 -3
  520. package/lib/esm/duet-collapsible.entry.js +2 -2
  521. package/lib/esm/duet-combobox.entry.js +42 -32
  522. package/lib/esm/duet-contact-card.entry.js +4 -4
  523. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  524. package/lib/esm/duet-date-picker.entry.js +38 -6
  525. package/lib/esm/duet-divider_2.entry.js +2 -2
  526. package/lib/esm/duet-editable-table_3.entry.js +7 -7
  527. package/lib/esm/duet-empty-state.entry.js +1 -1
  528. package/lib/esm/duet-fieldset.entry.js +5 -5
  529. package/lib/esm/duet-file-chooser.entry.js +1 -1
  530. package/lib/esm/duet-footer.entry.js +3 -3
  531. package/lib/esm/duet-grid_2.entry.js +1 -1
  532. package/lib/esm/duet-header_2.entry.js +3 -3
  533. package/lib/esm/duet-hero.entry.js +3 -3
  534. package/lib/esm/duet-icon.entry.js +4 -4
  535. package/lib/esm/duet-input_2.entry.js +3 -3
  536. package/lib/esm/duet-layout.entry.js +7 -10
  537. package/lib/esm/duet-list_2.entry.js +4 -4
  538. package/lib/esm/duet-menu-bar-button.entry.js +3 -3
  539. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +3 -3
  540. package/lib/esm/duet-menu-bar-dropdown.entry.js +5 -5
  541. package/lib/esm/duet-menu-bar-item.entry.js +3 -3
  542. package/lib/esm/duet-menu-bar-link.entry.js +3 -3
  543. package/lib/esm/duet-menu-bar.entry.js +5 -5
  544. package/lib/esm/duet-modal.entry.js +10 -10
  545. package/lib/esm/duet-multiselect.entry.js +8 -8
  546. package/lib/esm/duet-nav.entry.js +2 -2
  547. package/lib/esm/duet-notification_2.entry.js +6 -6
  548. package/lib/esm/duet-number-input.entry.js +3 -3
  549. package/lib/esm/duet-overlay.entry.js +2 -2
  550. package/lib/esm/duet-page-heading.entry.js +3 -3
  551. package/lib/esm/duet-pagination_2.entry.js +15 -15
  552. package/lib/esm/duet-progress.entry.js +2 -2
  553. package/lib/esm/duet-promo-card.entry.js +4 -4
  554. package/lib/esm/duet-radio_2.entry.js +2 -2
  555. package/lib/esm/duet-range-slider.entry.js +1 -1
  556. package/lib/esm/duet-scrollable_3.entry.js +13 -13
  557. package/lib/esm/duet-section-layout.entry.js +5 -6
  558. package/lib/esm/duet-select.entry.js +2 -2
  559. package/lib/esm/duet-shaped-image.entry.js +3 -3
  560. package/lib/esm/duet-show-more.entry.js +4 -4
  561. package/lib/esm/duet-slideout-lang.entry.js +3 -3
  562. package/lib/esm/duet-slideout-link.entry.js +3 -3
  563. package/lib/esm/duet-slideout-panel-dropdown.entry.js +5 -5
  564. package/lib/esm/duet-slideout-panel.entry.js +10 -10
  565. package/lib/esm/duet-slideout.entry.js +8 -8
  566. package/lib/esm/duet-step_2.entry.js +2 -2
  567. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +3 -3
  568. package/lib/esm/duet-submenu-bar-dropdown.entry.js +5 -5
  569. package/lib/esm/duet-submenu-bar-item.entry.js +2 -2
  570. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  571. package/lib/esm/duet-submenu-bar.entry.js +6 -6
  572. package/lib/esm/duet-textarea.entry.js +7 -7
  573. package/lib/esm/duet-toggle.entry.js +1 -1
  574. package/lib/esm/duet-toolbar-dropdown-link.entry.js +3 -3
  575. package/lib/esm/duet-toolbar-dropdown.entry.js +5 -5
  576. package/lib/esm/duet-toolbar-item.entry.js +11 -5
  577. package/lib/esm/duet-toolbar-link.entry.js +3 -3
  578. package/lib/esm/duet-toolbar.entry.js +11 -5
  579. package/lib/esm/duet-tooltip-button_2.entry.js +6 -6
  580. package/lib/esm/duet-tooltip.entry.js +2 -2
  581. package/lib/esm/duet-tray.entry.js +4 -4
  582. package/lib/esm/duet-upload-aria-status.entry.js +2 -2
  583. package/lib/esm/duet-upload-item.entry.js +5 -5
  584. package/lib/esm/duet-visually-hidden.entry.js +2 -2
  585. package/lib/esm/duet.js +4 -4
  586. package/lib/esm/{errorcodes.utils-568ea028.js → errorcodes.utils-ac65ace8.js} +1 -1
  587. package/lib/esm/{focus-utils-003541f7.js → focus-utils-3e81bca4.js} +1 -1
  588. package/lib/esm/{index-bbae2d5d.js → index-5d196317.js} +1 -1
  589. package/lib/esm/{language-utils-5a2b4259.js → language-utils-97f0a1bb.js} +1 -1
  590. package/lib/esm/loader.js +4 -4
  591. package/lib/esm/{slot-utils-0a3b9dfc.js → slot-utils-4442cc08.js} +1 -1
  592. package/lib/esm-es5/{app-globals-96009d83.js → app-globals-01df0e2e.js} +1 -1
  593. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  594. package/lib/esm-es5/duet-alert.entry.js +1 -1
  595. package/lib/esm-es5/duet-badge.entry.js +1 -1
  596. package/lib/esm-es5/duet-banner.entry.js +1 -1
  597. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  598. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  599. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  600. package/lib/esm-es5/duet-callout.entry.js +1 -1
  601. package/lib/esm-es5/duet-caption_4.entry.js +2 -2
  602. package/lib/esm-es5/duet-card.entry.js +1 -1
  603. package/lib/esm-es5/duet-checkbox.entry.js +2 -2
  604. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  605. package/lib/esm-es5/duet-chip_3.entry.js +4 -0
  606. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  607. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  608. package/lib/esm-es5/duet-combobox.entry.js +2 -2
  609. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  610. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  611. package/lib/esm-es5/duet-date-picker.entry.js +2 -2
  612. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  613. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  614. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  615. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  616. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  617. package/lib/esm-es5/duet-footer.entry.js +1 -1
  618. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  619. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  620. package/lib/esm-es5/duet-hero.entry.js +1 -1
  621. package/lib/esm-es5/duet-icon.entry.js +1 -1
  622. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  623. package/lib/esm-es5/duet-layout.entry.js +1 -1
  624. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  625. package/lib/esm-es5/duet-menu-bar-button.entry.js +2 -2
  626. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  627. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +2 -2
  628. package/lib/esm-es5/duet-menu-bar-item.entry.js +2 -2
  629. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  630. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  631. package/lib/esm-es5/duet-modal.entry.js +1 -1
  632. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  633. package/lib/esm-es5/duet-nav.entry.js +1 -1
  634. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  635. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  636. package/lib/esm-es5/duet-overlay.entry.js +1 -1
  637. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  638. package/lib/esm-es5/duet-pagination_2.entry.js +2 -2
  639. package/lib/esm-es5/duet-progress.entry.js +1 -1
  640. package/lib/esm-es5/duet-promo-card.entry.js +2 -2
  641. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  642. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  643. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  644. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  645. package/lib/esm-es5/duet-select.entry.js +1 -1
  646. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  647. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  648. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  649. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  650. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +2 -2
  651. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  652. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  653. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  654. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  655. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  656. package/lib/esm-es5/duet-submenu-bar-item.entry.js +1 -1
  657. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  658. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  659. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  660. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  661. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  662. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  663. package/lib/esm-es5/duet-toolbar-item.entry.js +2 -2
  664. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  665. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  666. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  667. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  668. package/lib/esm-es5/duet-tray.entry.js +1 -1
  669. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  670. package/lib/esm-es5/duet-upload-item.entry.js +2 -2
  671. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  672. package/lib/esm-es5/duet.js +1 -1
  673. package/lib/esm-es5/{errorcodes.utils-568ea028.js → errorcodes.utils-ac65ace8.js} +1 -1
  674. package/lib/esm-es5/focus-utils-3e81bca4.js +4 -0
  675. package/lib/esm-es5/{index-bbae2d5d.js → index-5d196317.js} +1 -1
  676. package/lib/esm-es5/{language-utils-5a2b4259.js → language-utils-97f0a1bb.js} +1 -1
  677. package/lib/esm-es5/loader.js +1 -1
  678. package/lib/esm-es5/{slot-utils-0a3b9dfc.js → slot-utils-4442cc08.js} +1 -1
  679. package/lib/types/components/duet-combobox/duet-combobox-select.d.ts +2 -1
  680. package/lib/types/components/duet-combobox/duet-combobox.d.ts +3 -1
  681. package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +3 -1
  682. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +7 -2
  683. package/lib/types/components/duet-popup-menu-item/duet-popup-menu-item.d.ts +6 -1
  684. package/lib/types/components/duet-toolbar/duet-toolbar.d.ts +2 -2
  685. package/lib/types/components/duet-toolbar-item/duet-toolbar-item.d.ts +2 -2
  686. package/lib/types/components.d.ts +23 -14
  687. package/package.json +4 -4
  688. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +0 -83
  689. package/lib/cjs/duet-popup-menu.cjs.entry.js +0 -250
  690. package/lib/duet/p-0d0aa77d.entry.js +0 -4
  691. package/lib/duet/p-117dff79.entry.js +0 -4
  692. package/lib/duet/p-26f57aa1.entry.js +0 -4
  693. package/lib/duet/p-389cd1f2.js +0 -4
  694. package/lib/duet/p-3f4a41a0.entry.js +0 -4
  695. package/lib/duet/p-49ba4a7f.system.entry.js +0 -4
  696. package/lib/duet/p-4efba746.system.entry.js +0 -4
  697. package/lib/duet/p-613b429d.system.entry.js +0 -4
  698. package/lib/duet/p-6435fa0f.system.entry.js +0 -4
  699. package/lib/duet/p-69f68431.entry.js +0 -4
  700. package/lib/duet/p-6d32e2a5.entry.js +0 -4
  701. package/lib/duet/p-6e74ac45.system.entry.js +0 -4
  702. package/lib/duet/p-7213e4f9.system.js +0 -4
  703. package/lib/duet/p-72e384da.entry.js +0 -4
  704. package/lib/duet/p-863b1517.entry.js +0 -4
  705. package/lib/duet/p-8bee0043.entry.js +0 -4
  706. package/lib/duet/p-90cfb998.system.entry.js +0 -4
  707. package/lib/duet/p-a24aa183.entry.js +0 -4
  708. package/lib/duet/p-a376dd1d.js +0 -4
  709. package/lib/duet/p-a47059b7.system.entry.js +0 -4
  710. package/lib/duet/p-a918531a.entry.js +0 -4
  711. package/lib/duet/p-aaa77eee.entry.js +0 -4
  712. package/lib/duet/p-b01fbe26.system.js +0 -4
  713. package/lib/duet/p-b2eb57ef.entry.js +0 -4
  714. package/lib/duet/p-bde12c72.system.js +0 -4
  715. package/lib/duet/p-c00ac038.system.entry.js +0 -4
  716. package/lib/duet/p-d316ecf3.entry.js +0 -4
  717. package/lib/duet/p-d87a08ee.system.entry.js +0 -4
  718. package/lib/duet/p-e3d92f42.entry.js +0 -4
  719. package/lib/duet/p-e5435f92.system.entry.js +0 -4
  720. package/lib/duet/p-fd60b2ff.js +0 -4
  721. package/lib/esm/duet-popup-menu-item.entry.js +0 -79
  722. package/lib/esm-es5/duet-chip.entry.js +0 -4
  723. package/lib/esm-es5/duet-popup-menu-item.entry.js +0 -4
  724. package/lib/esm-es5/duet-popup-menu.entry.js +0 -4
  725. package/lib/esm-es5/focus-utils-003541f7.js +0 -4
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const keyboardUtils = require('./keyboard-utils-681e11ec.js');
11
11
 
@@ -5,12 +5,12 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
- const focusUtils = require('./focus-utils-b8926034.js');
12
- const languageUtils = require('./language-utils-8f7743a1.js');
13
- const slotUtils = require('./slot-utils-85cd307f.js');
11
+ const focusUtils = require('./focus-utils-87585a09.js');
12
+ const languageUtils = require('./language-utils-3372de6f.js');
13
+ const slotUtils = require('./slot-utils-8015a7e6.js');
14
14
  require('./string-utils-7b13c16e.js');
15
15
 
16
16
  const formatOptionsShort = { day: "numeric", month: "long" };
@@ -419,6 +419,23 @@ const DuetDatePicker = class {
419
419
  this.initialTouchX = null;
420
420
  this.initialTouchY = null;
421
421
  this.focusTarget = null;
422
+ this.dateErrorMessages = {
423
+ badInput: {
424
+ en: "Wrong date format",
425
+ fi: "Väärä päivämäärämuoto",
426
+ sv: "Fel datumformat",
427
+ },
428
+ rangeUnderflow: {
429
+ en: "Date too early",
430
+ fi: "Päivämäärä liian aikainen",
431
+ sv: "Datum för tidigt",
432
+ },
433
+ rangeOverflow: {
434
+ en: "Date too late",
435
+ fi: "Päivämäärä liian aikainen",
436
+ sv: "Datum för sent",
437
+ },
438
+ };
422
439
  this.enableActiveFocus = () => {
423
440
  this.focusTarget = "day-button";
424
441
  };
@@ -431,6 +448,11 @@ const DuetDatePicker = class {
431
448
  };
432
449
  this.handleBlur = (event) => {
433
450
  event.stopPropagation();
451
+ if (!this.validity.valid) {
452
+ this.value = null;
453
+ const errorKey = Object.entries(this.validity).find(entry => !!entry[1])[0];
454
+ this.internalValidityError = languageUtils.getLocaleString(this.dateErrorMessages[errorKey]);
455
+ }
434
456
  this.duetBlur.emit({
435
457
  component: "duet-date-picker",
436
458
  });
@@ -520,6 +542,7 @@ const DuetDatePicker = class {
520
542
  this.open = false;
521
543
  this.focusedDay = new Date();
522
544
  this.inputValue = "";
545
+ this.internalValidityError = "";
523
546
  this.theme = "";
524
547
  this.expand = false;
525
548
  this.name = "";
@@ -554,10 +577,19 @@ const DuetDatePicker = class {
554
577
  this.validity = undefined;
555
578
  this.accessibleLiveError = "polite";
556
579
  }
557
- updateValidity() {
580
+ updateValidity(newValue, _oldValue, propName) {
581
+ if (propName === "value" && newValue === null) {
582
+ return;
583
+ }
558
584
  this.determineValidity(parseISODate(this.value));
585
+ if (this.validity.valid) {
586
+ this.internalValidityError = "";
587
+ }
559
588
  }
560
589
  updateInternalValue() {
590
+ if (this.value === null) {
591
+ return;
592
+ }
561
593
  const parsedValue = parseISODate(this.value);
562
594
  const parsedInputValue = parseDate(this.inputValue);
563
595
  // an invalid or empty value should clear the input
@@ -735,7 +767,7 @@ const DuetDatePicker = class {
735
767
  if (maxDate) {
736
768
  maxYear = Math.min(maxYear, maxDate.getFullYear());
737
769
  }
738
- return (index.h(index.Host, { class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" } }, index.h("div", { class: "duet-date" }, index.h(DatePickerInput, { value: this.value, valueAsDate: valueAsDate, formattedValue: this.inputValue, language: this.language, onInput: this.handleInputChange, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.toggleOpen, name: this.name, disabled: this.disabled, error: this.error, role: this.role, required: this.required, theme: this.theme, tooltip: this.tooltip, tooltipDirection: this.tooltipDirection, labelHidden: this.labelHidden, placeholder: this.placeholder, inputLabel: this.label, identifier: this.identifier, buttonRef: element => (this.datePickerButton = element), inputRef: element => (this.datePickerInput = element), accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy, accessibleLiveError: this.accessibleLiveError, echoPlaceholder: this.echoPlaceholder, caption: this.caption })), index.h("div", { class: {
770
+ return (index.h(index.Host, { class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" } }, index.h("div", { class: "duet-date" }, index.h(DatePickerInput, { value: this.value, valueAsDate: valueAsDate, formattedValue: this.inputValue, language: this.language, onInput: this.handleInputChange, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.toggleOpen, name: this.name, disabled: this.disabled, error: this.error || this.internalValidityError || null, role: this.role, required: this.required, theme: this.theme, tooltip: this.tooltip, tooltipDirection: this.tooltipDirection, labelHidden: this.labelHidden, placeholder: this.placeholder, inputLabel: this.label, identifier: this.identifier, buttonRef: element => (this.datePickerButton = element), inputRef: element => (this.datePickerInput = element), accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy, accessibleLiveError: this.accessibleLiveError, echoPlaceholder: this.echoPlaceholder, caption: this.caption })), index.h("div", { class: {
739
771
  "duet-theme-turva": this.theme === "turva",
740
772
  "duet-date-dialog": true,
741
773
  left: this.direction === "left",
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const tokenUtils = require('./token-utils-ecc7f5a1.js');
11
11
  require('./tokens.module-cf303205.js');
@@ -58,7 +58,7 @@ const DuetSpacer = class {
58
58
  * Always the last one in the class.
59
59
  */
60
60
  render() {
61
- return (index.h(index.Host, { key: 'a1b6a9855c52785dc640ef0687b936220e386943', class: {
61
+ return (index.h(index.Host, { key: 'e3fa9f7e7f3f55ab6819a10d50c42a54a172f3c3', class: {
62
62
  "duet-spacer": true,
63
63
  "duet-spacer-xx-small": this.breakpoint === "xx-small",
64
64
  "duet-spacer-x-small": this.breakpoint === "x-small",
@@ -5,16 +5,16 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const jsUtils = require('./js-utils-92e24ba1.js');
11
11
  const keyboardUtils = require('./keyboard-utils-681e11ec.js');
12
- const languageUtils = require('./language-utils-8f7743a1.js');
12
+ const languageUtils = require('./language-utils-3372de6f.js');
13
13
  const tokens_module = require('./tokens.module-cf303205.js');
14
14
  const tokenUtils = require('./token-utils-ecc7f5a1.js');
15
15
  const createId = require('./create-id-1f8c438f.js');
16
16
  const stringUtils = require('./string-utils-7b13c16e.js');
17
- const errorcodes_utils = require('./errorcodes.utils-6fe27aab.js');
17
+ const errorcodes_utils = require('./errorcodes.utils-79df4fcd.js');
18
18
 
19
19
  //simple functional component that renders the data in the table
20
20
  const TableData = ({ data, groupId, alignment }, _children) => {
@@ -287,7 +287,7 @@ const DuetTable = class {
287
287
  });
288
288
  }
289
289
  render() {
290
- return (index.h(index.Host, { key: 'ae58f00a875348e1bfe6a6c15baa15ec447ceb56', class: {
290
+ return (index.h(index.Host, { key: 'b3ed604b2b5f0b8e31f7b90abc64693662bfef3d', class: {
291
291
  [`duet-table-${this.variation}`]: true,
292
292
  "duet-table-flattened": !this.matchesBreakpoint,
293
293
  // sticky only valid when in regular table layout
@@ -296,7 +296,7 @@ const DuetTable = class {
296
296
  "duet-m-0": this.margin === "none",
297
297
  "duet-theme-turva": this.theme === "turva",
298
298
  "duet-table-hide-head-visually": this.hideHeadVisually,
299
- } }, index.h("slot", { key: '4bcaeb88b3f25d2bf172207b2d0dc4b0187830e6' })));
299
+ } }, index.h("slot", { key: '29df6d3c640fbf3a7fa51b73323c3628246d3095' })));
300
300
  }
301
301
  get element() { return index.getElement(this); }
302
302
  static get watchers() { return {
@@ -1356,10 +1356,10 @@ const DuetUpload = class {
1356
1356
  this.externalUploadButton.accessibleLabel = `${this.externalUploadButton.innerText}. ${caption}`;
1357
1357
  }
1358
1358
  // @ts-ignore
1359
- return (index.h(index.Host, { key: '47088845ecb4eb7b0b6376abfb76fe4853e232ce', class: { "duet-m-0": this.margin === "none" } }, index.h("duet-fieldset", { key: '9174acaf5e4bb74a2a5e934f9472a8e0f81a00ab', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, index.h("slot", { key: '33c273073b711205849af1b8747129df8f5a49aa', name: "header" }), !this.files.size && (index.h("duet-empty-state", { key: '72e0b98ecb18243ace50165a56c54d4a5a1e80b6', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, index.h("duet-paragraph", { key: 'f399240107a2d820d694464eb17f1f8f15d416d3', margin: "none" }, this.fileListEmpty))), !!this.files.size && index.h("slot", { key: '9fd58a29bf405ee57f265ae9203a841d227ad7fa', name: "fileheader" }), !!this.files.size && (index.h("duet-upload-aria-status", { key: '29e911f2f7c2a58972849fdff257bff29796b155', 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 && index.h("slot", { key: '77c8c91b540940b1600438ef9ab90405ad74207a', name: "filefooter" }), index.h("slot", { key: '73fedfcd5c0da1b67641be714862cd53a538f1da', name: "uploadfooter" }), this.captionOnBottom && (index.h("duet-caption", { key: 'd3fcc02af5d23c9a5c63711aa7bf2c9007dd3c5c', margin: "none", size: "small" }, index.h("div", { key: '056115def027445826519a3835ad986b94034a19', class: "upload-bottom-caption" }, caption))), index.h("slot", { key: '441f7001a92cd16da7057dfd3322e69c889634ca', name: "afterfooter" }), !this.hideButton && (index.h(index.Fragment, { key: 'aeea5d8e263240e60e80626b60278cd69293d086' }, index.h("duet-spacer", { key: 'a5c3d8ad58100315f810e9eba30b4a7f807e35cd', size: "large" }), index.h("duet-button", { key: '5bd13f62f6eba606e15bd0906d4a128b2766ec62', 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 ||
1359
+ return (index.h(index.Host, { key: '0928fe31d31d2ec7481d2d183030d0ca5d1947ef', class: { "duet-m-0": this.margin === "none" } }, index.h("duet-fieldset", { key: '2c93b996af34d507e34e023448f0c1e4549a880d', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, index.h("slot", { key: '3bb648923cccffaa69e98860d83872f73916163e', name: "header" }), !this.files.size && (index.h("duet-empty-state", { key: '234af7db63e4a6a80b7377fa9f10119dceafeea5', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, index.h("duet-paragraph", { key: '0f19455051783737acd9e1bc63e6110769259e03', margin: "none" }, this.fileListEmpty))), !!this.files.size && index.h("slot", { key: 'da0921ac4e50a44e73754896b764ae09006b3108', name: "fileheader" }), !!this.files.size && (index.h("duet-upload-aria-status", { key: '628029484dce4779a873ec34178db780b1c2d6c8', 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 && index.h("slot", { key: '26e663f865b1cbdf0ba90075874e802de9305004', name: "filefooter" }), index.h("slot", { key: '6b916ac61c96bf8bca9538028970758dd4e4b5b5', name: "uploadfooter" }), this.captionOnBottom && (index.h("duet-caption", { key: 'c20ad82bc20844b36bebfa2992b6cac433cccf09', margin: "none", size: "small" }, index.h("div", { key: '4889907ac986c5f36a946c9f3d04c9a6821e7e4f', class: "upload-bottom-caption" }, caption))), index.h("slot", { key: '995c37faba55c6bc4b08b36aae53fce3a94cfd7d', name: "afterfooter" }), !this.hideButton && (index.h(index.Fragment, { key: '99f5276b9cef93ba5d427fc0d2074acb97902c39' }, index.h("duet-spacer", { key: '35fcdf7b38b7378541215a124a08c533d41b5f8b', size: "large" }), index.h("duet-button", { key: '310afacbfe68294b874e78c69a8a1dc8c5386681', 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 ||
1360
1360
  this.bytesMaxReached ||
1361
1361
  this.filesToUploadExceedsLimit ||
1362
- this.filesToUploadTotalSizeIsAboveMax) && (index.h(index.Fragment, { key: 'fdd3f06419a9c8437ddb1d962351059e93def138' }, index.h("duet-spacer", { key: 'e2c3381bd500af7106ff5588f94c506c5822ad20', size: "medium" }), index.h("duet-alert", { key: '0c263312767097ef7a49ccced847b8e152a389bd', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && errorcodes_utils.getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && errorcodes_utils.getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && errorcodes_utils.getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && errorcodes_utils.getI18nError("duet-upload-203", this.errorCodes)))), index.h("duet-visually-hidden", { key: '7911b165d5356494f0b0226780bc2661631f0cb0', "aria-hidden": "true" }, index.h("input", { key: '1731f7a716bc198465165d1e9cda99619e3a691f', ref: input => {
1362
+ this.filesToUploadTotalSizeIsAboveMax) && (index.h(index.Fragment, { key: '71f40749e207e7619be153e162dd06f86e594e74' }, index.h("duet-spacer", { key: 'c1b60f29904f00337d6a5fb5a27c264cda066af3', size: "medium" }), index.h("duet-alert", { key: 'f531e160c81ff5d39a4d1a7ceb212df79f87f247', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && errorcodes_utils.getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && errorcodes_utils.getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && errorcodes_utils.getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && errorcodes_utils.getI18nError("duet-upload-203", this.errorCodes)))), index.h("duet-visually-hidden", { key: 'eaf2283056f5c33fc56a2df78c6e0889c2f5858c', "aria-hidden": "true" }, index.h("input", { key: '832fa6c617a6316638d9cfffad7c90bc34612deb', ref: input => {
1363
1363
  this.nativeInput = input;
1364
1364
  }, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
1365
1365
  "duet-upload": true,
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
 
11
11
  const duetEmptyStateCss = "*,*::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%;height:100%}.duet-empty-state{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%;padding:48px;color:rgb(0, 41, 77);text-align:center;background:rgb(245, 248, 250);border-radius:4px}.duet-empty-state.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(245, 245, 247)}";
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
- const slotUtils = require('./slot-utils-85cd307f.js');
11
+ const slotUtils = require('./slot-utils-8015a7e6.js');
12
12
 
13
13
  const duetFieldsetCss = "*,*::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-bottom:12px !important;display:block;width:100%}:host(.duet-m-0){margin:0 !important}fieldset{position:relative;width:100%;min-width:0;border:0}fieldset legend{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-legend-wrapper{position:relative;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-weight:600;line-height:1.5;color:rgb(0, 41, 77);text-align:left;background:transparent}.duet-legend-wrapper.duet-legend-compact:not(.duet-legend-has-caption){line-height:1.25}.duet-theme-turva .duet-legend-wrapper{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-fieldset-label{margin-bottom:12px !important;margin-top:8px}.duet-legend-has-caption .duet-fieldset-label{margin-bottom:6px !important}.duet-legend-has-tooltip .duet-fieldset-label{padding-right:36px}@media (min-width: 48em){.duet-legend-has-tooltip .duet-fieldset-label{margin-bottom:3px !important;padding-right:0}}@media (min-width: 48em){.duet-legend-has-tooltip.duet-legend-has-caption .duet-fieldset-label{margin-bottom:-3px !important}}.duet-fieldset-caption{margin-bottom:12px !important}.duet-fieldset-help{display:block;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;line-height:1.25;color:rgb(222, 35, 98);border-radius:4px}.duet-fieldset-help span{display:block;margin-top:12px}.duet-theme-turva .duet-fieldset-help{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(224, 42, 13)}::slotted(duet-tooltip){position:absolute;top:4px;right:0}@media (min-width: 48em){::slotted(duet-tooltip){position:relative;right:auto}}.duet-legend-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}";
14
14
  const DuetFieldsetStyle0 = duetFieldsetCss;
@@ -44,20 +44,20 @@ const DuetFieldset = class {
44
44
  * Always the last one in the class.
45
45
  */
46
46
  render() {
47
- return (index.h(index.Host, { key: '796efaecbe6ebd2dd9ca28bd48a7c0ca625171fe', class: { "duet-m-0": this.margin === "none" } }, index.h("fieldset", { key: '637226c8d070993fade17dc1cb44e8db6c070d43', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
47
+ return (index.h(index.Host, { key: 'f1f3d444a12a63dc805ed39d5df2127e5bb1a6b0', class: { "duet-m-0": this.margin === "none" } }, index.h("fieldset", { key: 'ee4f9a2ecd2929ec5c3a8ef1451d576455fdeb3c', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
48
48
  // NVDA and VoiceOver do not yet support aria-errormessage
49
49
  // once they do, we can remove errors from the aria-describedby
50
50
  // aria-errormessage={this.error ? this.errorId : null}
51
51
  class: {
52
52
  "duet-fieldset": true,
53
53
  "duet-theme-turva": this.theme === "turva",
54
- } }, index.h("legend", { key: 'a49cbefbe852732e4b2b4326acd0a462d90106a6', id: this.labelId }, index.h(this.labelHeadingLevel, { key: 'f5f1518e027266a0e2d584fa1a6b4376f5db78e7' }, this.label), this.caption && index.h("span", { key: 'cb39f09028e0dd245b2df28580493b6de584ed3c' }, this.caption)), index.h("div", { key: '06d122ad9ce4c683b3eabfba9fb75db65a098eb1', class: {
54
+ } }, index.h("legend", { key: 'f28701a95d80391e51b4da87c959632b5a8d1ffb', id: this.labelId }, index.h(this.labelHeadingLevel, { key: '00174cf4da53b36e02cbb1baa6e7f394e4837013' }, this.label), this.caption && index.h("span", { key: 'c9cd441e8bca0154ef1813ddfbde9dfaf340c5aa' }, this.caption)), index.h("div", { key: '50f3f035319e6d60aef074d6469e4a61577fc15b', class: {
55
55
  "duet-legend-wrapper": true,
56
56
  "duet-legend-has-caption": !!this.caption,
57
57
  "duet-legend-has-tooltip": this.hasTooltip,
58
58
  "duet-legend-hidden": this.labelHidden,
59
59
  "duet-legend-compact": this.compactLabel,
60
- } }, index.h("div", { key: '8f82b4f9980bf6681e5fee90a4b781e65e23f2b0', class: "duet-fieldset-label" }, index.h("span", { key: 'eae1f845e20acf1b968997393e62ad8ccd3b0cc8', "aria-hidden": "true" }, this.label), index.h("slot", { key: '7148e9ad377dce9d87116e9ece609df2173f3331', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (index.h("div", { key: '948abdedb43e0de5a965d4f03d21dbb7c138b55c', class: "duet-fieldset-caption", "aria-hidden": "true" }, index.h("duet-caption", { key: '94a4ac15cefd5f8dc70f52ba257b448f9ca3c74a', theme: this.theme, margin: "none" }, this.caption)))), index.h("slot", { key: '287a9d3649d0d24ae4bca3aa44009947ea3758fe' }), index.h("span", { key: '2b4acb42a4e06002428b01c170a5a003dfe3654b', class: "duet-fieldset-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && index.h("span", { key: '93e6611df1d44a5a657e69ac71402366aa7d82cd' }, this.error)))));
60
+ } }, index.h("div", { key: '3295a828e865f3a098633a3dc6ef7a3be348aa26', class: "duet-fieldset-label" }, index.h("span", { key: '72f62a24e4815ff4a9807c030c32b6dedef0d667', "aria-hidden": "true" }, this.label), index.h("slot", { key: '890f95bd218c8b0bbdfc1a408c1449fa2b56afbb', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (index.h("div", { key: '8dc56ad89eb4bac4a5e4563f45200a8d2993dc47', class: "duet-fieldset-caption", "aria-hidden": "true" }, index.h("duet-caption", { key: '2321bfb5f6e91b96fbdf2514e697e9de2265b22d', theme: this.theme, margin: "none" }, this.caption)))), index.h("slot", { key: '27c31b44f71cdf4b5a4a7902c4df395f175f2e8e' }), index.h("span", { key: '31d68af77217b877f00493b906a41a03eb67672c', class: "duet-fieldset-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && index.h("span", { key: '131471978f9b59dad56ad633dd52609578c66c62' }, this.error)))));
61
61
  }
62
62
  get element() { return index.getElement(this); }
63
63
  };
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
 
11
11
  const duetFileChooserCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.container{display:flex;flex-direction:row;gap:8px;align-items:center}.container .label{margin-bottom:8px}";
@@ -5,13 +5,13 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const actionNewWindowSmall = require('./action-new-window-small-fa51dfb9.js');
10
10
  const commonStrings = require('./common-strings-2984301e.js');
11
11
  const themeableComponent = require('./themeable-component-996b489c.js');
12
12
  const keyboardUtils = require('./keyboard-utils-681e11ec.js');
13
- const languageUtils = require('./language-utils-8f7743a1.js');
14
- const slotUtils = require('./slot-utils-85cd307f.js');
13
+ const languageUtils = require('./language-utils-3372de6f.js');
14
+ const slotUtils = require('./slot-utils-8015a7e6.js');
15
15
  const stringUtils = require('./string-utils-7b13c16e.js');
16
16
 
17
17
  const duetFooterCss = "*,*::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;flex-shrink:0;width:100%}::slotted([slot=info]){padding:0 28px;margin-top:0;margin-bottom:16px}@media (min-width: 62em){::slotted([slot=info]){padding:0;margin-top:calc(20px - 0.5em);margin-bottom:0}}.duet-footer{display:block;width:100%;padding-top:24px;padding-bottom:16px;margin-top:48px;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.5;color:rgb(255, 255, 255);text-align:left;background:rgb(0, 41, 77)}.duet-footer.duet-p-0{padding:0 !important}.duet-footer.duet-m-0{margin:0 !important}@media (min-width: 62em){.duet-footer{padding-top:48px;padding-bottom:36px}}.duet-footer.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)}.duet-footer a{color:rgb(255, 255, 255);text-decoration:none}@media (min-width: 62em){.duet-footer a{border-radius:4px}}.duet-footer a:focus{outline:0}:host(.user-is-tabbing) .duet-footer a:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-theme-turva a:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-footer-wrapper{position:relative;margin:0 auto}@media (min-width: 62em){.duet-footer-wrapper{padding:0 72px 0 48px}}@media (min-width: 76.25em){.duet-footer-wrapper{max-width:1110px;padding:0 20px 0 0}}.duet-footer-top{width:100%}@media (min-width: 62em){.duet-footer-top{display:flex;flex-direction:row;align-items:center}.duet-footer-top.duet-has-info{align-items:flex-start}}.duet-footer-top .footer-top-logo{flex-grow:1}.duet-footer-top .footer-top-right-container{flex-grow:1}@media (min-width: 62em){.duet-footer-top .footer-top-right-container{text-align:right}}.duet-footer-top .footer-top-items{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding-left:28px}@media (min-width: 62em){.duet-footer-top .footer-top-items{flex-direction:row;justify-content:flex-end}}duet-logo{margin-bottom:24px;margin-left:16px !important}@media (min-width: 62em){duet-logo{margin-bottom:0;margin-left:0 !important}}.duet-footer-link{padding:16px !important;display:flex;flex-direction:row;align-items:center;width:100%;font-weight:600;border-bottom:1px solid rgba(255, 255, 255, 0.2);transition:background-color 300ms ease}@media (min-width: 36em){.duet-footer-link{padding-right:20px !important;padding-left:28px !important}}@media (min-width: 62em){.duet-footer-link{width:auto;min-width:0;padding-right:0 !important;padding-left:0 !important;border:0}}.duet-footer-link:first-of-type{margin-top:20px;border-top:1px solid rgba(255, 255, 255, 0.2)}@media (min-width: 62em){.duet-footer-link:first-of-type{margin:0;border:0}}.duet-footer-link span{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duet-footer-link:hover{background:rgba(0, 0, 0, 0.1)}@media (min-width: 62em){.duet-footer-link:hover{background:transparent}}.duet-footer-menu{padding:20px !important;display:flex;gap:2rem;padding-left:28px !important;font-size:0.875rem}@media (min-width: 36em){.duet-footer-menu{padding:28px !important}}@media (min-width: 62em){.duet-footer-menu{padding-right:0 !important;padding-left:8px !important}}.duet-footer-menu a{display:inline-block;text-decoration:none;overflow-wrap:break-word}.duet-footer-menu a:hover,.duet-footer-menu a:focus{text-decoration:underline}.duet-footer-menu a:hover .duet-footer-divider,.duet-footer-menu a:focus .duet-footer-divider{text-decoration:none}.duet-footer-menu .duet-footer-divider{display:inline-block;margin:0 8px}.duet-footer-menu .duet-footer-divider-copyright{display:none}.duet-footer-menu .duet-footer-menu-links{display:block;flex:1}@media (min-width: 62em){.duet-footer-menu .duet-footer-menu-links{text-align:right}}.duet-footer-menu a:last-of-type .duet-footer-divider{display:none}.duet-footer-copyright{display:none;font-size:0.875rem;color:rgb(255, 255, 255)}@media (min-width: 62em){.duet-footer-copyright{display:inline}}.duet-footer-copyright.duet-footer-copyright-mobile{display:block;padding-top:0.5rem;padding-bottom:1.25rem;padding-left:28px;text-align:left}@media (min-width: 62em){.duet-footer-copyright.duet-footer-copyright-mobile{display:none}}.duet-footer-simple{padding:0;margin:0;margin-top:16px;color:rgb(0, 41, 77);background:transparent !important;border-top:1px solid rgb(225, 227, 230)}.duet-footer-simple .duet-footer-wrapper{max-width:100%;padding:0 20px;margin:0}@media (min-width: 62em){.duet-footer-simple .duet-footer-wrapper{padding:0 36px}}@media (min-width: 106.25em){.duet-footer-simple .duet-footer-wrapper{padding:0 48px}}.duet-footer-simple .duet-footer-copyright,.duet-footer-simple .duet-footer-menu a{color:rgb(0, 41, 77)}.duet-footer-simple .duet-footer-menu{padding:20px 0 !important}.duet-footer-simple .duet-footer-copyright-mobile{padding-left:0}.duet-footer-simple.duet-theme-turva{color:rgb(23, 28, 58);border-color:rgb(228, 228, 230)}.duet-footer-simple.duet-theme-turva .duet-footer-copyright,.duet-footer-simple.duet-theme-turva .duet-footer-menu a{color:rgb(23, 28, 58)}.duet-footer-external{display:inline-block;margin-left:4px;color:rgb(0, 119, 179)}.duet-theme-turva .duet-footer-external{color:rgb(255, 255, 255)}.duet-footer-simple.duet-theme-turva .duet-footer-external{color:rgb(198, 12, 48)}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const tokens = require('./tokens-1c133754.js');
10
10
  const watchOptions = require('./watch-options-30a12622.js');
11
11
  const themeableComponent = require('./themeable-component-996b489c.js');
@@ -5,14 +5,14 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const formSearch = require('./form-search-d61b2843.js');
10
10
  const tokens = require('./tokens-1c133754.js');
11
11
  const bodyScrollLock_es6 = require('./bodyScrollLock.es6-dd2d7d91.js');
12
12
  const commonStrings = require('./common-strings-2984301e.js');
13
13
  const themeableComponent = require('./themeable-component-996b489c.js');
14
14
  const keyboardUtils = require('./keyboard-utils-681e11ec.js');
15
- const languageUtils = require('./language-utils-8f7743a1.js');
15
+ const languageUtils = require('./language-utils-3372de6f.js');
16
16
  const stringUtils = require('./string-utils-7b13c16e.js');
17
17
  const actionArrowDownSmall = require('./action-arrow-down-small-ef77a2d1.js');
18
18
  const tokens_module = require('./tokens.module-cf303205.js');
@@ -672,7 +672,7 @@ const DuetLogo = class {
672
672
  */
673
673
  render() {
674
674
  const TagName = this.href ? "a" : "div";
675
- return (index.h(index.Host, { key: '5d084305a0696301d4a6821758e0689a4c7cb24b', class: { "duet-m-0": this.margin === "none" } }, index.h(TagName, { key: 'bd7ff8798ac2294e92714074abc3a40ac09f84a3', href: this.href, ref: link => (this.nativeLink = link), "aria-label": this.accessibleLabel, class: {
675
+ return (index.h(index.Host, { key: 'cd53d85f163bc76250be1e5514b00bf6769e7f54', class: { "duet-m-0": this.margin === "none" } }, index.h(TagName, { key: '8ec59c6823257e298b0e298a7d6eda2c40725d83', href: this.href, ref: link => (this.nativeLink = link), "aria-label": this.accessibleLabel, class: {
676
676
  "duet-logo": true,
677
677
  [this.size]: true,
678
678
  "duet-theme-turva": this.theme === "turva",
@@ -5,12 +5,12 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const actionNewWindowSmall = require('./action-new-window-small-fa51dfb9.js');
10
10
  const commonStrings = require('./common-strings-2984301e.js');
11
11
  const themeableComponent = require('./themeable-component-996b489c.js');
12
- const languageUtils = require('./language-utils-8f7743a1.js');
13
- const slotUtils = require('./slot-utils-85cd307f.js');
12
+ const languageUtils = require('./language-utils-3372de6f.js');
13
+ const slotUtils = require('./slot-utils-8015a7e6.js');
14
14
  const stringUtils = require('./string-utils-7b13c16e.js');
15
15
 
16
16
  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(0, 41, 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(0, 41, 77);background-color:rgb(255, 255, 255);background-image:linear-gradient(rgb(243, 249, 252), #f9fcfe)}.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(#f9fcfe, 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, 245, 247), #fafafb)}.duet-hero.duet-hero-light.duet-theme-turva::before,.duet-hero.duet-hero-with-image.duet-theme-turva::before{background-image:linear-gradient(#fafafb, rgb(255, 255, 255))}.duet-hero.duet-hero-gray{color:rgb(0, 41, 77);background:rgb(245, 248, 250)}.duet-hero.duet-hero-gray.duet-theme-turva{background:rgb(245, 245, 247)}@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(230, 242, 248);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;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;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(225, 227, 230);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, 77, 128) !important;background:transparent !important}.duet-theme-turva .duet-hero-link:hover,.duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow{color:rgb(148, 9, 37) !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(225, 227, 230)}@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}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const themeableComponent = require('./themeable-component-996b489c.js');
10
10
  const tokenUtils = require('./token-utils-ecc7f5a1.js');
11
11
  require('./tokens.module-cf303205.js');
@@ -175,11 +175,11 @@ const DuetIcon = class {
175
175
  : {};
176
176
  const iconStyles = Object.assign({}, iconRotationStyles);
177
177
  const shapeStyle = this.shape === "brand-rotated" ? "duet-icon-shape-brand" : `duet-icon-shape-${this.shape}`;
178
- return (index.h(index.Host, { key: '036bd71920292b0eb364007a8d38b01a01e07ce3', class: {
178
+ return (index.h(index.Host, { key: 'e2a6207edfe7af905325a3fe412f97a529c93ed8', class: {
179
179
  "duet-m-0": this.margin === "none",
180
180
  "duet-icon-has-outline": !!this.outline,
181
181
  "duet-icon-has-background": !!this.background,
182
- } }, index.h("span", { key: '2959987408354e2be6c726b2d66087479c0651f0', "aria-hidden": "true", style: styles, class: {
182
+ } }, index.h("span", { key: '0bd4b9de6c7c4fb0a2663fc16d742e9e0223aa5d', "aria-hidden": "true", style: styles, class: {
183
183
  "duet-icon": true,
184
184
  "duet-theme-turva": this.theme === "turva",
185
185
  "duet-theme-default": this.theme === "default",
@@ -188,7 +188,7 @@ const DuetIcon = class {
188
188
  [shapeStyle]: true,
189
189
  rotated: this.shape === "brand-rotated" && this.theme !== "turva",
190
190
  "duet-icon-not-responsive": !this.responsive,
191
- } }, index.h("span", { key: 'e75af917059142d7f015109e7224fba0cc2e18b3', "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 }))));
191
+ } }, index.h("span", { key: 'dca93a95c7f578585dcd6030f7d2bbdf50766ed5', "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 }))));
192
192
  }
193
193
  get element() { return index.getElement(this); }
194
194
  static get watchers() { return {
@@ -5,14 +5,14 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const formSearch = require('./form-search-d61b2843.js');
10
10
  const themeableComponent = require('./themeable-component-996b489c.js');
11
11
  const createId = require('./create-id-1f8c438f.js');
12
12
  const inputUtils = require('./input-utils-1096a2c5.js');
13
13
  const keyboardUtils = require('./keyboard-utils-681e11ec.js');
14
- const languageUtils = require('./language-utils-8f7743a1.js');
15
- const slotUtils = require('./slot-utils-85cd307f.js');
14
+ const languageUtils = require('./language-utils-3372de6f.js');
15
+ const slotUtils = require('./slot-utils-8015a7e6.js');
16
16
  const tokenUtils = require('./token-utils-ecc7f5a1.js');
17
17
  require('./string-utils-7b13c16e.js');
18
18
  require('./tokens.module-cf303205.js');
@@ -5,11 +5,11 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-0c9fd2f8.js');
8
+ const index = require('./index-290ab697.js');
9
9
  const isInternetExplorer = require('./is-internet-explorer-e7f58ebc.js');
10
- const slotUtils = require('./slot-utils-85cd307f.js');
10
+ const slotUtils = require('./slot-utils-8015a7e6.js');
11
11
 
12
- const duetLayoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=page-heading]){width:calc(100% + 32px);margin:0 -16px 0 -16px}@media (min-width: 36em){::slotted([slot=page-heading]){width:calc(100% + 56px);margin:0 -28px 0 -28px}}@media (min-width: 62em){::slotted([slot=page-heading]){width:calc(100% + 112px);margin:0 -56px 0 -56px}}:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 32px);margin:0 -16px 0 -16px}@media (min-width: 36em){:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 96px);margin:0 -48px 0 -48px}}@media (min-width: 48em){:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 144px);margin:0 -72px 0 -72px}}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-middle) .heading-wrapper{padding:0 !important}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout{position:relative;padding:0 16px;margin:48px auto 36px;overflow-x:clip}@media (max-width: 20.5em){.duet-layout.padding-xxx-small{padding:0}}@media (max-width: 22.5em){.duet-layout.padding-xx-small{padding:0}}@media (max-width: 35.9375em){.duet-layout.padding-x-small{padding:0}}@media (min-width: 36em){.duet-layout.padding-small{padding:0}}@media (min-width: 48em){.duet-layout.padding-medium{padding:0}}@media (min-width: 62em){.duet-layout.padding-large{padding:0}}@media (min-width: 64.0625em){.duet-layout.padding-x-large{padding:0}}@media (min-width: 76.25em){.duet-layout.padding-xx-large{padding:0}}@media (min-width: 106.25em){.duet-layout.padding-xxx-large{padding:0}}@media (min-width: 36em){.duet-layout{margin-top:72px}}.duet-layout.duet-layout-has-top{margin-top:0}.duet-layout.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}.duet-layout.duet-center{display:flex;align-items:center;justify-content:center;width:100%;max-width:888px}@media (min-width: 36em){.duet-layout.duet-center{padding:0 48px}}@media (min-width: 48em){.duet-layout.duet-center{padding:0 72px}}@media (min-width: 62em){.duet-layout.duet-center{width:100%}}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px;margin-bottom:48px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main,.duet-sidebar,.duet-layout-top,.duet-layout-bottom{display:block;width:100%}.duet-layout-top{position:relative;display:block;width:100%;margin:72px auto 0}.duet-layout-top.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}.duet-layout-top .duet-layout-top-wrapper{padding:0 20px;margin:0 auto}@media (min-width: 36em){.duet-layout-top .duet-layout-top-wrapper{padding:0 28px}}@media (min-width: 62em){.duet-layout-top .duet-layout-top-wrapper{padding:0 56px}}@media (min-width: 76.25em){.duet-layout-top .duet-layout-top-wrapper{max-width:1110px;padding:0}}.duet-center .duet-layout-top-wrapper{max-width:888px}@media (min-width: 36em){.duet-center .duet-layout-top-wrapper{padding:0 48px}}@media (min-width: 48em){.duet-center .duet-layout-top-wrapper{padding:0 72px}}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}@media (min-width: 62em){.duet-sidebar{min-width:256px;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container{width:auto;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container.has-tabs{margin-top:89px}}@media (min-width: 62em){.duet-sidebar-container.sticky{position:sticky}.duet-sidebar-container.sticky.with-links{top:calc(3rem + 20px)}.duet-sidebar-container.sticky.without-links{top:calc(4rem + 20px)}}";
12
+ const duetLayoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=page-heading]){width:calc(100% + 32px);margin:0 -16px 0 -16px}@media (min-width: 36em){::slotted([slot=page-heading]){width:calc(100% + 56px);margin:0 -28px 0 -28px}}@media (min-width: 62em){::slotted([slot=page-heading]){width:calc(100% + 112px);margin:0 -56px 0 -56px}}:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 32px);margin:0 -16px 0 -16px}@media (min-width: 36em){:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 96px);margin:0 -48px 0 -48px}}@media (min-width: 48em){:host(.center) ::slotted([slot=page-heading]){width:calc(100% + 144px);margin:0 -72px 0 -72px}}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-middle) .heading-wrapper{padding:0 !important}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout-wrapper{display:block;margin:48px 0 36px;overflow-x:clip}@media (min-width: 36em){.duet-layout-wrapper{margin-top:72px}}@media (min-width: 62em){.duet-layout-wrapper{margin-bottom:48px}}.duet-layout-wrapper.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}.duet-layout-wrapper>*{width:100%}.duet-layout{position:relative;padding:0 16px;margin:0 auto}@media (max-width: 20.5em){.duet-layout.padding-xxx-small{padding:0}}@media (max-width: 22.5em){.duet-layout.padding-xx-small{padding:0}}@media (max-width: 35.9375em){.duet-layout.padding-x-small{padding:0}}@media (min-width: 36em){.duet-layout.padding-small{padding:0}}@media (min-width: 48em){.duet-layout.padding-medium{padding:0}}@media (min-width: 62em){.duet-layout.padding-large{padding:0}}@media (min-width: 64.0625em){.duet-layout.padding-x-large{padding:0}}@media (min-width: 76.25em){.duet-layout.padding-xx-large{padding:0}}@media (min-width: 106.25em){.duet-layout.padding-xxx-large{padding:0}}.duet-layout.duet-center{display:flex;align-items:center;justify-content:center;width:100%;max-width:888px}@media (min-width: 36em){.duet-layout.duet-center{padding:0 48px}}@media (min-width: 48em){.duet-layout.duet-center{padding:0 72px}}@media (min-width: 62em){.duet-layout.duet-center{width:100%}}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main,.duet-sidebar,.duet-layout-top,.duet-layout-bottom{display:block;width:100%}.duet-layout-top{position:relative;display:block;width:100%}.duet-layout-top .duet-layout-top-wrapper{padding:0 20px;margin:0 auto}@media (min-width: 36em){.duet-layout-top .duet-layout-top-wrapper{padding:0 28px}}@media (min-width: 62em){.duet-layout-top .duet-layout-top-wrapper{padding:0 56px}}@media (min-width: 76.25em){.duet-layout-top .duet-layout-top-wrapper{max-width:1110px;padding:0}}.duet-center .duet-layout-top-wrapper{max-width:888px}@media (min-width: 36em){.duet-center .duet-layout-top-wrapper{padding:0 48px}}@media (min-width: 48em){.duet-center .duet-layout-top-wrapper{padding:0 72px}}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}@media (min-width: 62em){.duet-sidebar{min-width:256px;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container{width:auto;max-width:356px}}@media (min-width: 62em){.duet-sidebar-container.has-tabs{margin-top:89px}}@media (min-width: 62em){.duet-sidebar-container.sticky{position:sticky}.duet-sidebar-container.sticky.with-links{top:calc(3rem + 20px)}.duet-sidebar-container.sticky.without-links{top:calc(4rem + 20px)}}";
13
13
  const DuetLayoutStyle0 = duetLayoutCss;
14
14
 
15
15
  const DuetLayout = class {
@@ -50,23 +50,20 @@ const DuetLayout = class {
50
50
  center: this.center,
51
51
  "duet-middle": this.middle,
52
52
  "duet-ie": isInternetExplorer.isInternetExplorer(),
53
- } }, this.hasTop && (index.h("div", { key: '97f256b275cea1d8303d3c2b2fafcbc83ab17227', class: {
53
+ } }, index.h("div", { key: '0db8d45f16f7bec516c0b831393cb05f962bfdb8', class: { "duet-layout-wrapper": true, "duet-m-0": this.margin === "none" } }, this.hasTop && (index.h("div", { key: 'b65a92ce153b41318cb757b3457dfc470c11c4c6', class: {
54
54
  "duet-layout-top": true,
55
- "duet-m-0": this.margin === "none",
56
55
  "duet-center": this.center,
57
- } }, index.h("div", { key: 'e08dfb887503e2db0e2d315bce69c4243ca0a368', class: "duet-layout-top-wrapper" }, index.h("slot", { key: 'a0a214dab158a6228b6d8e69a4ae77b51dc3da68', name: "top" })))), index.h("div", { key: '37a6738ab3a9695408026c8d83bbc1dbeb17490e', class: {
56
+ } }, index.h("div", { key: '777fc5b75ff85428b7234d94739f7471f5dc8011', class: "duet-layout-top-wrapper" }, index.h("slot", { key: '513fa6d80b00980efc02c454889726f24b3af6a9', name: "top" })))), index.h("div", { key: '8d24cdd9f0a38cadf71cf74df0f44c547a9fb4f3', class: {
58
57
  "duet-layout": true,
59
- "duet-layout-has-top": this.hasTop,
60
58
  "has-sidebar": this.hasSidebar,
61
- "duet-m-0": this.margin === "none",
62
59
  "duet-center": this.center,
63
60
  [`padding-${this.paddingBreakpoint}`]: !!this.paddingBreakpoint,
64
- } }, index.h("main", { key: '9250e251d618850e3ca2a16c7e15f0d921b1cc0f', class: "duet-main" }, this.hasPageHeading && index.h("slot", { key: '6bd2301fc4f57c18bab92ce7278ec037f38971d4', name: "page-heading" }), index.h("slot", { key: 'd37514f4cc602e46ecbc78e87647076c9e550c94', name: "main" })), this.hasSidebar && (index.h("aside", { key: '6ad7bd59e98bfe3123a1cccce343fb0f158387e0', class: "duet-sidebar" }, index.h("div", { key: '6476ae186902b93bac02f5512c33ca2419202d8a', class: {
61
+ } }, index.h("main", { key: 'e98b4d6704819e6a07f5ccc7b29227d6623e2bc2', class: "duet-main" }, this.hasPageHeading && index.h("slot", { key: '642f458827bfce2732c708d5cff00b382180a202', name: "page-heading" }), index.h("slot", { key: '929847b72cf01ed5be66b9fdc6e0e204281d0eab', name: "main" })), this.hasSidebar && (index.h("aside", { key: '9cf127c89c37b47642d7d3234476c16d5c38fd11', class: "duet-sidebar" }, index.h("div", { key: '043863761695cf57b596ab6759e99ae32e09f432', class: {
65
62
  "duet-sidebar-container": true,
66
63
  "has-tabs": this.tabs,
67
64
  sticky: this.sticky,
68
65
  [this.stickyDistance]: this.sticky,
69
- } }, index.h("slot", { key: '4406fe27dbd20dd18448aa76800be82b3333c306', name: "sidebar" })))))));
66
+ } }, index.h("slot", { key: '772f164951137306ec8289a095a829fd2fc0a87b', name: "sidebar" }))))))));
70
67
  }
71
68
  get element() { return index.getElement(this); }
72
69
  };