@duetds/components 5.3.5 → 5.4.2
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.
- package/hydrate/index.js +134 -96
- package/lib/cjs/duet-action-button.cjs.entry.js +25 -7
- package/lib/cjs/duet-alert.cjs.entry.js +1 -1
- package/lib/cjs/duet-badge.cjs.entry.js +1 -1
- package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
- package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
- package/lib/cjs/duet-button_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-caption_4.cjs.entry.js +2 -2
- package/lib/cjs/duet-card.cjs.entry.js +2 -2
- package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
- package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
- package/lib/cjs/duet-combobox.cjs.entry.js +2 -2
- package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
- package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
- package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-editable-table_3.cjs.entry.js +18 -13
- package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
- package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
- package/lib/cjs/duet-footer.cjs.entry.js +1 -1
- package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-header_2.cjs.entry.js +51 -49
- package/lib/cjs/duet-hero.cjs.entry.js +4 -3
- package/lib/cjs/duet-icon.cjs.entry.js +2 -2
- package/lib/cjs/duet-input_2.cjs.entry.js +21 -4
- package/lib/cjs/duet-layout.cjs.entry.js +1 -1
- package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-modal.cjs.entry.js +2 -2
- package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
- package/lib/cjs/duet-pagination_2.cjs.entry.js +2 -2
- package/lib/cjs/duet-progress.cjs.entry.js +1 -1
- package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
- package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
- package/lib/cjs/duet-select.cjs.entry.js +1 -1
- package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
- package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
- package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
- package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
- package/lib/cjs/duet-tray.cjs.entry.js +1 -1
- package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
- package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
- package/lib/cjs/duet.cjs.js +2 -2
- package/lib/cjs/{focus-utils-84c29960.js → focus-utils-9226aef7.js} +1 -1
- package/lib/cjs/{index-772cc42f.js → index-60a8ec8a.js} +8 -1
- package/lib/cjs/{js-utils-be1d29ae.js → js-utils-134e0318.js} +11 -0
- package/lib/cjs/loader.cjs.js +2 -2
- package/lib/cjs/{token-utils-50a1f7e2.js → token-utils-fef5b4eb.js} +1 -0
- package/lib/collection/components/duet-action-button/duet-action-button.js +44 -8
- package/lib/collection/components/duet-choice-group/duet-choice-group.js +7 -1
- package/lib/collection/components/duet-collapsible/duet-collapsible.js +1 -1
- package/lib/collection/components/duet-header/duet-header-icon.js +1 -1
- package/lib/collection/components/duet-header/duet-header.css +69 -43
- package/lib/collection/components/duet-header/duet-header.js +117 -114
- package/lib/collection/components/duet-hero/duet-hero.js +13 -5
- package/lib/collection/components/duet-input/duet-input.js +21 -3
- package/lib/collection/components/duet-upload/duet-upload.js +12 -12
- package/lib/collection/components/duet-upload/upload-validators.js +6 -1
- package/lib/collection/utils/js-utils.js +11 -0
- package/lib/collection/utils/token-utils.js +1 -1
- package/lib/custom-elements-bundle/index.js +132 -73
- package/lib/duet/duet.esm.js +1 -1
- package/lib/duet/duet.js +1 -1
- package/lib/duet/p-07a2ad03.entry.js +4 -0
- package/lib/duet/{p-dbb4a588.js → p-0b3f675e.js} +0 -0
- package/lib/duet/{p-0b426a83.system.entry.js → p-0dbd00e1.system.entry.js} +1 -1
- package/lib/duet/p-12606a4b.entry.js +4 -0
- package/lib/duet/p-21321528.system.entry.js +4 -0
- package/lib/duet/{p-8f74030a.entry.js → p-28f87990.entry.js} +1 -1
- package/lib/duet/{p-4e8f57dd.entry.js → p-2ac07ac9.entry.js} +1 -1
- package/lib/duet/{p-05ff2672.entry.js → p-2b155bd9.entry.js} +1 -1
- package/lib/duet/{p-acaedb00.system.js → p-309e3417.system.js} +3 -3
- package/lib/duet/p-30fc343d.system.entry.js +4 -0
- package/lib/duet/{p-12b8cb2f.system.entry.js → p-322676e3.system.entry.js} +1 -1
- package/lib/duet/{p-c0d98307.system.entry.js → p-33a0c070.system.entry.js} +1 -1
- package/lib/duet/{p-92639d0b.system.js → p-34ea0849.system.js} +0 -0
- package/lib/duet/{p-7dfe1c16.entry.js → p-440e2c47.entry.js} +1 -1
- package/lib/duet/{p-e6fdaa31.entry.js → p-451adbf4.entry.js} +1 -1
- package/lib/duet/{p-3f50d9bd.system.entry.js → p-46b83696.system.entry.js} +1 -1
- package/lib/duet/{p-cdba4c82.entry.js → p-46d9a853.entry.js} +1 -1
- package/lib/duet/{p-4260e8b5.system.entry.js → p-48a036c1.system.entry.js} +1 -1
- package/lib/duet/{p-8a472df4.system.entry.js → p-4dd79e38.system.entry.js} +1 -1
- package/lib/duet/{p-9071d4e1.system.entry.js → p-526e6d8e.system.entry.js} +1 -1
- package/lib/duet/{p-e00170a2.system.entry.js → p-56a80c32.system.entry.js} +1 -1
- package/lib/duet/{p-dfa92326.entry.js → p-56f17656.entry.js} +1 -1
- package/lib/duet/{p-b88b18c3.entry.js → p-590e8508.entry.js} +1 -1
- package/lib/duet/{p-43c1dcf5.entry.js → p-5a5117d4.entry.js} +1 -1
- package/lib/duet/{p-64a691e3.entry.js → p-5c1646f2.entry.js} +1 -1
- package/lib/duet/p-5ea398eb.entry.js +4 -0
- package/lib/duet/{p-4903478e.entry.js → p-5f528fa2.entry.js} +1 -1
- package/lib/duet/p-6002f3d2.system.js +4 -0
- package/lib/duet/{p-e908bfdc.system.entry.js → p-62303524.system.entry.js} +1 -1
- package/lib/duet/{p-b972e7b7.system.entry.js → p-6255147e.system.entry.js} +1 -1
- package/lib/duet/{p-3f1e781d.system.entry.js → p-63aea0dc.system.entry.js} +1 -1
- package/lib/duet/{p-ba0a4b7e.system.entry.js → p-64cbe9b7.system.entry.js} +1 -1
- package/lib/duet/p-65821960.entry.js +4 -0
- package/lib/duet/p-675d713b.entry.js +4 -0
- package/lib/duet/{p-c069f560.entry.js → p-67734fad.entry.js} +1 -1
- package/lib/duet/{p-fab89c9d.system.entry.js → p-67ed94fa.system.entry.js} +1 -1
- package/lib/duet/{p-16bc9a7e.system.entry.js → p-6ab6ce4f.system.entry.js} +1 -1
- package/lib/duet/{p-083e39cc.entry.js → p-6c5d3def.entry.js} +1 -1
- package/lib/duet/{p-815f4a10.system.entry.js → p-6e3f764f.system.entry.js} +1 -1
- package/lib/duet/{p-bacb27a1.js → p-6e64cd02.js} +2 -2
- package/lib/duet/{p-e40b610d.entry.js → p-6f1d6649.entry.js} +1 -1
- package/lib/duet/{p-0d188b2d.entry.js → p-70e567e9.entry.js} +1 -1
- package/lib/duet/{p-6dd1cf98.entry.js → p-77e3591e.entry.js} +1 -1
- package/lib/duet/{p-9027d0a4.system.entry.js → p-79948b47.system.entry.js} +1 -1
- package/lib/duet/{p-442f1dd5.entry.js → p-7d0051ea.entry.js} +1 -1
- package/lib/duet/p-7dfc475d.entry.js +4 -0
- package/lib/duet/{p-b787e777.system.entry.js → p-80d16341.system.entry.js} +1 -1
- package/lib/duet/{p-85c68d48.system.entry.js → p-817ef07d.system.entry.js} +1 -1
- package/lib/duet/{p-35d6061d.system.entry.js → p-838ef01e.system.entry.js} +1 -1
- package/lib/duet/{p-8fa7559b.system.entry.js → p-84310e48.system.entry.js} +1 -1
- package/lib/duet/{p-631054f3.system.js → p-89f50fd8.system.js} +1 -1
- package/lib/duet/{p-8b7adbf6.system.entry.js → p-8bf92f1e.system.entry.js} +1 -1
- package/lib/duet/p-8e1cf2fb.system.entry.js +4 -0
- package/lib/duet/{p-20f4d5d2.system.entry.js → p-9205c79a.system.entry.js} +1 -1
- package/lib/duet/{p-100b6a91.entry.js → p-97130a4c.entry.js} +1 -1
- package/lib/duet/{p-c4b6bf46.entry.js → p-97631cdc.entry.js} +1 -1
- package/lib/duet/{p-f9045aab.system.entry.js → p-98ca5a08.system.entry.js} +2 -2
- package/lib/duet/p-99bf8545.js +4 -0
- package/lib/duet/{p-97bb6fdd.system.entry.js → p-9c9fbda5.system.entry.js} +1 -1
- package/lib/duet/{p-8eb6610c.system.entry.js → p-9df52009.system.entry.js} +1 -1
- package/lib/duet/{p-634fda0f.entry.js → p-a03485f8.entry.js} +1 -1
- package/lib/duet/p-a806d616.entry.js +4 -0
- package/lib/duet/{p-56ae348b.entry.js → p-a91bb73d.entry.js} +1 -1
- package/lib/duet/{p-e36b95e0.system.entry.js → p-ac86999f.system.entry.js} +1 -1
- package/lib/duet/{p-b48811b5.entry.js → p-aefb80e3.entry.js} +1 -1
- package/lib/duet/{p-7de54632.entry.js → p-b004cbd3.entry.js} +1 -1
- package/lib/duet/{p-3d27e5ed.system.entry.js → p-b28e6872.system.entry.js} +1 -1
- package/lib/duet/{p-923b03a6.system.entry.js → p-b2ac632f.system.entry.js} +1 -1
- package/lib/duet/{p-1a8dfe6e.system.entry.js → p-b70f2ae2.system.entry.js} +1 -1
- package/lib/duet/{p-f301004d.entry.js → p-bc24eeda.entry.js} +1 -1
- package/lib/duet/{p-5184e972.system.entry.js → p-bec4d094.system.entry.js} +1 -1
- package/lib/duet/{p-c9f704c9.entry.js → p-bf8f3b14.entry.js} +1 -1
- package/lib/duet/{p-01ccafd3.system.entry.js → p-c383ceb4.system.entry.js} +2 -2
- package/lib/duet/{p-411bec39.system.entry.js → p-c694e7fb.system.entry.js} +1 -1
- package/lib/duet/p-c918ce45.system.entry.js +4 -0
- package/lib/duet/{p-fdaaa3ad.entry.js → p-c9f244f6.entry.js} +1 -1
- package/lib/duet/{p-b74364d3.entry.js → p-d3d6e75d.entry.js} +1 -1
- package/lib/duet/p-de3c0f4d.js +4 -0
- package/lib/duet/{p-2553a64a.entry.js → p-dfd9a9ff.entry.js} +1 -1
- package/lib/duet/{p-36924c8f.entry.js → p-e3017ffc.entry.js} +1 -1
- package/lib/duet/{p-4fd4ddda.entry.js → p-e358c599.entry.js} +1 -1
- package/lib/duet/{p-d06f9b6c.entry.js → p-e5b22358.entry.js} +1 -1
- package/lib/duet/{p-f2dab640.system.entry.js → p-ea12c081.system.entry.js} +1 -1
- package/lib/duet/{p-ea806947.entry.js → p-ef2f6881.entry.js} +1 -1
- package/lib/duet/{p-4dcbaccf.system.entry.js → p-f2831cda.system.entry.js} +1 -1
- package/lib/duet/{p-0f144788.entry.js → p-f2dce86d.entry.js} +1 -1
- package/lib/duet/{p-86a47942.entry.js → p-f30eb0fd.entry.js} +1 -1
- package/lib/duet/{p-8708f306.system.entry.js → p-f661ebf9.system.entry.js} +1 -1
- package/lib/duet/{p-e980faf9.system.entry.js → p-f6f30fb7.system.entry.js} +1 -1
- package/lib/duet/{p-ff94713b.entry.js → p-faf6cfe8.entry.js} +1 -1
- package/lib/duet/{p-2d58c660.system.entry.js → p-fdb0277c.system.entry.js} +1 -1
- package/lib/duet/{p-8c282db8.system.js → p-fe03f359.system.js} +1 -1
- package/lib/duet/{p-7382c47e.system.entry.js → p-ffadc9ea.system.entry.js} +1 -1
- package/lib/esm/duet-action-button.entry.js +25 -7
- package/lib/esm/duet-alert.entry.js +1 -1
- package/lib/esm/duet-badge.entry.js +1 -1
- package/lib/esm/duet-breadcrumb.entry.js +1 -1
- package/lib/esm/duet-breadcrumbs.entry.js +1 -1
- package/lib/esm/duet-button_2.entry.js +2 -2
- package/lib/esm/duet-caption_4.entry.js +2 -2
- package/lib/esm/duet-card.entry.js +2 -2
- package/lib/esm/duet-checkbox.entry.js +1 -1
- package/lib/esm/duet-choice_2.entry.js +2 -2
- package/lib/esm/duet-collapsible.entry.js +2 -2
- package/lib/esm/duet-combobox.entry.js +2 -2
- package/lib/esm/duet-cookie-consent.entry.js +1 -1
- package/lib/esm/duet-date-picker.entry.js +2 -2
- package/lib/esm/duet-divider_2.entry.js +1 -1
- package/lib/esm/duet-editable-table_3.entry.js +18 -13
- package/lib/esm/duet-empty-state.entry.js +1 -1
- package/lib/esm/duet-fieldset.entry.js +1 -1
- package/lib/esm/duet-footer.entry.js +1 -1
- package/lib/esm/duet-grid_2.entry.js +1 -1
- package/lib/esm/duet-header_2.entry.js +51 -49
- package/lib/esm/duet-hero.entry.js +4 -3
- package/lib/esm/duet-icon.entry.js +2 -2
- package/lib/esm/duet-input_2.entry.js +21 -4
- package/lib/esm/duet-layout.entry.js +1 -1
- package/lib/esm/duet-list_2.entry.js +1 -1
- package/lib/esm/duet-modal.entry.js +2 -2
- package/lib/esm/duet-notification_2.entry.js +1 -1
- package/lib/esm/duet-number-input.entry.js +1 -1
- package/lib/esm/duet-pagination_2.entry.js +2 -2
- package/lib/esm/duet-progress.entry.js +1 -1
- package/lib/esm/duet-radio_2.entry.js +1 -1
- package/lib/esm/duet-range-slider.entry.js +1 -1
- package/lib/esm/duet-scrollable_3.entry.js +1 -1
- package/lib/esm/duet-select.entry.js +1 -1
- package/lib/esm/duet-step_2.entry.js +1 -1
- package/lib/esm/duet-textarea.entry.js +1 -1
- package/lib/esm/duet-toggle.entry.js +1 -1
- package/lib/esm/duet-tooltip.entry.js +1 -1
- package/lib/esm/duet-tray.entry.js +1 -1
- package/lib/esm/duet-upload-aria-status.entry.js +1 -1
- package/lib/esm/duet-visually-hidden.entry.js +1 -1
- package/lib/esm/duet.js +2 -2
- package/lib/esm/{focus-utils-07c543df.js → focus-utils-8dc04c1c.js} +1 -1
- package/lib/esm/{index-bcca1cb8.js → index-e1964887.js} +8 -2
- package/lib/esm/{js-utils-52e0944c.js → js-utils-fa98b8cd.js} +11 -0
- package/lib/esm/loader.js +2 -2
- package/lib/esm/{token-utils-1f9435bc.js → token-utils-df78f4d8.js} +1 -1
- package/lib/esm-es5/duet-action-button.entry.js +2 -2
- package/lib/esm-es5/duet-alert.entry.js +1 -1
- package/lib/esm-es5/duet-badge.entry.js +1 -1
- package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
- package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
- package/lib/esm-es5/duet-button_2.entry.js +1 -1
- package/lib/esm-es5/duet-caption_4.entry.js +1 -1
- package/lib/esm-es5/duet-card.entry.js +1 -1
- package/lib/esm-es5/duet-checkbox.entry.js +1 -1
- package/lib/esm-es5/duet-choice_2.entry.js +1 -1
- package/lib/esm-es5/duet-collapsible.entry.js +2 -2
- package/lib/esm-es5/duet-combobox.entry.js +1 -1
- package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
- package/lib/esm-es5/duet-date-picker.entry.js +1 -1
- package/lib/esm-es5/duet-divider_2.entry.js +1 -1
- package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
- package/lib/esm-es5/duet-empty-state.entry.js +1 -1
- package/lib/esm-es5/duet-fieldset.entry.js +1 -1
- package/lib/esm-es5/duet-footer.entry.js +1 -1
- package/lib/esm-es5/duet-grid_2.entry.js +1 -1
- package/lib/esm-es5/duet-header_2.entry.js +2 -2
- package/lib/esm-es5/duet-hero.entry.js +1 -1
- package/lib/esm-es5/duet-icon.entry.js +1 -1
- package/lib/esm-es5/duet-input_2.entry.js +1 -1
- package/lib/esm-es5/duet-layout.entry.js +1 -1
- package/lib/esm-es5/duet-list_2.entry.js +1 -1
- package/lib/esm-es5/duet-modal.entry.js +1 -1
- package/lib/esm-es5/duet-notification_2.entry.js +1 -1
- package/lib/esm-es5/duet-number-input.entry.js +1 -1
- package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
- package/lib/esm-es5/duet-progress.entry.js +1 -1
- package/lib/esm-es5/duet-radio_2.entry.js +1 -1
- package/lib/esm-es5/duet-range-slider.entry.js +1 -1
- package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
- package/lib/esm-es5/duet-select.entry.js +1 -1
- package/lib/esm-es5/duet-step_2.entry.js +1 -1
- package/lib/esm-es5/duet-textarea.entry.js +1 -1
- package/lib/esm-es5/duet-toggle.entry.js +1 -1
- package/lib/esm-es5/duet-tooltip.entry.js +1 -1
- package/lib/esm-es5/duet-tray.entry.js +1 -1
- package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
- package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
- package/lib/esm-es5/duet.js +1 -1
- package/lib/esm-es5/focus-utils-8dc04c1c.js +4 -0
- package/lib/esm-es5/{index-bcca1cb8.js → index-e1964887.js} +3 -3
- package/lib/esm-es5/{js-utils-52e0944c.js → js-utils-fa98b8cd.js} +0 -0
- package/lib/esm-es5/loader.js +1 -1
- package/lib/esm-es5/token-utils-df78f4d8.js +4 -0
- package/lib/types/components/duet-action-button/duet-action-button.d.ts +12 -4
- package/lib/types/components/duet-header/duet-header-icon.d.ts +1 -0
- package/lib/types/components/duet-header/duet-header.d.ts +2 -2
- package/lib/types/components/duet-hero/duet-hero.d.ts +4 -0
- package/lib/types/components/duet-input/duet-input.d.ts +2 -1
- package/lib/types/components/duet-upload/duet-upload.d.ts +1 -2
- package/lib/types/components.d.ts +17 -9
- package/lib/types/utils/js-utils.d.ts +11 -0
- package/lib/types/utils/token-utils.d.ts +1 -0
- package/package.json +5 -5
- package/lib/duet/p-1717ed62.entry.js +0 -4
- package/lib/duet/p-32dd246d.entry.js +0 -4
- package/lib/duet/p-35159c88.system.entry.js +0 -4
- package/lib/duet/p-61507bc8.entry.js +0 -4
- package/lib/duet/p-6190e2d6.system.js +0 -4
- package/lib/duet/p-661f842b.entry.js +0 -4
- package/lib/duet/p-89f53f18.system.entry.js +0 -4
- package/lib/duet/p-909aaac4.entry.js +0 -4
- package/lib/duet/p-9cca0bb4.js +0 -4
- package/lib/duet/p-9df4bfa0.system.entry.js +0 -4
- package/lib/duet/p-a818e289.entry.js +0 -4
- package/lib/duet/p-c60f00e7.system.entry.js +0 -4
- package/lib/duet/p-ce276fc8.js +0 -4
- package/lib/duet/p-dbb2579c.entry.js +0 -4
- package/lib/esm-es5/focus-utils-07c543df.js +0 -4
- package/lib/esm-es5/token-utils-1f9435bc.js +0 -4
package/hydrate/index.js
CHANGED
|
@@ -5615,6 +5615,17 @@ const debounce = (func, timeout = 250) => {
|
|
|
5615
5615
|
}, timeout);
|
|
5616
5616
|
};
|
|
5617
5617
|
};
|
|
5618
|
+
/**
|
|
5619
|
+
* The fieldSorter function is a helper function that takes an array of objects and returns
|
|
5620
|
+
* a function that can be used to sort those objects. The returned sorting function takes two
|
|
5621
|
+
* parameters, which are compared using the field values in the object. If one object's field value is greater than another's, then 1 is returned; if they're equal, 0 is returned; and if one object's field value is less than another's, - 1 will be returned. This allows for easy sorting by multiple fields in any order desired (e.g., first by name ascending and then by age descending).
|
|
5622
|
+
*
|
|
5623
|
+
*
|
|
5624
|
+
* @param fields Sort the table
|
|
5625
|
+
*
|
|
5626
|
+
* @return A function that takes two objects and returns an integer
|
|
5627
|
+
*
|
|
5628
|
+
*/
|
|
5618
5629
|
function fieldSorter(fields) {
|
|
5619
5630
|
return function (a, b) {
|
|
5620
5631
|
return fields
|
|
@@ -6189,6 +6200,7 @@ class DuetActionButton {
|
|
|
6189
6200
|
constructor(hostRef) {
|
|
6190
6201
|
registerInstance(this, hostRef);
|
|
6191
6202
|
this.duetActionEvent = createEvent$2(this, "duetActionEvent", 6);
|
|
6203
|
+
this.listId = createID("duet-action-button");
|
|
6192
6204
|
this.numbersStore = "";
|
|
6193
6205
|
/**
|
|
6194
6206
|
* Theme of the pagination.
|
|
@@ -6236,6 +6248,13 @@ class DuetActionButton {
|
|
|
6236
6248
|
* to $size-icon-medium on mobile viewports. Example: "color-primary".
|
|
6237
6249
|
*/
|
|
6238
6250
|
this.background = "";
|
|
6251
|
+
/**
|
|
6252
|
+
* Title of the action button (shows as DOM tooltip when hovering)
|
|
6253
|
+
* if set to true, this will try to add a best-guess title based on action-name
|
|
6254
|
+
* if set to a string the string is used
|
|
6255
|
+
* if set to false nothing is set
|
|
6256
|
+
*/
|
|
6257
|
+
this.accessibleTitle = true;
|
|
6239
6258
|
/**
|
|
6240
6259
|
* Described By id
|
|
6241
6260
|
*/
|
|
@@ -6253,7 +6272,7 @@ class DuetActionButton {
|
|
|
6253
6272
|
*/
|
|
6254
6273
|
this.accessibleDescription = undefined;
|
|
6255
6274
|
/**
|
|
6256
|
-
* Default
|
|
6275
|
+
* Default accessible labels
|
|
6257
6276
|
*/
|
|
6258
6277
|
this.accessibleLabelsDefaults = {
|
|
6259
6278
|
en: {
|
|
@@ -6267,14 +6286,13 @@ class DuetActionButton {
|
|
|
6267
6286
|
},
|
|
6268
6287
|
};
|
|
6269
6288
|
/**
|
|
6270
|
-
* Default
|
|
6289
|
+
* Default accessible labels
|
|
6271
6290
|
*/
|
|
6272
6291
|
this.accessibleLabels = getLocaleString(this.accessibleLabelsDefaults);
|
|
6273
6292
|
/**
|
|
6274
6293
|
* Used to indicate which dom element with ID this element controls
|
|
6275
6294
|
*/
|
|
6276
6295
|
this.accessibleControls = "";
|
|
6277
|
-
this.listId = createID("duet-action-button");
|
|
6278
6296
|
/**
|
|
6279
6297
|
* Private methods.
|
|
6280
6298
|
*/
|
|
@@ -6296,6 +6314,17 @@ class DuetActionButton {
|
|
|
6296
6314
|
this.emitPageEvent(e);
|
|
6297
6315
|
}
|
|
6298
6316
|
}
|
|
6317
|
+
//return readable title for the action-button
|
|
6318
|
+
getTitle() {
|
|
6319
|
+
let titleString = "";
|
|
6320
|
+
if (typeof this.accessibleTitle === "string") {
|
|
6321
|
+
titleString = this.accessibleTitle;
|
|
6322
|
+
}
|
|
6323
|
+
if (this.accessibleTitle === true) {
|
|
6324
|
+
titleString = capitalizeFirstLetter(`${this.actionName}`);
|
|
6325
|
+
}
|
|
6326
|
+
return titleString;
|
|
6327
|
+
}
|
|
6299
6328
|
//set update current when mouse click on page number
|
|
6300
6329
|
async onMouseHandler(e) {
|
|
6301
6330
|
e.preventDefault();
|
|
@@ -6341,7 +6370,7 @@ class DuetActionButton {
|
|
|
6341
6370
|
"duet-action-button": true,
|
|
6342
6371
|
"duet-action-button--disabled": this.disabled,
|
|
6343
6372
|
[`duet-action-button--${this.theme}`]: this.theme !== "",
|
|
6344
|
-
}, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.accessibleLabels.label, "aria-labelledby": this.accessibleLabelledBy, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, "aria-details": this.accessibleDetails, "aria-controls": this.accessibleControls }, hAsync("duet-icon", { part: "icon", name: this.iconName, color: this.iconColor, margin: "none", size: this.iconSize }), hAsync("duet-visually-hidden", null, hAsync("slot", null)))));
|
|
6373
|
+
}, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.accessibleLabels.label, "aria-labelledby": this.accessibleLabelledBy, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, "aria-details": this.accessibleDetails, "aria-controls": this.accessibleControls, title: this.getTitle() }, hAsync("duet-icon", { part: "icon", name: this.iconName, color: this.iconColor, margin: "none", size: this.iconSize }), hAsync("duet-visually-hidden", null, hAsync("slot", null)))));
|
|
6345
6374
|
}
|
|
6346
6375
|
get element() { return getElement(this); }
|
|
6347
6376
|
static get style() { return duetActionButtonCss; }
|
|
@@ -6359,6 +6388,7 @@ class DuetActionButton {
|
|
|
6359
6388
|
"disabled": [4],
|
|
6360
6389
|
"color": [513],
|
|
6361
6390
|
"background": [1],
|
|
6391
|
+
"accessibleTitle": [8, "title"],
|
|
6362
6392
|
"accessibleDescribedBy": [1, "accessible-described-by"],
|
|
6363
6393
|
"accessibleDetails": [1, "accessible-details"],
|
|
6364
6394
|
"accessibleLabelledBy": [1, "accessible-labelled-by"],
|
|
@@ -7811,32 +7841,13 @@ class DuetChoiceGroup {
|
|
|
7811
7841
|
* Component lifecycle events.
|
|
7812
7842
|
*/
|
|
7813
7843
|
async connectedCallback() {
|
|
7814
|
-
|
|
7815
|
-
|
|
7816
|
-
const choice = findCheckedOption(el, ":scope > duet-choice");
|
|
7817
|
-
if (choice !== undefined) {
|
|
7818
|
-
await choice.componentOnReady();
|
|
7819
|
-
if (this.value === undefined) {
|
|
7820
|
-
this.value = choice.value;
|
|
7821
|
-
}
|
|
7822
|
-
}
|
|
7844
|
+
{
|
|
7845
|
+
return;
|
|
7823
7846
|
}
|
|
7824
|
-
this.mutationO = watchForOptions(el, ":scope > duet-choice", newOption => {
|
|
7825
|
-
if (newOption !== undefined) {
|
|
7826
|
-
newOption.componentOnReady().then(() => {
|
|
7827
|
-
this.value = newOption.value;
|
|
7828
|
-
});
|
|
7829
|
-
}
|
|
7830
|
-
else {
|
|
7831
|
-
this.updateChoices();
|
|
7832
|
-
}
|
|
7833
|
-
});
|
|
7834
|
-
this.updateChoices();
|
|
7835
7847
|
}
|
|
7836
7848
|
disconnectedCallback() {
|
|
7837
|
-
|
|
7838
|
-
|
|
7839
|
-
this.mutationO = undefined;
|
|
7849
|
+
{
|
|
7850
|
+
return;
|
|
7840
7851
|
}
|
|
7841
7852
|
}
|
|
7842
7853
|
componentWillLoad() {
|
|
@@ -8369,7 +8380,7 @@ var tokens$1 = /*#__PURE__*/Object.freeze({
|
|
|
8369
8380
|
'default': tokens
|
|
8370
8381
|
});
|
|
8371
8382
|
|
|
8372
|
-
const duetCollapsibleCss = "
|
|
8383
|
+
const duetCollapsibleCss = "*.sc-duet-collapsible,*.sc-duet-collapsible::after,*.sc-duet-collapsible::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-collapsible-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;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:1rem;font-weight:600;line-height:1.5;color:#00294d}.duet-theme-turva.sc-duet-collapsible-h{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-m-0.sc-duet-collapsible-h{margin:0 !important}.duet-collapsible-content.sc-duet-collapsible{display:none;padding-left:18px;margin-top:8px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;color:#00294d}@media (max-width: 35.9375em){.duet-collapsible-content.sc-duet-collapsible{font-size:0.875rem}}.duet-collapsible-content.duet-theme-turva.sc-duet-collapsible{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}[open].sc-duet-collapsible-h .duet-collapsible-content.sc-duet-collapsible{display:block}.duet-collapsible-heading.sc-duet-collapsible{-webkit-user-select:none;user-select:none;display:flex;align-items:center;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:#00294d;cursor:pointer;border-radius:4px}.duet-collapsible-heading.duet-collapsible-normal-weight.sc-duet-collapsible{font-weight:400}.duet-collapsible-heading.duet-theme-turva.sc-duet-collapsible{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}.duet-collapsible-heading.sc-duet-collapsible .duet-collapsible-heading-content.sc-duet-collapsible{flex:1}.duet-collapsible-heading.sc-duet-collapsible:focus{outline:0}.user-is-tabbing.sc-duet-collapsible-h .duet-collapsible-heading.sc-duet-collapsible:focus{border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.duet-theme-turva.sc-duet-collapsible-h .duet-collapsible-heading.sc-duet-collapsible:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-collapsible-heading-icon.sc-duet-collapsible{margin-right:8px !important;display:flex;align-items:center;justify-content:center;color:#00294d;transition:transform 300ms ease}.duet-collapsible-heading-icon.sc-duet-collapsible:last-child,.duet-collapsible-heading-icon.sc-duet-collapsible:last-of-type{margin-right:0 !important}[aria-expanded=true].sc-duet-collapsible .duet-collapsible-heading-icon.sc-duet-collapsible{transform:rotate(180deg)}";
|
|
8373
8384
|
|
|
8374
8385
|
/**
|
|
8375
8386
|
* @part duet-collapsible-heading-content - piercing selector for styling the heading content
|
|
@@ -8498,7 +8509,7 @@ class DuetCollapsible {
|
|
|
8498
8509
|
get element() { return getElement(this); }
|
|
8499
8510
|
static get style() { return duetCollapsibleCss; }
|
|
8500
8511
|
static get cmpMeta() { return {
|
|
8501
|
-
"$flags$":
|
|
8512
|
+
"$flags$": 6,
|
|
8502
8513
|
"$tagName$": "duet-collapsible",
|
|
8503
8514
|
"$members$": {
|
|
8504
8515
|
"theme": [1025],
|
|
@@ -10804,7 +10815,7 @@ const enableBodyScroll = targetElement => {
|
|
|
10804
10815
|
|
|
10805
10816
|
const DuetHeaderIcon = (props, _children) => {
|
|
10806
10817
|
const iconSize = props.iconSize ? props.iconSize : "x-small";
|
|
10807
|
-
return (hAsync("span", { class:
|
|
10818
|
+
return (hAsync("span", { class: `duet-header-icon ${props.class ? props.class : ""}` },
|
|
10808
10819
|
hAsync("duet-icon", { margin: "none", size: iconSize, icon: props.icon, color: "currentColor" })));
|
|
10809
10820
|
};
|
|
10810
10821
|
|
|
@@ -10837,7 +10848,7 @@ const DuetHeaderHamburger = () => (hAsync("div", { class: "duet-header-hamburger
|
|
|
10837
10848
|
hAsync("span", { class: "duet-header-bar" }),
|
|
10838
10849
|
hAsync("span", { class: "duet-header-bar" })));
|
|
10839
10850
|
|
|
10840
|
-
const duetHeaderCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-header,*.sc-duet-header::after,*.sc-duet-header::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-header-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){/*!@:host*/.sc-duet-header-h{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){/*!@:host*/.sc-duet-header-h{position:sticky;top:-4rem;z-index:400}}@supports (position: -webkit-sticky){/*!@:host(.duet-header-multi-level-desktop-variation)*/.duet-header-multi-level-desktop-variation.sc-duet-header-h{top:0}}@supports (position: sticky){/*!@:host(.duet-header-multi-level-desktop-variation)*/.duet-header-multi-level-desktop-variation.sc-duet-header-h{top:0}}/*!@.duet-header-reserved-space*/.duet-header-reserved-space.sc-duet-header{height:4rem}@media (min-width: 62em){/*!@.duet-header-reserved-space.duet-with-links*/.duet-header-reserved-space.duet-with-links.sc-duet-header{height:7rem}}/*!@.duet-header*/.duet-header.sc-duet-header{-webkit-user-select:none;user-select:none;position:fixed;top:0;left:0;z-index:400;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:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left}/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}@media (min-width: 62em){/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){/*!@.duet-header*/.duet-header.sc-duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}/*!@.duet-header.duet-header-inactive*/.duet-header.duet-header-inactive.sc-duet-header{position:fixed}}/*!@.duet-header **/.duet-header.sc-duet-header *.sc-duet-header{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}/*!@.duet-header-top*/.duet-header-top.sc-duet-header{position:relative;z-index:200;display:flex;flex-direction:row;align-items:center;width:100%;height:4rem;padding:0 16px;background:white;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}@media (min-width: 62em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{z-index:100;padding:0 28px;box-shadow:none}/*!@.duet-header-top duet-logo*/.duet-header-top.sc-duet-header duet-logo.sc-duet-header{padding-right:4px}}@media (min-width: 106.25em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{padding:0 48px}}/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{border-color:#e4e4e6;box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{box-shadow:none}}/*!@.duet-theme-turva .duet-header-top duet-logo*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header duet-logo.sc-duet-header{left:-80px !important;margin-top:-8px !important}/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{max-width:200px;padding-left:16px;margin-top:1px;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #cfd2d4}/*!@.duet-theme-turva .duet-header-top .duet-header-region*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{border-color:#cfcfd1}@media (max-width: 35.9375em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{display:none}}@media (min-width: 62em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{padding-left:19px}}/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:fixed;top:4rem;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;width:100%;overflow-y:auto;visibility:hidden;background:#f3f9fc;opacity:0;-webkit-overflow-scrolling:touch}/*!@.duet-theme-turva .duet-header-bottom*/.duet-theme-turva.sc-duet-header .duet-header-bottom.sc-duet-header{background:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;top:auto;bottom:auto;z-index:200;flex-direction:row;overflow:visible;visibility:visible;background:white;opacity:1}/*!@.duet-header-bottom.duet-header-inactive*/.duet-header-bottom.duet-header-inactive.sc-duet-header{position:relative}}/*!@.duet-header-bottom.active*/.duet-header-bottom.active.sc-duet-header{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;transition:none !important}}/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:1;transition:none !important;transform:none}}/*!@.active .duet-header-items,\n.active .duet-header-bottom-utils,\n.active .duet-header-utils*/.active.sc-duet-header .duet-header-items.sc-duet-header,.active.sc-duet-header .duet-header-bottom-utils.sc-duet-header,.active.sc-duet-header .duet-header-utils.sc-duet-header{opacity:1;transform:translateY(0)}/*!@.duet-header-items*/.duet-header-items.sc-duet-header{position:relative;z-index:300;display:block;width:100%;font-size:1rem;font-weight:400;line-height:1.5;background:white}@media (min-width: 62em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{padding-left:43.6363636364px}}/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border:0}}/*!@.duet-header-items .duet-header-second-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 40px;border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-button*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-button.sc-duet-header{border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-dropdown-content*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-dropdown-content.sc-duet-header{padding:0;border:0}/*!@.duet-header-items .duet-header-third-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-third-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 75px}/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;padding:0 20px;overflow:hidden;font-size:1rem;line-height:48px;color:#00294d;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{font-weight:600;border-radius:4px}}/*!@.duet-theme-turva .duet-header-items .duet-header-item*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{color:#171c3a;border-color:#e1e3e6}/*!@.duet-header-items .duet-header-item:hover*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-items .duet-header-item:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#444445}/*!@.duet-header-items .duet-header-item:focus*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header: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 .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{width:auto;max-width:300px;padding:0 12px;overflow:hidden;font-size:0.875rem;text-overflow:ellipsis;border:0}}/*!@.duet-header-items .duet-header-item.active*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#c60c30}/*!@.duet-header-items .duet-header-item.active:hover*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active::after*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{background:#c60c30}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-right:-8px;margin-left:auto;cursor:pointer;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-header-toggle:focus*/.duet-header-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-toggle.sc-duet-header: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 .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:none}}/*!@.duet-header-hamburger*/.duet-header-hamburger.sc-duet-header{position:relative;width:24px;height:24px;margin-top:5px !important;pointer-events:none;transition:0.4s ease-in-out;backface-visibility:hidden}/*!@.duet-header-hamburger .duet-header-bar*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{position:absolute;left:0;display:block;width:100%;height:2px;background:#00294d;border-radius:20rem;opacity:1;transition:0.25s ease-in-out;transform:rotate(0deg) scale(0.98)}/*!@.duet-theme-turva .duet-header-hamburger .duet-header-bar*/.duet-theme-turva.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{background:#171c3a}/*!@.duet-header-hamburger .duet-header-bar:nth-child(1)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:0}/*!@.duet-header-hamburger .duet-header-bar:nth-child(2), .duet-header-hamburger .duet-header-bar:nth-child(3)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2),.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){top:7px}/*!@.duet-header-hamburger .duet-header-bar:nth-child(4)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:14px}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(1)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:7px;left:50%;width:0%}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(2)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2){transform:rotate(45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(3)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){transform:rotate(-45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(4)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:7px;left:50%;width:0%}/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{position:absolute;top:-4rem;right:0;z-index:999999999;flex-direction:row;align-items:center;justify-content:space-between;width:auto;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{margin-right:36px}}@media (min-width: 62em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{margin-right:36px}}/*!@button*/button.sc-duet-header{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-theme-turva button*/.duet-theme-turva.sc-duet-header button.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-header-button*/.duet-header-button.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 20px;overflow:hidden;font-size:1rem;font-weight:400;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-bottom:1px solid #e1e3e6;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-theme-turva .duet-header-button*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header{color:#171c3a;border-color:#e4e4e6}/*!@.duet-header-button:hover*/.duet-header-button.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-button:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:hover{color:#940925}/*!@.duet-header-button:focus*/.duet-header-button.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-button.sc-duet-header: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 .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-button:active*/.duet-header-button.sc-duet-header:active{opacity:0.75}@media (min-width: 62em){/*!@.duet-header-button*/.duet-header-button.sc-duet-header{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}/*!@.duet-header-button::before*/.duet-header-button.sc-duet-header::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}/*!@.duet-theme-turva .duet-header-button::before*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header::before{background:#cfcfd1}}/*!@.duet-header-button.active*/.duet-header-button.active.sc-duet-header{color:#0077b3;border-radius:0}/*!@.duet-theme-turva .duet-header-button.active*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header{color:#c60c30}/*!@.duet-header-button.active:hover*/.duet-header-button.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-button.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header:hover{color:#c60c30}@media (min-width: 62em){/*!@.duet-header-button.active::after*/.duet-header-button.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-button.active::after*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header::after{color:#c60c30}}/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{align-self:center;justify-content:center;width:auto;height:2.5rem;margin:2.25rem 0;font-weight:600;border:2px solid #00294d;border-radius:20rem}/*!@.duet-theme-turva .duet-header-utils .duet-header-button.duet-header-logout*/.duet-theme-turva.sc-duet-header .duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{border-color:#171c3a}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.5rem}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-button-label.sc-duet-header{font-size:0.875rem}@media (min-width: 62em){/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{height:4rem;margin:0;font-weight:400;border:0}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.75rem}}/*!@.duet-header-no-action*/.duet-header-no-action.sc-duet-header{pointer-events:none}/*!@.duet-header-user-label*/.duet-header-user-label.sc-duet-header{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child::before,\n.duet-header-utils > *:last-child button::before*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child::before,.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child button.sc-duet-header::before{display:none}}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child .duet-header-dropdown-content*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child .duet-header-dropdown-content.sc-duet-header{right:0;left:auto}}/*!@.duet-header-language*/.duet-header-language.sc-duet-header{text-transform:uppercase}/*!@.duet-header-language.active, .duet-header-language.active:hover,\n.duet-header-contact.active,\n.duet-header-contact.active:hover*/.duet-header-language.active.sc-duet-header,.duet-header-language.active.sc-duet-header:hover,.duet-header-contact.active.sc-duet-header,.duet-header-contact.active.sc-duet-header:hover{color:inherit}/*!@.duet-theme-turva .duet-header-language.active, .duet-theme-turva .duet-header-language.active:hover,\n.duet-theme-turva .duet-header-contact.active,\n.duet-theme-turva .duet-header-contact.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-language.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-language.active.sc-duet-header:hover,.duet-theme-turva.sc-duet-header .duet-header-contact.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-contact.active.sc-duet-header:hover{color:inherit}/*!@.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header:hover::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header:hover::after{width:0}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header:hover::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header:hover::after{width:100%}}/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{display:inline-flex;min-width:12px;margin-right:12px;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{margin-right:8px}}/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{position:absolute;top:50%;right:20px;display:flex;width:10px;height:10px;margin-left:8px;line-height:normal;pointer-events:none;transition:300ms ease;transform:translateY(-50%);transform-origin:50% 50%}@media (min-width: 62em){/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{width:7px;height:7px}}/*!@.duet-header-caret duet-icon*/.duet-header-caret.sc-duet-header duet-icon.sc-duet-header{width:10px}/*!@.duet-header-dropdown-toggle.active .duet-header-caret*/.duet-header-dropdown-toggle.active.sc-duet-header .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(180deg)}/*!@.duet-header-dropdown-toggle:focus*/.duet-header-dropdown-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown-toggle.sc-duet-header: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 .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown-toggle:active*/.duet-header-dropdown-toggle.sc-duet-header:active{outline:none}/*!@.duet-header-badge*/.duet-header-badge.sc-duet-header{display:inline-block;width:6px;height:6px;margin-top:-1rem;margin-left:5px;vertical-align:top;background:#f7b228;border-radius:50%;box-shadow:0 0 0 1px #c18b1f}/*!@.duet-theme-turva .duet-header-badge*/.duet-theme-turva.sc-duet-header .duet-header-badge.sc-duet-header{background:#faa40f}/*!@.active-bar*/.active-bar.sc-duet-header{color:#0077b3}/*!@.active-bar::after*/.active-bar.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .active-bar::after*/.duet-theme-turva.sc-duet-header .active-bar.sc-duet-header::after{background:#c60c30}/*!@.duet-header-dropdown*/.duet-header-dropdown.sc-duet-header{position:relative}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px !important;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border-bottom:1px solid #f5f8fa}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{background:#c60c30}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border-color:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#004d80;border:0}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#940925}}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.sc-duet-header{color:white;background:#c60c30;border-radius:0}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session:hover, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.sc-duet-header:hover,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.active.sc-duet-header:hover{color:white;background:#940925}}/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{display:none;padding-bottom:16px;background:#f3f9fc;border-bottom:1px solid #e1e3e6}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{position:absolute;top:100%;left:0;z-index:600;display:block;min-width:150px;padding-top:16px;padding-left:0;visibility:hidden;border:0;border-radius:4px;border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:300ms ease;transform:scale(0.85) translateZ(0) translateY(-20px)}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header{right:0%;left:auto;min-width:225px}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items .duet-header-session-label*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header .duet-header-session-label.sc-duet-header{padding:0 20px;font-weight:600}}@media (min-width: 64.0625em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{min-width:170px}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header{min-width:225px}}/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{display:block}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding:3px 8px 4px !important;position:relative;display:block;width:100%;padding-right:16px;padding-left:48px !important;overflow:hidden;font-size:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:300ms ease}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){color:#171c3a}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding-right:20px !important;padding-left:20px !important}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#e6f2f8}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#e4e4e6}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):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 .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{padding-right:36px;font-weight:600;vertical-align:baseline}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{font-weight:700}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{color:white;background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-link-external.sc-duet-header{margin-left:4px}/*!@.duet-header-back .duet-header-top*/.duet-header-back.sc-duet-header .duet-header-top.sc-duet-header{flex-direction:row;align-items:center;justify-content:center}/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}/*!@.duet-header-back .duet-header-toggle*/.duet-header-back.sc-duet-header .duet-header-toggle.sc-duet-header{display:none !important}/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:#0077b3;text-align:center;text-decoration:none;background:white;border-radius:4px;opacity:0}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-header-skip:focus, .duet-header-skip:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header:focus,.duet-header-skip.sc-duet-header:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-theme-turva .duet-header-skip*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header{min-width:120px;color:#171c3a}@media (min-width: 106.25em){/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{margin-left:20px}}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}/*!@.duet-header-multi-level-desktop*/.duet-header-multi-level-desktop.sc-duet-header{height:6rem}/*!@.duet-header-multi-level-desktop .duet-header-top*/.duet-header-multi-level-desktop.sc-duet-header .duet-header-top.sc-duet-header{justify-content:space-between;height:6rem}/*!@.duet-header-multi-level-desktop .duet-header-button*/.duet-header-multi-level-desktop.sc-duet-header .duet-header-button.sc-duet-header{height:6rem}/*!@.duet-header-multi-level-desktop .logo-and-segment*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header{display:flex;flex-basis:0;flex-direction:column;flex-grow:1;padding-top:1rem}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400;margin-left:2rem}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level-desktop .logo-and-segment button*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header{align-items:flex-start;height:2rem;font-weight:600;line-height:1rem}/*!@.duet-header-multi-level-desktop .logo-and-segment button::before*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop .logo-and-segment .duet-header-caret*/.duet-header-multi-level-desktop.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-caret.sc-duet-header{top:25%}/*!@.duet-header-multi-level-desktop-nav*/.duet-header-multi-level-desktop-nav.sc-duet-header{display:flex}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header{position:static}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:400;padding-right:1rem;font-size:1rem;font-weight:600}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#0077b3}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active:not(.open) .duet-header-caret*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:not(.open) .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(0deg)}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{z-index:399;display:flex;justify-content:center;width:100%;height:4.5rem;padding:0;background:#f3f9fc;border-top:1px solid #e1e3e6;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07);transition:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;min-width:6rem;height:100%;padding:0 1rem !important;font-weight:600}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{font-weight:600;color:#0077b3;background:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header::after{transform:translateY(0)}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header .duet-header-icon.sc-duet-header{margin:0}/*!@.duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-badge.sc-duet-header{position:absolute;margin-top:-2rem;margin-right:-2.25rem}/*!@.duet-header-multi-level-desktop-nav button::before*/.duet-header-multi-level-desktop-nav.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop-nav .duet-header-caret*/.duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-caret.sc-duet-header{right:1%}/*!@.duet-header-multi-level-desktop-utils*/.duet-header-multi-level-desktop-utils.sc-duet-header{display:flex;flex-basis:0;flex-grow:1;justify-content:flex-end}/*!@.duet-header-multi-level-desktop-utils > :last-child::before*/.duet-header-multi-level-desktop-utils.sc-duet-header>.sc-duet-header:last-child::before{display:none}/*!@.duet-header-multi-level-desktop-utils > :last-child.duet-header-dropdown .duet-header-button::before*/.duet-header-multi-level-desktop-utils.sc-duet-header>.sc-duet-header:last-child.duet-header-dropdown .duet-header-button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop-utils .duet-header-dropdown*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400}/*!@.duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level-desktop-utils .duet-header-button-label,\n.duet-header-multi-level-desktop-utils .duet-header-dropdown-label*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:none}@media (min-width: 64.0625em){/*!@.duet-header-multi-level-desktop-utils .duet-header-button-label,\n.duet-header-multi-level-desktop-utils .duet-header-dropdown-label*/.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:initial}}/*!@.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header{margin-left:0}/*!@.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown-toggle*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{padding-left:0.5rem}/*!@.duet-header-multi-level-desktop .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-utils > :nth-last-child(2).duet-header-dropdown .duet-header-button::before*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-utils.sc-duet-header>.sc-duet-header:nth-last-child(2).duet-header-dropdown .duet-header-button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#c60c30}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e4e4e6}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{background:#c60c30}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{color:#c60c30;background:none}/*!@.duet-header-multi-level-desktop .duet-theme-turva .duet-header-multi-level-desktop-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-desktop.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-desktop-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7}";
|
|
10851
|
+
const duetHeaderCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-header,*.sc-duet-header::after,*.sc-duet-header::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-header-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}@supports (position: -webkit-sticky){/*!@:host*/.sc-duet-header-h{position:-webkit-sticky;top:-4rem;z-index:400}}@supports (position: sticky){/*!@:host*/.sc-duet-header-h{position:sticky;top:-4rem;z-index:400}}@supports (position: -webkit-sticky){/*!@:host(.duet-header-multi-level-variation)*/.duet-header-multi-level-variation.sc-duet-header-h{top:0}}@supports (position: sticky){/*!@:host(.duet-header-multi-level-variation)*/.duet-header-multi-level-variation.sc-duet-header-h{top:0}}/*!@.duet-header-reserved-space*/.duet-header-reserved-space.sc-duet-header{height:4rem}@media (min-width: 62em){/*!@.duet-header-reserved-space.duet-with-links*/.duet-header-reserved-space.duet-with-links.sc-duet-header{height:7rem}}/*!@.duet-header*/.duet-header.sc-duet-header{-webkit-user-select:none;user-select:none;position:fixed;top:0;left:0;z-index:400;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:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left}/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a}@media (min-width: 62em){/*!@.duet-header.duet-theme-turva*/.duet-header.duet-theme-turva.sc-duet-header{box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}}@media (min-width: 62em){/*!@.duet-header*/.duet-header.sc-duet-header{position:absolute;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}/*!@.duet-header.duet-header-inactive*/.duet-header.duet-header-inactive.sc-duet-header{position:fixed}}/*!@.duet-header **/.duet-header.sc-duet-header *.sc-duet-header{-webkit-tap-highlight-color:rgba(0, 0, 0, 0)}/*!@.duet-header-top*/.duet-header-top.sc-duet-header{position:relative;z-index:200;display:flex;flex-direction:row;align-items:center;width:100%;height:4rem;padding:0 16px;background:white;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07)}@media (min-width: 62em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{z-index:100;padding:0 28px;box-shadow:none}/*!@.duet-header-top duet-logo*/.duet-header-top.sc-duet-header duet-logo.sc-duet-header{padding-right:4px}}@media (min-width: 106.25em){/*!@.duet-header-top*/.duet-header-top.sc-duet-header{padding:0 48px}}/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{border-color:#e4e4e6;box-shadow:0 2px 6px 0 rgba(117, 117, 117, 0.13)}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-top*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header{box-shadow:none}}/*!@.duet-theme-turva .duet-header-top duet-logo*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header duet-logo.sc-duet-header{left:-80px !important;margin-top:-8px !important}/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{max-width:200px;padding-left:16px;margin-top:1px;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #cfd2d4}/*!@.duet-theme-turva .duet-header-top .duet-header-region*/.duet-theme-turva.sc-duet-header .duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{border-color:#cfcfd1}@media (max-width: 35.9375em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{display:none}}@media (min-width: 62em){/*!@.duet-header-top .duet-header-region*/.duet-header-top.sc-duet-header .duet-header-region.sc-duet-header{padding-left:19px}}/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:fixed;top:4rem;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;width:100%;overflow-y:auto;visibility:hidden;background:#f3f9fc;opacity:0;-webkit-overflow-scrolling:touch}/*!@.duet-theme-turva .duet-header-bottom*/.duet-theme-turva.sc-duet-header .duet-header-bottom.sc-duet-header{background:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;top:auto;bottom:auto;z-index:200;flex-direction:row;overflow:visible;visibility:visible;background:white;opacity:1}/*!@.duet-header-bottom.duet-header-inactive*/.duet-header-bottom.duet-header-inactive.sc-duet-header{position:relative}}/*!@.duet-header-bottom.active*/.duet-header-bottom.active.sc-duet-header{visibility:visible;opacity:1;transition:opacity 300ms ease, visibility 300ms ease}@media (min-width: 62em){/*!@.duet-header-bottom*/.duet-header-bottom.sc-duet-header{position:relative;transition:none !important}}/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:0;transition:transform 600ms ease, opacity 600ms ease;transform:translateY(-28px)}@media (min-width: 62em){/*!@.duet-header-items,\n.duet-header-bottom-utils,\n.duet-header-utils*/.duet-header-items.sc-duet-header,.duet-header-bottom-utils.sc-duet-header,.duet-header-utils.sc-duet-header{opacity:1;transition:none !important;transform:none}}/*!@.active .duet-header-items,\n.active .duet-header-bottom-utils,\n.active .duet-header-utils*/.active.sc-duet-header .duet-header-items.sc-duet-header,.active.sc-duet-header .duet-header-bottom-utils.sc-duet-header,.active.sc-duet-header .duet-header-utils.sc-duet-header{opacity:1;transform:translateY(0)}/*!@.duet-header-items*/.duet-header-items.sc-duet-header{position:relative;z-index:300;display:block;width:100%;font-size:1rem;font-weight:400;line-height:1.5;background:white}@media (min-width: 62em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{z-index:100;display:flex;flex-direction:row;padding:0 21.5384615385px}}@media (min-width: 106.25em){/*!@.duet-header-items*/.duet-header-items.sc-duet-header{padding-left:43.6363636364px}}/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border-bottom:1px solid #e1e3e6;border-radius:0}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item-container*/.duet-header-items.sc-duet-header .duet-header-item-container.sc-duet-header{border:0}}/*!@.duet-header-items .duet-header-second-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 40px;border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-button*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-button.sc-duet-header{border:0}/*!@.duet-header-items .duet-header-second-level .duet-header-dropdown-content*/.duet-header-items.sc-duet-header .duet-header-second-level.sc-duet-header .duet-header-dropdown-content.sc-duet-header{padding:0;border:0}/*!@.duet-header-items .duet-header-third-level .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-third-level.sc-duet-header .duet-header-item.sc-duet-header{padding:0 75px}/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;padding:0 20px;overflow:hidden;font-size:1rem;line-height:48px;color:#00294d;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{font-weight:600;border-radius:4px}}/*!@.duet-theme-turva .duet-header-items .duet-header-item*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{color:#171c3a;border-color:#e1e3e6}/*!@.duet-header-items .duet-header-item:hover*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-items .duet-header-item:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:hover{color:#444445}/*!@.duet-header-items .duet-header-item:focus*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header: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 .duet-header-items .duet-header-item:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item*/.duet-header-items.sc-duet-header .duet-header-item.sc-duet-header{width:auto;max-width:300px;padding:0 12px;overflow:hidden;font-size:0.875rem;text-overflow:ellipsis;border:0}}/*!@.duet-header-items .duet-header-item.active*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header{color:#c60c30}/*!@.duet-header-items .duet-header-item.active:hover*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header:hover{color:#c60c30}/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-items .duet-header-item.active::after*/.duet-theme-turva.sc-duet-header .duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{background:#c60c30}@media (min-width: 62em){/*!@.duet-header-items .duet-header-item.active::after*/.duet-header-items.sc-duet-header .duet-header-item.active.sc-duet-header::after{top:auto;left:12px;width:calc(100% - 24px);height:3px}}/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-right:-8px;margin-left:auto;cursor:pointer;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-header-toggle:focus*/.duet-header-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-toggle.sc-duet-header: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 .duet-header-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}@media (min-width: 62em){/*!@.duet-header-toggle*/.duet-header-toggle.sc-duet-header{display:none}}/*!@.duet-header-hamburger*/.duet-header-hamburger.sc-duet-header{position:relative;width:24px;height:24px;margin-top:5px !important;pointer-events:none;transition:0.4s ease-in-out;backface-visibility:hidden}/*!@.duet-header-hamburger .duet-header-bar*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{position:absolute;left:0;display:block;width:100%;height:2px;background:#00294d;border-radius:20rem;opacity:1;transition:0.25s ease-in-out;transform:rotate(0deg) scale(0.98)}/*!@.duet-theme-turva .duet-header-hamburger .duet-header-bar*/.duet-theme-turva.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header{background:#171c3a}/*!@.duet-header-hamburger .duet-header-bar:nth-child(1)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:0}/*!@.duet-header-hamburger .duet-header-bar:nth-child(2), .duet-header-hamburger .duet-header-bar:nth-child(3)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2),.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){top:7px}/*!@.duet-header-hamburger .duet-header-bar:nth-child(4)*/.duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:14px}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(1)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(1){top:7px;left:50%;width:0%}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(2)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(2){transform:rotate(45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(3)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(3){transform:rotate(-45deg)}/*!@button.active .duet-header-hamburger .duet-header-bar:nth-child(4)*/button.active.sc-duet-header .duet-header-hamburger.sc-duet-header .duet-header-bar.sc-duet-header:nth-child(4){top:7px;left:50%;width:0%}/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{display:flex;flex-direction:column;width:100%}@media (min-width: 62em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{position:absolute;top:-4rem;right:0;z-index:999999999;flex-direction:row;align-items:center;justify-content:space-between;width:auto;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-utils*/.duet-header-utils.sc-duet-header{margin-right:36px}}@media (min-width: 62em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{position:absolute;top:0;right:0;z-index:999999999;margin-right:20px}}@media (min-width: 106.25em){/*!@.duet-header-bottom-utils*/.duet-header-bottom-utils.sc-duet-header{margin-right:36px}}/*!@button*/button.sc-duet-header{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-theme-turva button*/.duet-theme-turva.sc-duet-header button.sc-duet-header{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}/*!@.duet-header-button*/.duet-header-button.sc-duet-header{position:relative;display:flex;align-items:center;width:100%;height:48px;padding:0 20px;overflow:hidden;font-size:1rem;font-weight:400;line-height:48px;color:#00294d;text-align:left;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-bottom:1px solid #e1e3e6;border-radius:4px;-webkit-appearance:none;appearance:none}/*!@.duet-theme-turva .duet-header-button*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header{color:#171c3a;border-color:#e4e4e6}/*!@.duet-header-button:hover*/.duet-header-button.sc-duet-header:hover{color:#004d80}/*!@.duet-theme-turva .duet-header-button:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:hover{color:#940925}/*!@.duet-header-button:focus*/.duet-header-button.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-button.sc-duet-header: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 .duet-header-button:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-button:active*/.duet-header-button.sc-duet-header:active{opacity:0.75}@media (min-width: 62em){/*!@.duet-header-button*/.duet-header-button.sc-duet-header{width:auto;max-width:200px;height:4rem;padding:0 16px;font-size:0.875rem;line-height:4rem;border:0}/*!@.duet-header-button::before*/.duet-header-button.sc-duet-header::before{position:absolute;top:50%;right:0;width:1px;height:20px;content:\"\";background:#cfd2d4;transform:translateY(-50%)}/*!@.duet-theme-turva .duet-header-button::before*/.duet-theme-turva.sc-duet-header .duet-header-button.sc-duet-header::before{background:#cfcfd1}}/*!@.duet-header-button.active*/.duet-header-button.active.sc-duet-header{color:#0077b3;border-radius:0}/*!@.duet-theme-turva .duet-header-button.active*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header{color:#c60c30}/*!@.duet-header-button.active:hover*/.duet-header-button.active.sc-duet-header:hover{color:#0077b3}/*!@.duet-theme-turva .duet-header-button.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header:hover{color:#c60c30}@media (min-width: 62em){/*!@.duet-header-button.active::after*/.duet-header-button.active.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:3px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-button.active::after*/.duet-theme-turva.sc-duet-header .duet-header-button.active.sc-duet-header::after{color:#c60c30}}/*!@.duet-header-button.duet-header-logout .duet-header-icon.mobile*/.duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.mobile.sc-duet-header{display:block}/*!@.duet-header-button.duet-header-logout .duet-header-icon.desktop*/.duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.desktop.sc-duet-header{display:none}@media (min-width: 62em){/*!@.duet-header-button.duet-header-logout .duet-header-icon.mobile*/.duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.mobile.sc-duet-header{display:none}/*!@.duet-header-button.duet-header-logout .duet-header-icon.desktop*/.duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.desktop.sc-duet-header{display:block}}/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{align-self:center;justify-content:center;width:auto;height:2.5rem;margin:2.25rem 0;font-weight:600;border:2px solid #00294d;border-radius:20rem}/*!@.duet-theme-turva .duet-header-utils .duet-header-button.duet-header-logout*/.duet-theme-turva.sc-duet-header .duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{border-color:#171c3a}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.5rem}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-button-label*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-button-label.sc-duet-header{font-size:0.875rem}@media (min-width: 62em){/*!@.duet-header-utils .duet-header-button.duet-header-logout*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header{height:4rem;margin:0;font-weight:400;border:0}/*!@.duet-header-utils .duet-header-button.duet-header-logout .duet-header-icon*/.duet-header-utils.sc-duet-header .duet-header-button.duet-header-logout.sc-duet-header .duet-header-icon.sc-duet-header{margin-right:0.75rem}}/*!@.duet-header-no-action*/.duet-header-no-action.sc-duet-header{pointer-events:none}/*!@.duet-header-user-label*/.duet-header-user-label.sc-duet-header{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child::before,\n.duet-header-utils > *:last-child button::before*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child::before,.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child button.sc-duet-header::before{display:none}}@media (min-width: 62em){/*!@.duet-header-utils > *:last-child .duet-header-dropdown-content*/.duet-header-utils.sc-duet-header>*.sc-duet-header:last-child .duet-header-dropdown-content.sc-duet-header{right:0;left:auto}}/*!@.duet-header-language*/.duet-header-language.sc-duet-header{text-transform:uppercase}/*!@.duet-header-language.active, .duet-header-language.active:hover,\n.duet-header-contact.active,\n.duet-header-contact.active:hover*/.duet-header-language.active.sc-duet-header,.duet-header-language.active.sc-duet-header:hover,.duet-header-contact.active.sc-duet-header,.duet-header-contact.active.sc-duet-header:hover{color:inherit}/*!@.duet-theme-turva .duet-header-language.active, .duet-theme-turva .duet-header-language.active:hover,\n.duet-theme-turva .duet-header-contact.active,\n.duet-theme-turva .duet-header-contact.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-language.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-language.active.sc-duet-header:hover,.duet-theme-turva.sc-duet-header .duet-header-contact.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-contact.active.sc-duet-header:hover{color:inherit}/*!@.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header:hover::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header:hover::after{width:0}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-language.duet-header-dropdown-toggle.active:hover::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active::after,\n.duet-header-dropdown .duet-header-contact.duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-language.duet-header-dropdown-toggle.active.sc-duet-header:hover::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-contact.duet-header-dropdown-toggle.active.sc-duet-header:hover::after{width:100%}}/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{display:inline-flex;min-width:12px;margin-right:12px;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){/*!@.duet-header-icon*/.duet-header-icon.sc-duet-header{margin-right:8px}}/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{position:absolute;top:50%;right:20px;display:flex;width:10px;height:10px;margin-left:8px;line-height:normal;pointer-events:none;transition:300ms ease;transform:translateY(-50%);transform-origin:50% 50%}@media (min-width: 62em){/*!@.duet-header-caret*/.duet-header-caret.sc-duet-header{width:7px;height:7px}}/*!@.duet-header-caret duet-icon*/.duet-header-caret.sc-duet-header duet-icon.sc-duet-header{width:10px}/*!@.duet-header-dropdown-toggle.active .duet-header-caret*/.duet-header-dropdown-toggle.active.sc-duet-header .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(180deg)}/*!@.duet-header-dropdown-toggle:focus*/.duet-header-dropdown-toggle.sc-duet-header:focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown-toggle.sc-duet-header: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 .duet-header-dropdown-toggle:focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown-toggle:active*/.duet-header-dropdown-toggle.sc-duet-header:active{outline:none}/*!@.duet-header-badge*/.duet-header-badge.sc-duet-header{display:inline-block;width:6px;height:6px;margin-top:-1rem;margin-left:5px;vertical-align:top;background:#f7b228;border-radius:50%;box-shadow:0 0 0 1px #c18b1f}/*!@.duet-theme-turva .duet-header-badge*/.duet-theme-turva.sc-duet-header .duet-header-badge.sc-duet-header{background:#faa40f}/*!@.active-bar*/.active-bar.sc-duet-header{color:#0077b3}/*!@.active-bar::after*/.active-bar.sc-duet-header::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .active-bar::after*/.duet-theme-turva.sc-duet-header .active-bar.sc-duet-header::after{background:#c60c30}/*!@.duet-header-dropdown*/.duet-header-dropdown.sc-duet-header{position:relative}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:200;padding-right:36px;overflow:hidden;transition:border 300ms ease}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px !important;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header::after{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border-bottom:1px solid #f5f8fa}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:0;bottom:0;left:0;width:4px;content:\"\";background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{background:#c60c30}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{border-color:#f5f5f7}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#004d80;border:0}/*!@.duet-header-dropdown .duet-header-dropdown-toggle.active::after, .duet-header-dropdown .duet-header-dropdown-toggle.active:hover::after*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header::after,.duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover::after{position:absolute;top:auto;bottom:0;left:0;width:100%;height:3px;transform:translateY(0)}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:hover{color:#940925}}@media (min-width: 62em){/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.sc-duet-header{color:white;background:#c60c30;border-radius:0}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session:hover, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session.active, .duet-theme-turva .duet-header-dropdown .duet-header-dropdown-toggle.duet-header-session.active:hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.sc-duet-header:hover,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.active.sc-duet-header,.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.duet-header-session.active.sc-duet-header:hover{color:white;background:#940925}}/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{display:none;padding-bottom:16px;background:#f3f9fc;border-bottom:1px solid #e1e3e6}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e1e3e6}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{position:absolute;top:100%;left:0;z-index:600;display:block;min-width:150px;padding-top:16px;padding-left:0;visibility:hidden;border:0;border-radius:4px;border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:300ms ease;transform:scale(0.85) translateZ(0) translateY(-20px)}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header{right:0%;left:auto;min-width:225px}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items .duet-header-session-label*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header .duet-header-session-label.sc-duet-header{padding:0 20px;font-weight:600}}@media (min-width: 64.0625em){/*!@.duet-header-dropdown .duet-header-dropdown-content*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{min-width:170px}/*!@.duet-header-dropdown .duet-header-dropdown-content.duet-header-session-items*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.duet-header-session-items.sc-duet-header{min-width:225px}}/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{display:block}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content.active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.active.sc-duet-header{visibility:visible;opacity:1;transform:translateZ(0) translateY(0)}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding:3px 8px 4px !important;position:relative;display:block;width:100%;padding-right:16px;padding-left:48px !important;overflow:hidden;font-size:0.875rem;font-weight:400;line-height:1.5;color:#00294d;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:300ms ease}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){color:#171c3a}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item)*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item){padding-right:20px !important;padding-left:20px !important}}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#e6f2f8}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):hover*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):hover{background:#e4e4e6}}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{outline:0}/*!@:host(.user-is-tabbing) .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):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 .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item):focus*/.user-is-tabbing.sc-duet-header-h .duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item):focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{padding-right:36px;font-weight:600;vertical-align:baseline}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{font-weight:700}@media (min-width: 62em){/*!@.duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{color:white;background:#0077b3}/*!@.duet-theme-turva .duet-header-dropdown .duet-header-dropdown-content a:not(.duet-header-item).active*/.duet-theme-turva.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header:not(.duet-header-item).active{background:#c60c30}}/*!@.duet-header-dropdown .duet-header-dropdown-content .duet-header-link-external*/.duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-link-external.sc-duet-header{margin-left:4px}/*!@.duet-header-back .duet-header-top*/.duet-header-back.sc-duet-header .duet-header-top.sc-duet-header{flex-direction:row;align-items:center;justify-content:center}/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{position:absolute;top:50%;left:36px;transform:translateY(-50%)}@media (max-width: 35.9375em){/*!@.duet-header-back duet-button*/.duet-header-back.sc-duet-header duet-button.sc-duet-header{left:20px;max-width:40px;padding:0 12px;overflow:hidden}}/*!@.duet-header-back .duet-header-toggle*/.duet-header-back.sc-duet-header .duet-header-toggle.sc-duet-header{display:none !important}/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:#0077b3;text-align:center;text-decoration:none;background:white;border-radius:4px;opacity:0}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-theme-turva .duet-header-skip:focus, .duet-header-skip:focus.duet-theme-turva*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header:focus,.duet-header-skip.sc-duet-header:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-theme-turva .duet-header-skip*/.duet-theme-turva.sc-duet-header .duet-header-skip.sc-duet-header{min-width:120px;color:#171c3a}@media (min-width: 106.25em){/*!@.duet-header-skip*/.duet-header-skip.sc-duet-header{margin-left:20px}}/*!@.duet-header-skip:focus*/.duet-header-skip.sc-duet-header:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}@media (min-width: 62em){/*!@.duet-header-items-have-sub-items*/.duet-header-items-have-sub-items.sc-duet-header{display:none}}/*!@.duet-header-multi-level*/.duet-header-multi-level.sc-duet-header{display:none;height:6rem}@media (min-width: 62em){/*!@.duet-header-multi-level*/.duet-header-multi-level.sc-duet-header{display:block}}/*!@.duet-header-multi-level .duet-header-top*/.duet-header-multi-level.sc-duet-header .duet-header-top.sc-duet-header{justify-content:space-between;height:6rem}/*!@.duet-header-multi-level .duet-header-button*/.duet-header-multi-level.sc-duet-header .duet-header-button.sc-duet-header{height:6rem}/*!@.duet-header-multi-level .logo-and-segment*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header{display:flex;flex-basis:0;flex-direction:column;flex-grow:1;padding-top:1rem}/*!@.duet-header-multi-level .logo-and-segment .duet-header-dropdown*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400;margin-left:2rem}/*!@.duet-header-multi-level .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level .logo-and-segment button*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header{align-items:flex-start;height:2rem;font-weight:600;line-height:1rem}/*!@.duet-header-multi-level .logo-and-segment button::before*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level .logo-and-segment .duet-header-caret*/.duet-header-multi-level.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-caret.sc-duet-header{top:25%}/*!@.duet-header-multi-level-nav*/.duet-header-multi-level-nav.sc-duet-header{display:flex}/*!@.duet-header-multi-level-nav .duet-header-dropdown*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header{position:static}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-toggle*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{z-index:400;padding-right:1rem;font-size:1rem;font-weight:600}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#0077b3}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-toggle.active:not(.open) .duet-header-caret*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header:not(.open) .duet-header-caret.sc-duet-header{transform:translateY(-50%) rotate(0deg)}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{z-index:399;display:flex;justify-content:center;width:100%;height:4.5rem;padding:0;background:#f3f9fc;border-top:1px solid #e1e3e6;border-bottom:1px solid #e1e3e6;box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07);transition:none}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;min-width:6rem;height:100%;padding:0 1rem !important;font-weight:600}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{position:absolute;top:auto;bottom:0;left:0;display:block !important;width:100%;height:3px;content:\"\";background:#0077b3;transition:300ms ease;transform:translateY(3px)}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{font-weight:600;color:#0077b3;background:none}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a.active::after*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header::after{transform:translateY(0)}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a .duet-header-icon*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header .duet-header-icon.sc-duet-header{margin:0}/*!@.duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content .duet-header-badge*/.duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header .duet-header-badge.sc-duet-header{position:absolute;margin-top:-2rem;margin-right:-2.25rem}/*!@.duet-header-multi-level-nav button::before*/.duet-header-multi-level-nav.sc-duet-header button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-nav .duet-header-caret*/.duet-header-multi-level-nav.sc-duet-header .duet-header-caret.sc-duet-header{right:1%}/*!@.duet-header-multi-level-utils*/.duet-header-multi-level-utils.sc-duet-header{display:flex;flex-basis:0;flex-grow:1;justify-content:flex-end}/*!@.duet-header-multi-level-utils > :last-child::before*/.duet-header-multi-level-utils.sc-duet-header>.sc-duet-header:last-child::before{display:none}/*!@.duet-header-multi-level-utils > :last-child.duet-header-dropdown .duet-header-button::before*/.duet-header-multi-level-utils.sc-duet-header>.sc-duet-header:last-child.duet-header-dropdown .duet-header-button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level-utils .duet-header-dropdown*/.duet-header-multi-level-utils.sc-duet-header .duet-header-dropdown.sc-duet-header{z-index:400}/*!@.duet-header-multi-level-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f3f9fc}/*!@.duet-header-multi-level-utils .duet-header-button-label,\n.duet-header-multi-level-utils .duet-header-dropdown-label*/.duet-header-multi-level-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:none}@media (min-width: 64.0625em){/*!@.duet-header-multi-level-utils .duet-header-button-label,\n.duet-header-multi-level-utils .duet-header-dropdown-label*/.duet-header-multi-level-utils.sc-duet-header .duet-header-button-label.sc-duet-header,.duet-header-multi-level-utils.sc-duet-header .duet-header-dropdown-label.sc-duet-header{display:initial}}/*!@.duet-header-multi-level .duet-theme-turva .logo-and-segment .duet-header-dropdown*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header{margin-left:0}/*!@.duet-header-multi-level .duet-theme-turva .logo-and-segment .duet-header-dropdown-toggle*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown-toggle.sc-duet-header{padding-left:0.5rem}/*!@.duet-header-multi-level .duet-theme-turva .logo-and-segment .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .logo-and-segment.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-utils > :nth-last-child(2).duet-header-dropdown .duet-header-button::before*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-utils.sc-duet-header>.sc-duet-header:nth-last-child(2).duet-header-dropdown .duet-header-button.sc-duet-header::before{display:none}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-toggle.active*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-toggle.active.sc-duet-header{color:#c60c30}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7;border-color:#e4e4e6}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a::after*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.sc-duet-header::after{background:#c60c30}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-nav .duet-header-dropdown .duet-header-dropdown-content a.active*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-nav.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header a.active.sc-duet-header{color:#c60c30;background:none}/*!@.duet-header-multi-level .duet-theme-turva .duet-header-multi-level-utils .duet-header-dropdown .duet-header-dropdown-content*/.duet-header-multi-level.sc-duet-header .duet-theme-turva.sc-duet-header .duet-header-multi-level-utils.sc-duet-header .duet-header-dropdown.sc-duet-header .duet-header-dropdown-content.sc-duet-header{background:#f5f5f7}";
|
|
10841
10852
|
|
|
10842
10853
|
const createEvent = (ev, data) => ({
|
|
10843
10854
|
component: "duet-header",
|
|
@@ -10846,7 +10857,7 @@ const createEvent = (ev, data) => ({
|
|
|
10846
10857
|
});
|
|
10847
10858
|
/**
|
|
10848
10859
|
* @slot utility - A slot for utilities, such as a notification drawer or shopping basket.
|
|
10849
|
-
* @slot logo-utility - A slot to place elements alongside the logo. This takes precedence over the **region** prop. Note: not available in
|
|
10860
|
+
* @slot logo-utility - A slot to place elements alongside the logo. This takes precedence over the **region** prop. Note: not available in multilevel header.
|
|
10850
10861
|
* @part header - piercing selector for styling the header element.
|
|
10851
10862
|
*/
|
|
10852
10863
|
class DuetHeader {
|
|
@@ -10864,7 +10875,6 @@ class DuetHeader {
|
|
|
10864
10875
|
this.duetSkipClick = createEvent$2(this, "duetSkipClick", 7);
|
|
10865
10876
|
this.duetAnalytics = createEvent$2(this, "duetAnalytics", 7);
|
|
10866
10877
|
this.duetMobileNavToggle = createEvent$2(this, "duetMobileNavToggle", 7);
|
|
10867
|
-
var _a;
|
|
10868
10878
|
/**
|
|
10869
10879
|
* Own Properties
|
|
10870
10880
|
*/
|
|
@@ -10891,7 +10901,7 @@ class DuetHeader {
|
|
|
10891
10901
|
this.processedSearch = null;
|
|
10892
10902
|
this.processedUser = null;
|
|
10893
10903
|
this.processedBack = null;
|
|
10894
|
-
this.renderDesktopNav =
|
|
10904
|
+
this.renderDesktopNav = true ;
|
|
10895
10905
|
/**
|
|
10896
10906
|
* Theme of the header.
|
|
10897
10907
|
*/
|
|
@@ -11007,7 +11017,7 @@ class DuetHeader {
|
|
|
11007
11017
|
this.skipToId = "";
|
|
11008
11018
|
/**
|
|
11009
11019
|
* Region that is shown next to the logo. If empty, region will be hidden.
|
|
11010
|
-
* Note: not available in
|
|
11020
|
+
* Note: not available in multilevel header.
|
|
11011
11021
|
*/
|
|
11012
11022
|
this.region = "";
|
|
11013
11023
|
/**
|
|
@@ -11252,8 +11262,9 @@ class DuetHeader {
|
|
|
11252
11262
|
* Local methods.
|
|
11253
11263
|
*/
|
|
11254
11264
|
async refresh() {
|
|
11255
|
-
|
|
11256
|
-
|
|
11265
|
+
var _a;
|
|
11266
|
+
if (this.renderDesktopNav !== Build.isServer ? true : (_a = this.mql[0]) === null || _a === void 0 ? void 0 : _a.matches) {
|
|
11267
|
+
this.renderDesktopNav = true ;
|
|
11257
11268
|
this.openMenu = null;
|
|
11258
11269
|
if (this.isSlideOutOpen) {
|
|
11259
11270
|
this.toggleMenu(document.createEvent("UIEvents"), "mobile");
|
|
@@ -11326,17 +11337,16 @@ class DuetHeader {
|
|
|
11326
11337
|
*/
|
|
11327
11338
|
render() {
|
|
11328
11339
|
const { skipLabel, changeLanguage, activeLanguage } = this.accessibleI18nLabels;
|
|
11329
|
-
const skipToLabel = this.skipToId ? (hAsync("a", { href: this.skipToId, class: "duet-header-skip", onClick: this.handleSkipClick }, skipLabel)) : null;
|
|
11330
|
-
const logo = (hAsync("duet-logo", { href: this.logoHref, size: "medium", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
11331
|
-
const largeLogo = (hAsync("duet-logo", { href: this.logoHref, size: "large", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
11332
|
-
const contactDropdown = this.contact && this.processedContactItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-contact", label: this.contact, icon: navigationContactDropdown.svg, active: this.isContactOpen, isOpen: this.isContactOpen, badge: false, toggleRef: el => (this.contactItemsButtonEl = el), itemsRef: el => (this.contactItemsEl = el), onToggle: event => this.toggleMenu(event, "contact") }, this.processedContactItems.map(item => (hAsync("a", { role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleContactClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.label, Build.isBrowser ))))) : null;
|
|
11333
|
-
const languageDropdown = this.language && this.processedLanguageItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-language", label: this.language, icon: navigationLanguage.svg, accessibleText: `${changeLanguage}${this.hasLanguageChanged ? `, ${activeLanguage}` : ""}`, active: this.isLanguageOpen, isOpen: this.isLanguageOpen, badge: false, toggleRef: el => (this.languageItemsButtonEl = el), itemsRef: el => (this.languageItemsEl = el), onToggle: event => this.toggleMenu(event, "language") }, this.processedLanguageItems.map(item => (hAsync("a", { class: { active: this.language === item.country }, "aria-selected": this.language === item.country, role: "menuitem", id: item.id, lang: item.country, href: item.href || "#", onClick: event => this.handleLanguageClick(event, item), onKeyDown: this.handleArrowKeys }, item.label))))) : null;
|
|
11334
|
-
const processedUserWithLink = this.processedUser && this.processedUser.href ? (hAsync("a", { href: this.processedUser.href || "#", id: this.processedUser.id, class: "duet-header-user duet-header-button", onClick: this.handleUserClick }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
11335
|
-
const processedUserWithoutLink = this.processedUser && !this.processedUser.href ? (hAsync("span", { id: this.processedUser.id, class: "duet-header-user duet-header-button duet-header-no-action" }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
11336
|
-
const
|
|
11337
|
-
const
|
|
11338
|
-
const
|
|
11339
|
-
const processedSearch = this.processedSearch ? (hAsync("a", { href: this.processedSearch.href || "#", id: this.processedSearch.id, class: "duet-header-search duet-header-button", onClick: this.handleSearchClick }, hAsync(DuetHeaderIcon, { icon: formSearch.svg }), hAsync("span", { class: "duet-header-button-label" }, this.processedSearch.label))) : null;
|
|
11340
|
+
const skipToLabel = () => this.skipToId ? (hAsync("a", { href: this.skipToId, class: "duet-header-skip", onClick: this.handleSkipClick }, skipLabel)) : null;
|
|
11341
|
+
const logo = () => (hAsync("duet-logo", { href: this.logoHref, size: "medium", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
11342
|
+
const largeLogo = () => (hAsync("duet-logo", { href: this.logoHref, size: "large", ref: el => (this.logoEl = el), language: this.language, theme: this.theme, onClick: this.handleLogoClick }));
|
|
11343
|
+
const contactDropdown = () => this.contact && this.processedContactItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-contact", label: this.contact, icon: navigationContactDropdown.svg, active: this.isContactOpen, isOpen: this.isContactOpen, badge: false, toggleRef: el => (this.contactItemsButtonEl = el), itemsRef: el => (this.contactItemsEl = el), onToggle: event => this.toggleMenu(event, "contact") }, this.processedContactItems.map(item => (hAsync("a", { role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleContactClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.label, Build.isBrowser ))))) : null;
|
|
11344
|
+
const languageDropdown = () => this.language && this.processedLanguageItems ? (hAsync(DuetHeaderDropdown, { id: "duet-header-language", label: this.language, icon: navigationLanguage.svg, accessibleText: `${changeLanguage}${this.hasLanguageChanged ? `, ${activeLanguage}` : ""}`, active: this.isLanguageOpen, isOpen: this.isLanguageOpen, badge: false, toggleRef: el => (this.languageItemsButtonEl = el), itemsRef: el => (this.languageItemsEl = el), onToggle: event => this.toggleMenu(event, "language") }, this.processedLanguageItems.map(item => (hAsync("a", { class: { active: this.language === item.country }, "aria-selected": this.language === item.country, role: "menuitem", id: item.id, lang: item.country, href: item.href || "#", onClick: event => this.handleLanguageClick(event, item), onKeyDown: this.handleArrowKeys }, item.label))))) : null;
|
|
11345
|
+
const processedUserWithLink = () => this.processedUser && this.processedUser.href ? (hAsync("a", { href: this.processedUser.href || "#", id: this.processedUser.id, class: "duet-header-user duet-header-button", onClick: this.handleUserClick }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
11346
|
+
const processedUserWithoutLink = () => this.processedUser && !this.processedUser.href ? (hAsync("span", { id: this.processedUser.id, class: "duet-header-user duet-header-button duet-header-no-action" }, hAsync(DuetHeaderIcon, { icon: navigationUser.svg }), hAsync("span", { class: "duet-header-user-label" }, this.processedUser.label))) : null;
|
|
11347
|
+
const processedSession = () => this.processedSession ? (hAsync("a", { href: this.processedSession.href || "#", id: this.processedSession.id, class: "duet-header-logout duet-header-button", onClick: this.handleSessionClick }, hAsync(DuetHeaderIcon, { class: "desktop", icon: this.processedSession.type === "logout" ? navigationLogout.svg : navigationLogin.svg, iconSize: "x-small" }), hAsync(DuetHeaderIcon, { class: "mobile", icon: this.processedSession.type === "logout" ? navigationLogout.svg : navigationLogin.svg, iconSize: "small" }), hAsync("span", { class: "duet-header-button-label" }, this.processedSession.label))) : null;
|
|
11348
|
+
const processedSessionDropdown = () => this.processedSession && this.processedSession.sessionItems ? (hAsync(DuetHeaderDropdown, { className: "duet-header-session", id: "duet-header-session", label: this.processedSession.label, icon: this.processedSession.type === "logout" ? navigationLogout.svg : navigationLogin.svg, active: this.isSessionOpen, isOpen: this.isSessionOpen, badge: false, toggleRef: el => (this.sessionItemsButtonEl = el), itemsRef: el => (this.sessionItemsEl = el), onToggle: event => this.toggleMenu(event, "session") }, this.processedSession.sessionItems.map((sessionItem, index) => (hAsync(Fragment, null, sessionItem.label && hAsync("span", { class: "duet-header-session-label" }, sessionItem.label), hAsync("duet-spacer", { size: "small", "aria-hidden": "true" }), sessionItem.items.map(item => (hAsync("a", { role: "menuitem", "aria-label": sessionItem.label ? `${sessionItem.label} ${item.label}` : item.label, id: item.id, href: item.href || "#", onClick: event => this.handleSessionItemClick(event, item), onKeyDown: this.handleArrowKeys }, item.label))), index !== this.processedSession.sessionItems.length - 1 && (hAsync(Fragment, null, hAsync("duet-spacer", { size: "x-small", "aria-hidden": "true" }), hAsync("duet-divider", { margin: "none", "aria-hidden": "true" })))))))) : null;
|
|
11349
|
+
const processedSearch = () => this.processedSearch ? (hAsync("a", { href: this.processedSearch.href || "#", id: this.processedSearch.id, class: "duet-header-search duet-header-button", onClick: this.handleSearchClick }, hAsync(DuetHeaderIcon, { icon: formSearch.svg }), hAsync("span", { class: "duet-header-button-label" }, this.processedSearch.label))) : null;
|
|
11340
11350
|
// Back variation
|
|
11341
11351
|
if (this.processedBack) {
|
|
11342
11352
|
return (hAsync(Host, { class: "duet-header-back-variation" }, hAsync("div", { class: "duet-header-reserved-space" }, hAsync("header", { class: {
|
|
@@ -11344,52 +11354,27 @@ class DuetHeader {
|
|
|
11344
11354
|
"duet-theme-turva": this.theme === "turva",
|
|
11345
11355
|
"duet-header-back": true,
|
|
11346
11356
|
"duet-header-inactive": true,
|
|
11347
|
-
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel, hAsync("duet-button", { url: this.processedBack.href, id: this.processedBack.id, theme: this.theme, variation: "plain", color: this.theme === "turva" ? "secondary-turva" : "secondary", icon: "navigation-arrow-left", iconSize: "large", onClick: this.handleBackClick }, this.processedBack.label), logo, hAsync("slot", { name: "logo-utility" }))))));
|
|
11357
|
+
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel(), hAsync("duet-button", { url: this.processedBack.href, id: this.processedBack.id, theme: this.theme, variation: "plain", color: this.theme === "turva" ? "secondary-turva" : "secondary", icon: "navigation-arrow-left", iconSize: "large", onClick: this.handleBackClick }, this.processedBack.label), logo(), hAsync("slot", { name: "logo-utility" }))))));
|
|
11348
11358
|
}
|
|
11349
|
-
// multi level desktop variation
|
|
11350
11359
|
const itemsHaveSubItems = this.processedItems && this.processedItems.some(item => item.items && item.items.length > 0);
|
|
11351
|
-
if (this.renderDesktopNav && itemsHaveSubItems) {
|
|
11352
|
-
const activeSegment = this.processedItems.find(item => item.active);
|
|
11353
|
-
const isThirdLevelActive = this.processedItems &&
|
|
11354
|
-
this.processedItems.some(item => item.items &&
|
|
11355
|
-
item.items.some(secondLevelItem => secondLevelItem.items && secondLevelItem.items.some(thirdLevelItem => thirdLevelItem.active === true)));
|
|
11356
|
-
const segmentId = "duet-header-segment";
|
|
11357
|
-
return (hAsync(Host, { class: "duet-header-multi-level-desktop-variation" }, hAsync("div", { class: {
|
|
11358
|
-
"duet-header-multi-level-desktop": true,
|
|
11359
|
-
"duet-header-multi-level-desktop-third-level-is-open": isThirdLevelActive,
|
|
11360
|
-
} }, hAsync("header", { class: {
|
|
11361
|
-
"duet-header": true,
|
|
11362
|
-
"duet-theme-turva": this.theme === "turva",
|
|
11363
|
-
"duet-header-inactive": !this.processedItems,
|
|
11364
|
-
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel, hAsync("div", { class: "logo-and-segment" }, hAsync("div", null, largeLogo), this.processedItems && (hAsync(DuetHeaderDropdown, { id: segmentId, label: activeSegment.label, active: this.isSegmentOpen, isOpen: this.isSegmentOpen, badge: false, toggleRef: el => (this.segmentItemsButtonEl = el), itemsRef: el => (this.segmentItemsEl = el), onToggle: event => this.toggleMenu(event, "segment") }, this.processedItems.map(item => (hAsync("a", { class: { active: activeSegment === item }, role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleItemClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: item.icon, color: "currentColor" }))), hAsync("span", null, item.label), item.badge && hAsync("div", { class: "duet-header-badge" }))))))), hAsync("nav", { class: "duet-header-multi-level-desktop-nav" }, activeSegment.items &&
|
|
11365
|
-
activeSegment.items
|
|
11366
|
-
.filter(secondLevelItem => secondLevelItem.items && secondLevelItem.items.length > 0)
|
|
11367
|
-
.map((secondLevelItem, secondLevelItemIndex) => {
|
|
11368
|
-
const id = secondLevelItem.id || `segment-item-${secondLevelItemIndex}`;
|
|
11369
|
-
return (hAsync(DuetHeaderDropdown, { id: id, label: secondLevelItem.label, active: (!this.openMenu && secondLevelItem.active === true) || this.openMenu === id, isOpen: this.openMenu === id, badge: secondLevelItem.badge, toggleRef: el => (this.subMenuButtonRefs[id] = el), itemsRef: el => (this.subMenuItemRefs[id] = el), onToggle: event => this.toggleMenu(event, "sub", id) }, secondLevelItem.items &&
|
|
11370
|
-
secondLevelItem.items.map(thirdLevelItem => (hAsync("a", { class: { active: thirdLevelItem.active }, role: "menuitem", href: thirdLevelItem.href || "#", id: thirdLevelItem.id, onClick: event => this.handleItemClick(event, thirdLevelItem), onKeyDown: ev => this.handleArrowKeys(ev), target: thirdLevelItem.external ? "_blank" : "_self" }, thirdLevelItem.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "medium", name: thirdLevelItem.icon, color: "currentColor" }))), hAsync("span", null, thirdLevelItem.label), thirdLevelItem.badge && hAsync("div", { class: "duet-header-badge" }))))));
|
|
11371
|
-
})), hAsync("div", { class: "duet-header-multi-level-desktop-utils" }, processedSearch, languageDropdown, processedSessionDropdown != null ? processedSessionDropdown : processedSession), hAsync("slot", { name: "utility" }))))));
|
|
11372
|
-
}
|
|
11373
|
-
// Default variation
|
|
11374
11360
|
const isSecondLevelActive = this.processedItems &&
|
|
11375
11361
|
this.processedItems.some(item => item.items && item.items.some(secondLevelItem => secondLevelItem.active === true));
|
|
11376
11362
|
const isThirdLevelActive = this.processedItems &&
|
|
11377
11363
|
this.processedItems.some(item => item.items &&
|
|
11378
11364
|
item.items.some(secondLevelItem => secondLevelItem.items && secondLevelItem.items.some(thirdLevelItem => thirdLevelItem.active === true)));
|
|
11379
|
-
|
|
11380
|
-
"duet-header-default-variation": true,
|
|
11381
|
-
} }, hAsync("div", { class: {
|
|
11365
|
+
const defaultVariationContent = (hAsync("div", { class: {
|
|
11382
11366
|
"duet-header-reserved-space": true,
|
|
11383
11367
|
"duet-with-links": !!this.processedItems,
|
|
11384
11368
|
"duet-header-second-level-active": isSecondLevelActive,
|
|
11385
11369
|
"duet-header-third-level-active": isThirdLevelActive,
|
|
11370
|
+
"duet-header-items-have-sub-items": itemsHaveSubItems,
|
|
11386
11371
|
} }, hAsync("header", { class: {
|
|
11387
11372
|
"duet-header": true,
|
|
11388
11373
|
"duet-theme-turva": this.theme === "turva",
|
|
11389
11374
|
"duet-header-inactive": !this.processedItems,
|
|
11390
|
-
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel, logo, hAsync("slot", { name: "logo-utility" }, this.region && hAsync("div", { class: "duet-header-region" }, this.region)), (this.processedItems ||
|
|
11391
|
-
languageDropdown ||
|
|
11392
|
-
contactDropdown ||
|
|
11375
|
+
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel(), logo(), hAsync("slot", { name: "logo-utility" }, this.region && hAsync("div", { class: "duet-header-region" }, this.region)), (this.processedItems ||
|
|
11376
|
+
languageDropdown() ||
|
|
11377
|
+
contactDropdown() ||
|
|
11393
11378
|
this.processedSession ||
|
|
11394
11379
|
this.processedUser) && (hAsync("button", { class: { "duet-header-toggle": true, active: this.isSlideOutOpen }, onClick: event => this.toggleMenu(event, "mobile"), type: "button" }, hAsync("duet-visually-hidden", null, this.accessibleLabel), hAsync(DuetHeaderHamburger, null)))), hAsync("div", { ref: el => (this.navigationEl = el), class: {
|
|
11395
11380
|
"duet-header-bottom": true,
|
|
@@ -11423,7 +11408,34 @@ class DuetHeader {
|
|
|
11423
11408
|
"duet-header-item": true,
|
|
11424
11409
|
active: thirdLevelItem.active === true,
|
|
11425
11410
|
}, role: "menuitem", href: thirdLevelItem.href || "#", id: thirdLevelItem.id, onClick: event => this.handleItemClick(event, thirdLevelItem), onKeyDown: ev => this.handleArrowKeys(ev), target: thirdLevelItem.external ? "_blank" : "_self" }, thirdLevelItem.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "medium", name: thirdLevelItem.icon, color: "currentColor" }))), hAsync("span", null, thirdLevelItem.label), thirdLevelItem.badge && hAsync("div", { class: "duet-header-badge" })))))));
|
|
11426
|
-
}))))), hAsync("div", { class: "duet-header-bottom-utils" }, hAsync("slot", { name: "utility" })), hAsync("div", { class: "duet-header-utils" }, !itemsHaveSubItems && contactDropdown, languageDropdown, !itemsHaveSubItems && (hAsync(Fragment, null, processedUserWithLink, processedUserWithoutLink)), processedSearch, processedSession))))));
|
|
11411
|
+
}))))), hAsync("div", { class: "duet-header-bottom-utils" }, hAsync("slot", { name: "utility" })), hAsync("div", { class: "duet-header-utils" }, !itemsHaveSubItems && contactDropdown(), languageDropdown(), !itemsHaveSubItems && (hAsync(Fragment, null, processedUserWithLink(), processedUserWithoutLink())), processedSearch(), processedSession())))));
|
|
11412
|
+
// multi level variation
|
|
11413
|
+
if (itemsHaveSubItems) {
|
|
11414
|
+
const activeSegment = this.processedItems.find(item => item.active);
|
|
11415
|
+
const isThirdLevelActive = this.processedItems &&
|
|
11416
|
+
this.processedItems.some(item => item.items &&
|
|
11417
|
+
item.items.some(secondLevelItem => secondLevelItem.items && secondLevelItem.items.some(thirdLevelItem => thirdLevelItem.active === true)));
|
|
11418
|
+
const segmentId = "duet-header-segment";
|
|
11419
|
+
return (hAsync(Host, { class: "duet-header-multi-level-variation" }, hAsync("div", { class: {
|
|
11420
|
+
"duet-header-multi-level": true,
|
|
11421
|
+
"duet-header-multi-level-third-level-is-open": isThirdLevelActive,
|
|
11422
|
+
} }, hAsync("header", { class: {
|
|
11423
|
+
"duet-header": true,
|
|
11424
|
+
"duet-theme-turva": this.theme === "turva",
|
|
11425
|
+
"duet-header-inactive": !this.processedItems,
|
|
11426
|
+
}, part: "header" }, hAsync("div", { class: "duet-header-top" }, skipToLabel(), hAsync("div", { class: "logo-and-segment" }, hAsync("div", null, largeLogo()), this.processedItems && (hAsync(DuetHeaderDropdown, { id: segmentId, label: activeSegment.label, active: this.isSegmentOpen, isOpen: this.isSegmentOpen, badge: false, toggleRef: el => (this.segmentItemsButtonEl = el), itemsRef: el => (this.segmentItemsEl = el), onToggle: event => this.toggleMenu(event, "segment") }, this.processedItems.map(item => (hAsync("a", { class: { active: activeSegment === item }, role: "menuitem", href: item.href || "#", id: item.id, onClick: event => this.handleItemClick(event, item), onKeyDown: ev => this.handleArrowKeys(ev), target: item.external ? "_blank" : "_self" }, item.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: item.icon, color: "currentColor" }))), hAsync("span", null, item.label), item.badge && hAsync("div", { class: "duet-header-badge" }))))))), hAsync("nav", { class: "duet-header-multi-level-nav" }, activeSegment.items &&
|
|
11427
|
+
activeSegment.items
|
|
11428
|
+
.filter(secondLevelItem => secondLevelItem.items && secondLevelItem.items.length > 0)
|
|
11429
|
+
.map((secondLevelItem, secondLevelItemIndex) => {
|
|
11430
|
+
const id = secondLevelItem.id || `segment-item-${secondLevelItemIndex}`;
|
|
11431
|
+
return (hAsync(DuetHeaderDropdown, { id: id, label: secondLevelItem.label, active: (!this.openMenu && secondLevelItem.active === true) || this.openMenu === id, isOpen: this.openMenu === id, badge: secondLevelItem.badge, toggleRef: el => (this.subMenuButtonRefs[id] = el), itemsRef: el => (this.subMenuItemRefs[id] = el), onToggle: event => this.toggleMenu(event, "sub", id) }, secondLevelItem.items &&
|
|
11432
|
+
secondLevelItem.items.map(thirdLevelItem => (hAsync("a", { class: { active: thirdLevelItem.active }, role: "menuitem", href: thirdLevelItem.href || "#", id: thirdLevelItem.id, onClick: event => this.handleItemClick(event, thirdLevelItem), onKeyDown: ev => this.handleArrowKeys(ev), target: thirdLevelItem.external ? "_blank" : "_self" }, thirdLevelItem.icon && (hAsync("div", { class: "duet-header-icon" }, hAsync("duet-icon", { margin: "none", size: "medium", name: thirdLevelItem.icon, color: "currentColor" }))), hAsync("span", null, thirdLevelItem.label), thirdLevelItem.badge && hAsync("div", { class: "duet-header-badge" }))))));
|
|
11433
|
+
})), hAsync("div", { class: "duet-header-multi-level-utils" }, processedSearch(), languageDropdown(), processedSessionDropdown() != null ? processedSessionDropdown() : processedSession()), hAsync("slot", { name: "utility" })))), defaultVariationContent));
|
|
11434
|
+
}
|
|
11435
|
+
// Default variation
|
|
11436
|
+
return (hAsync(Host, { class: {
|
|
11437
|
+
"duet-header-default-variation": true,
|
|
11438
|
+
} }, defaultVariationContent));
|
|
11427
11439
|
}
|
|
11428
11440
|
get element() { return getElement(this); }
|
|
11429
11441
|
static get watchers() { return {
|
|
@@ -11567,8 +11579,11 @@ class DuetHeading {
|
|
|
11567
11579
|
const duetHeroCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-hero,*.sc-duet-hero::after,*.sc-duet-hero::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-hero-h{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*/.duet-hero.sc-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:#00294d}/*!@.duet-hero.duet-p-0*/.duet-hero.duet-p-0.sc-duet-hero{padding:0 !important}/*!@.duet-hero.duet-m-0*/.duet-hero.duet-m-0.sc-duet-hero{margin:0 !important}/*!@.duet-hero.duet-hero-text-center*/.duet-hero.duet-hero-text-center.sc-duet-hero{text-align:center !important}/*!@.duet-hero.duet-hero-light*/.duet-hero.duet-hero-light.sc-duet-hero{padding-bottom:0 !important}@media (min-width: 62em){/*!@.duet-hero.duet-hero-light*/.duet-hero.duet-hero-light.sc-duet-hero{padding-bottom:28px !important}}/*!@.duet-hero.duet-hero-with-image*/.duet-hero.duet-hero-with-image.sc-duet-hero{padding-bottom:20px !important;margin-bottom:-36px}@media (min-width: 48em){/*!@.duet-hero.duet-hero-with-image*/.duet-hero.duet-hero-with-image.sc-duet-hero{padding-bottom:28px !important}}@media (min-width: 62em){/*!@.duet-hero.duet-hero-with-image*/.duet-hero.duet-hero-with-image.sc-duet-hero{padding-bottom:36px !important;margin-bottom:-20px}}/*!@.duet-hero.duet-hero-light, .duet-hero.duet-hero-with-image*/.duet-hero.duet-hero-light.sc-duet-hero,.duet-hero.duet-hero-with-image.sc-duet-hero{color:#00294d;background-color:white;background-image:linear-gradient(#f3f9fc, #f9fcfe)}/*!@.duet-hero.duet-hero-light::before, .duet-hero.duet-hero-with-image::before*/.duet-hero.duet-hero-light.sc-duet-hero::before,.duet-hero.duet-hero-with-image.sc-duet-hero::before{position:absolute;top:100%;left:0;z-index:-1;width:100%;height:400px;content:\"\";background-image:linear-gradient(#f9fcfe, white)}/*!@.duet-hero.duet-hero-light.duet-theme-turva, .duet-hero.duet-hero-with-image.duet-theme-turva*/.duet-hero.duet-hero-light.duet-theme-turva.sc-duet-hero,.duet-hero.duet-hero-with-image.duet-theme-turva.sc-duet-hero{color:#171c3a;background-image:linear-gradient(#f5f5f7, #fafafb)}/*!@.duet-hero.duet-hero-light.duet-theme-turva::before, .duet-hero.duet-hero-with-image.duet-theme-turva::before*/.duet-hero.duet-hero-light.duet-theme-turva.sc-duet-hero::before,.duet-hero.duet-hero-with-image.duet-theme-turva.sc-duet-hero::before{background-image:linear-gradient(#fafafb, white)}/*!@.duet-hero.duet-hero-gray*/.duet-hero.duet-hero-gray.sc-duet-hero{color:#00294d;background:#f5f8fa}/*!@.duet-hero.duet-hero-gray.duet-theme-turva*/.duet-hero.duet-hero-gray.duet-theme-turva.sc-duet-hero{background:#f5f5f7}@media (min-width: 62em){/*!@.duet-hero.duet-hero-gray .duet-hero-text*/.duet-hero.duet-hero-gray.sc-duet-hero .duet-hero-text.sc-duet-hero{display:inline-block;vertical-align:top}/*!@.duet-hero.duet-hero-gray .duet-hero-icon + .duet-hero-text*/.duet-hero.duet-hero-gray.sc-duet-hero .duet-hero-icon.sc-duet-hero+.duet-hero-text.sc-duet-hero{margin-left:28px}}@media (min-width: 62em){/*!@.duet-hero.duet-hero-gray-with-actions*/.duet-hero.duet-hero-gray-with-actions.sc-duet-hero{padding-bottom:65.4545454545px}}@media (min-width: 62em){/*!@.duet-hero.duet-hero-gray-with-back*/.duet-hero.duet-hero-gray-with-back.sc-duet-hero{padding-top:72px}}/*!@.duet-hero.duet-theme-turva*/.duet-hero.duet-theme-turva.sc-duet-hero{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background:#c60c30}@media (min-width: 62em){/*!@.duet-hero*/.duet-hero.sc-duet-hero{min-height:290px;padding:111.6px 56px;overflow:visible}}/*!@.duet-hero-icon*/.duet-hero-icon.sc-duet-hero{display:inline-block;vertical-align:top}@media (min-width: 62em){/*!@.duet-hero-icon*/.duet-hero-icon.sc-duet-hero{margin-top:-8px}}@media (min-width: 62em){/*!@.duet-hero-heading*/.duet-hero-heading.sc-duet-hero{margin-top:12px}}@media (min-width: 62em){/*!@.duet-hero-heading-has-pre*/.duet-hero-heading-has-pre.sc-duet-hero{margin-top:0}}/*!@.duet-hero-wrapper*/.duet-hero-wrapper.sc-duet-hero{position:relative;width:100%;max-width:1110px;margin:0 auto;text-align:center}/*!@.duet-hero-left-align .duet-hero-wrapper*/.duet-hero-left-align.sc-duet-hero .duet-hero-wrapper.sc-duet-hero{text-align:left}/*!@.duet-hero-with-image .duet-hero-wrapper*/.duet-hero-with-image.sc-duet-hero .duet-hero-wrapper.sc-duet-hero{position:static}@media (min-width: 62em){/*!@.duet-hero-wrapper*/.duet-hero-wrapper.sc-duet-hero{text-align:left}}/*!@.duet-hero-text*/.duet-hero-text.sc-duet-hero{max-width:50rem;margin:0 auto}/*!@.duet-hero-text-center .duet-hero-text*/.duet-hero-text-center.sc-duet-hero .duet-hero-text.sc-duet-hero{text-align:center !important}@media (min-width: 48em){/*!@.duet-hero-text*/.duet-hero-text.sc-duet-hero{width:80%}/*!@.duet-hero-left-align .duet-hero-text*/.duet-hero-left-align.sc-duet-hero .duet-hero-text.sc-duet-hero{margin:0}}@media (min-width: 62em){/*!@.duet-hero-text*/.duet-hero-text.sc-duet-hero{width:52%;max-width:none;margin-top:-10px;margin-left:0}/*!@.duet-hero-text-center .duet-hero-text*/.duet-hero-text-center.sc-duet-hero .duet-hero-text.sc-duet-hero{margin-left:auto}}/*!@.duet-hero:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{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*/.duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{padding-bottom:40%}}@media (min-width: 48em){/*!@.duet-hero:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{max-width:420px;padding-bottom:34%}/*!@.duet-hero-light .duet-hero:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero-light.sc-duet-hero .duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{max-width:540px}}@media (min-width: 62em){/*!@.duet-hero:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{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*/.duet-hero-light.sc-duet-hero .duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{right:-60px;padding-bottom:26%}/*!@.duet-hero-gray .duet-hero:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero-gray.sc-duet-hero .duet-hero.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{right:-34px;padding-bottom:20%}}@media (min-width: 62em){/*!@.duet-hero-gray:not(.duet-hero-with-image) .duet-hero-image*/.duet-hero-gray.sc-duet-hero:not(.duet-hero-with-image) .duet-hero-image.sc-duet-hero{right:-34px;padding-bottom:20%}}/*!@.duet-hero-image-wrapper*/.duet-hero-image-wrapper.sc-duet-hero{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*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero{padding-bottom:68%;border-radius:44% 47% 38% 54%;transform:none}@media screen and (min-width: 440px){/*!@.duet-hero-image-wrapper*/.duet-hero-image-wrapper.sc-duet-hero{width:300px;padding-bottom:300px}/*!@.duet-theme-turva .duet-hero-image-wrapper*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero{width:80%;padding-bottom:68%}}@media (min-width: 62em){/*!@.duet-hero-image-wrapper*/.duet-hero-image-wrapper.sc-duet-hero{position:absolute;top:-60px;right:-50px;width:470px;padding-bottom:470px;margin:0}/*!@.duet-theme-turva .duet-hero-image-wrapper*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero{top:-40px;right:-80px;width:536px;padding-bottom:470px}}@media (min-width: 76.25em){/*!@.duet-hero-image-wrapper*/.duet-hero-image-wrapper.sc-duet-hero{top:-70px;right:-60px;width:600px;padding-bottom:600px}/*!@.duet-theme-turva .duet-hero-image-wrapper*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero{top:-70px;right:-60px;width:650px;padding-bottom:600px}}@media screen and (min-width: 1450px){/*!@.duet-hero-image-wrapper*/.duet-hero-image-wrapper.sc-duet-hero{top:-70px;right:25px}/*!@.duet-theme-turva .duet-hero-image-wrapper*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero{right:0}}/*!@.duet-hero-image-wrapper .duet-hero-image*/.duet-hero-image-wrapper.sc-duet-hero .duet-hero-image.sc-duet-hero{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*/.duet-theme-turva.sc-duet-hero .duet-hero-image-wrapper.sc-duet-hero .duet-hero-image.sc-duet-hero{top:0;left:0;width:100%;height:100%;transform:none}/*!@.duet-hero-image-mask*/.duet-hero-image-mask.sc-duet-hero{position:relative;margin:-48px auto 0;overflow:hidden}@media (min-width: 62em){/*!@.duet-hero-image-mask*/.duet-hero-image-mask.sc-duet-hero{position:absolute;top:0;right:0;width:470px;height:460px;margin:0}}@media (min-width: 76.25em){/*!@.duet-hero-image-mask*/.duet-hero-image-mask.sc-duet-hero{width:650px;height:580px}}@media screen and (min-width: 1450px){/*!@.duet-hero-image-mask*/.duet-hero-image-mask.sc-duet-hero{right:50%;transform:translateX(110%)}/*!@.duet-theme-turva .duet-hero-image-mask*/.duet-theme-turva.sc-duet-hero .duet-hero-image-mask.sc-duet-hero{transform:translateX(108%)}}/*!@duet-heading + duet-button*/duet-heading.sc-duet-hero+duet-button.sc-duet-hero{margin-top:12px !important}/*!@.duet-hero-links*/.duet-hero-links.sc-duet-hero{width:calc(100% + 56px);margin-top:48px;margin-left:-28px}/*!@.duet-hero-minimal .duet-hero-links*/.duet-hero-minimal.sc-duet-hero .duet-hero-links.sc-duet-hero{margin-top:28px}@media (min-width: 36em){/*!@.duet-hero-links*/.duet-hero-links.sc-duet-hero{margin-top:72px}/*!@.duet-hero-minimal .duet-hero-links*/.duet-hero-minimal.sc-duet-hero .duet-hero-links.sc-duet-hero{margin-top:28px}}@media (min-width: 62em){/*!@.duet-hero-links*/.duet-hero-links.sc-duet-hero{width:auto;margin:36px 0 0}/*!@.duet-hero-minimal .duet-hero-links*/.duet-hero-minimal.sc-duet-hero .duet-hero-links.sc-duet-hero{margin-top:28px}}/*!@.duet-hero-link*/.duet-hero-link.sc-duet-hero{display:flex;align-items:center;width:100%;padding:16px 16px 8px;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.25;color:#0077b3;text-align:left;text-decoration:none;border-bottom:1px solid #e1e3e6;transition:background-color 300ms ease}/*!@.duet-hero-link:focus*/.duet-hero-link.sc-duet-hero: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*/.duet-theme-turva.sc-duet-hero .duet-hero-link.sc-duet-hero:focus,.duet-hero-link.sc-duet-hero: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*/.duet-hero-link.sc-duet-hero:hover,.duet-hero-link.sc-duet-hero:hover .duet-hero-action-arrow.sc-duet-hero{color:#004d80 !important;background:transparent !important}/*!@.duet-theme-turva .duet-hero-link:hover, .duet-theme-turva .duet-hero-link:hover .duet-hero-action-arrow*/.duet-theme-turva.sc-duet-hero .duet-hero-link.sc-duet-hero:hover,.duet-theme-turva.sc-duet-hero .duet-hero-link.sc-duet-hero:hover .duet-hero-action-arrow.sc-duet-hero{color:#940925 !important}/*!@.duet-theme-turva .duet-hero-link*/.duet-theme-turva.sc-duet-hero .duet-hero-link.sc-duet-hero{color:#c60c30}@media (min-width: 36em){/*!@.duet-hero-link*/.duet-hero-link.sc-duet-hero{padding:16px 16px 16px 28px}}@media (min-width: 62em){/*!@.duet-hero-link*/.duet-hero-link.sc-duet-hero{display:inline-flex;width:auto;max-width:350px;padding:0;margin:0 28px 16px 0;border:0;border-radius:4px}}/*!@.duet-hero-link:hover*/.duet-hero-link.sc-duet-hero:hover{background:rgba(0, 0, 0, 0.02)}@media (min-width: 62em){/*!@.duet-hero-link:hover*/.duet-hero-link.sc-duet-hero:hover{background:transparent}}/*!@.duet-hero-link:first-of-type*/.duet-hero-link.sc-duet-hero:first-of-type{border-top:1px solid #e1e3e6}@media (min-width: 62em){/*!@.duet-hero-link:first-of-type*/.duet-hero-link.sc-duet-hero:first-of-type{margin-top:0;border:0}}/*!@.duet-hero-link:last-of-type*/.duet-hero-link.sc-duet-hero:last-of-type{margin-bottom:-48px}@media (min-width: 62em){/*!@.duet-hero-link:last-of-type*/.duet-hero-link.sc-duet-hero:last-of-type{margin-right:0;margin-bottom:0}}/*!@.duet-hero-link span*/.duet-hero-link.sc-duet-hero span.sc-duet-hero{margin-top:-8px}@media (min-width: 36em){/*!@.duet-hero-link span*/.duet-hero-link.sc-duet-hero span.sc-duet-hero{margin:0}}/*!@.duet-hero-action-icon*/.duet-hero-action-icon.sc-duet-hero{margin-right:8px}@media (min-width: 36em){/*!@.duet-hero-action-icon*/.duet-hero-action-icon.sc-duet-hero{margin-right:12px}}/*!@.duet-hero-action-arrow*/.duet-hero-action-arrow.sc-duet-hero{margin:0 0 0 8px;color:#0077b3}@media (max-width: 35.9375em){/*!@.duet-hero-action-arrow*/.duet-hero-action-arrow.sc-duet-hero{margin-top:-9px}}/*!@.duet-theme-turva .duet-hero-action-arrow*/.duet-theme-turva.sc-duet-hero .duet-hero-action-arrow.sc-duet-hero{color:#c60c30}/*!@.duet-hero-back*/.duet-hero-back.sc-duet-hero{margin-bottom:28px !important;display:flex;align-items:center;justify-content:center}/*!@.duet-hero-left-align .duet-hero-back*/.duet-hero-left-align.sc-duet-hero .duet-hero-back.sc-duet-hero{align-items:self-start;justify-content:flex-start}@media (min-width: 36em){/*!@.duet-hero-back*/.duet-hero-back.sc-duet-hero{margin-bottom:36px !important}/*!@.duet-hero-minimal .duet-hero-back*/.duet-hero-minimal.sc-duet-hero .duet-hero-back.sc-duet-hero{margin-bottom:28px !important}}@media (min-width: 62em){/*!@.duet-hero-back*/.duet-hero-back.sc-duet-hero{display:block}}/*!@.duet-hero-pre*/.duet-hero-pre.sc-duet-hero{display:inline-block;width:auto;margin-right:8px}/*!@.duet-hero-pre + duet-heading*/.duet-hero-pre.sc-duet-hero+duet-heading.sc-duet-hero{margin-top:0 !important}";
|
|
11568
11580
|
|
|
11569
11581
|
/**
|
|
11582
|
+
* @part duet-hero - piercing selector for styling the hero container
|
|
11570
11583
|
* @slot default - This is an unamed slot for a text or extra button that is placed after any buttons (or list item)
|
|
11571
11584
|
* @slot badge - This is a slot for a status badge that sits next to pre-heading inside the hero component.
|
|
11585
|
+
* @slot bottom - This is a slot for content under the main hero content.
|
|
11586
|
+
* @slot heading - This is a slot for heading content inside the hero component.
|
|
11572
11587
|
*/
|
|
11573
11588
|
class DuetHero {
|
|
11574
11589
|
constructor(hostRef) {
|
|
@@ -11587,6 +11602,7 @@ class DuetHero {
|
|
|
11587
11602
|
*/
|
|
11588
11603
|
this.theme = "";
|
|
11589
11604
|
/**
|
|
11605
|
+
* @deprecated please use heading slot instead.
|
|
11590
11606
|
* The heading of the hero area, rendered in an H1 tag. P.S. you can control
|
|
11591
11607
|
* the level of the HTML heading by using “level” prop. If empty, heading
|
|
11592
11608
|
* will be hidden.
|
|
@@ -11758,13 +11774,13 @@ class DuetHero {
|
|
|
11758
11774
|
"duet-hero-gray-with-back": !!this.processedBack,
|
|
11759
11775
|
"duet-hero-text-center": this.textCenter && !this.leftAlign,
|
|
11760
11776
|
"duet-hero-left-align": this.leftAlign,
|
|
11761
|
-
} }, hAsync("div", { class: "duet-hero-wrapper" }, this.image && this.variation === "image" && (hAsync("div", { class: "duet-hero-image-mask" }, hAsync("div", { class: "duet-hero-image-wrapper" }, hAsync("div", { class: "duet-hero-image", style: styles })))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
|
|
11777
|
+
}, part: "duet-hero" }, hAsync("div", { class: "duet-hero-wrapper" }, this.image && this.variation === "image" && (hAsync("div", { class: "duet-hero-image-mask" }, hAsync("div", { class: "duet-hero-image-wrapper" }, hAsync("div", { class: "duet-hero-image", style: styles })))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
|
|
11762
11778
|
this.processedBack && (hAsync("div", { class: "duet-hero-back" }, hAsync("duet-button", { style: buttonStyles, variation: "plain", icon: "action-arrow-left-small", theme: this.theme, iconSize: "small", color: buttonColor, padding: "none", margin: "none", fixed: true, url: this.processedBack.href, identifier: this.processedBack.id, onClick: event => this.handleClick(event, {
|
|
11763
11779
|
label: this.processedBack.label,
|
|
11764
11780
|
href: this.processedBack.href,
|
|
11765
11781
|
id: this.processedBack.id,
|
|
11766
11782
|
analyticsId: this.processedBack.analyticsId,
|
|
11767
|
-
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("duet-icon", { class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), hAsync("div", { class: "duet-hero-text" }, this.preHeading && (hAsync("duet-paragraph", { margin: "none", class: "duet-hero-pre" }, this.preHeading)), hAsync("slot", { name: "badge" }), hAsync("duet-heading", { theme: this.theme, level: this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: this.variation === "default" ? "gray-lightest" : "", visualLevel: this.variation === "gray" || this.variation === "minimal" ? "h2" : "h1" }, this.heading), this.description && (hAsync("duet-paragraph", { theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (hAsync("duet-list", { theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (hAsync("duet-list-item", null, hAsync("span", { slot: "label" }, item.label), hAsync("span", { slot: "value" }, item.value)))))), this.buttonLabel && (hAsync("duet-button", { url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), hAsync("span", { class: "duet-hero-slot-unnamed" }, hAsync("slot", null))), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (hAsync("div", { class: "duet-hero-links" }, this.processedActions.map(item => (hAsync("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, hAsync("div", { class: "duet-hero-action-icon" }, hAsync("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), hAsync("span", null, item.label), item.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (hAsync("div", { class: "duet-hero-action-arrow" }, hAsync("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image && this.variation !== "image" && hAsync("div", { class: "duet-hero-image", style: styles }))));
|
|
11783
|
+
}) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("duet-icon", { class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), hAsync("div", { class: "duet-hero-text" }, this.preHeading && (hAsync("duet-paragraph", { margin: "none", class: "duet-hero-pre" }, this.preHeading)), hAsync("slot", { name: "badge" }), hAsync("duet-heading", { theme: this.theme, level: this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: this.variation === "default" ? "gray-lightest" : "", visualLevel: this.variation === "gray" || this.variation === "minimal" ? "h2" : "h1" }, this.heading ? this.heading : hAsync("slot", { name: "heading" })), this.description && (hAsync("duet-paragraph", { theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (hAsync("duet-list", { theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (hAsync("duet-list-item", null, hAsync("span", { slot: "label" }, item.label), hAsync("span", { slot: "value" }, item.value)))))), this.buttonLabel && (hAsync("duet-button", { url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), hAsync("span", { class: "duet-hero-slot-unnamed" }, hAsync("slot", null))), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (hAsync("div", { class: "duet-hero-links" }, this.processedActions.map(item => (hAsync("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, hAsync("div", { class: "duet-hero-action-icon" }, hAsync("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), hAsync("span", null, item.label), item.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (hAsync("div", { class: "duet-hero-action-arrow" }, hAsync("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image && this.variation !== "image" && hAsync("div", { class: "duet-hero-image", style: styles }), hAsync("slot", { name: "bottom" }))));
|
|
11768
11784
|
}
|
|
11769
11785
|
get element() { return getElement(this); }
|
|
11770
11786
|
static get watchers() { return {
|
|
@@ -12016,6 +12032,11 @@ class DuetInput {
|
|
|
12016
12032
|
fi: "Tyhjennä",
|
|
12017
12033
|
sv: "Rensa",
|
|
12018
12034
|
});
|
|
12035
|
+
this.timeAnnouncement = getLocaleString({
|
|
12036
|
+
en: "Time",
|
|
12037
|
+
fi: "Aika",
|
|
12038
|
+
sv: "Tid",
|
|
12039
|
+
});
|
|
12019
12040
|
/**
|
|
12020
12041
|
* Indicates the id or a string of space seperated ids of a component(s) that describes the input.
|
|
12021
12042
|
*/
|
|
@@ -12267,16 +12288,27 @@ class DuetInput {
|
|
|
12267
12288
|
else if (!this.pattern && this.type === "tel") {
|
|
12268
12289
|
inputProps.pattern = "[0-9+ ]+";
|
|
12269
12290
|
}
|
|
12270
|
-
|
|
12291
|
+
let selectedTime;
|
|
12292
|
+
if (this.value) {
|
|
12293
|
+
selectedTime = new Date();
|
|
12294
|
+
try {
|
|
12295
|
+
selectedTime.setHours(Number(this.value.slice(0, 2)), Number(this.value.slice(3, 5)), 0, 0);
|
|
12296
|
+
}
|
|
12297
|
+
catch (e) {
|
|
12298
|
+
selectedTime = undefined;
|
|
12299
|
+
}
|
|
12300
|
+
}
|
|
12301
|
+
return (hAsync(Host, { class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (hAsync("duet-visually-hidden", { "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement} ${selectedTime.toLocaleTimeString()}` : "")), hAsync("div", { class: {
|
|
12271
12302
|
"duet-input-container": true,
|
|
12272
12303
|
"duet-theme-turva": this.theme === "turva",
|
|
12273
12304
|
[`duet-input-variation-${this.variation}`]: true,
|
|
12274
12305
|
"duet-label-hidden": this.labelHidden,
|
|
12275
12306
|
"duet-input-top-caption-shown": this.isCaptionVisible,
|
|
12276
|
-
"has-icon": !!this.icon ||
|
|
12307
|
+
"has-icon": !!this.icon ||
|
|
12308
|
+
(this.type !== "text" && this.type !== "tel" && this.type !== "password" && this.type !== "time"),
|
|
12277
12309
|
"has-error": !!this.error,
|
|
12278
12310
|
"has-clear": this.clear,
|
|
12279
|
-
} }, hAsync("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), this.caption && (hAsync("duet-caption", { id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { class: "duet-input-relative" }, this.placeholder && this.echoPlaceholder && this.value && (hAsync("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), hAsync("input", Object.assign({ ref: input => (this.nativeInput = input), onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, type: this.type, class: {
|
|
12311
|
+
} }, hAsync("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", id: this.labelId, for: identifier }, this.label), this.tooltip && (hAsync("duet-tooltip", { direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), this.caption && (hAsync("duet-caption", { id: this.topCaptionId, size: "medium" }, this.caption)), hAsync("div", { class: "duet-input-relative" }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (hAsync("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), hAsync("input", Object.assign({ ref: input => (this.nativeInput = input), onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, type: this.type, class: {
|
|
12280
12312
|
"duet-input": true,
|
|
12281
12313
|
disabled: this.disabled,
|
|
12282
12314
|
"is-number": this.component === "number",
|
|
@@ -12287,6 +12319,7 @@ class DuetInput {
|
|
|
12287
12319
|
this.type !== "text" &&
|
|
12288
12320
|
this.type !== "tel" &&
|
|
12289
12321
|
this.type !== "password" &&
|
|
12322
|
+
this.type !== "time" &&
|
|
12290
12323
|
this.variation !== "button" && (hAsync("div", { class: "duet-input-icon" }, hAsync("duet-icon", { margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (hAsync("div", { class: "duet-input-clear-icon" }, hAsync("button", { onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel, "aria-keyshortcuts": "Escape" }, hAsync("duet-icon", { margin: "none", size: "xx-small", name: "activity-close", color: "currentColor" })))), this.icon && this.variation !== "button" && (hAsync("div", { class: "duet-input-icon" }, hAsync("duet-icon", { margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && hAsync("slot", { name: "button" }), hAsync("slot", null)), hAsync("span", { class: "duet-input-help", id: this.errorId, "aria-live": "assertive", "aria-relevant": "additions removals" }, this.error && hAsync("span", { class: "duet-input-error" }, this.error)))));
|
|
12291
12324
|
}
|
|
12292
12325
|
get element() { return getElement(this); }
|
|
@@ -17232,7 +17265,12 @@ const validateFile = (item, validators, errorCodes) => {
|
|
|
17232
17265
|
if (item) {
|
|
17233
17266
|
const { name, type, size } = item;
|
|
17234
17267
|
const mime = validateFileMime(type, allowedMimetypes);
|
|
17235
|
-
const ext =
|
|
17268
|
+
const ext = allowedExtensions === "all" ||
|
|
17269
|
+
allowedExtensions === "" ||
|
|
17270
|
+
allowedExtensions === " " ||
|
|
17271
|
+
allowedExtensions === undefined
|
|
17272
|
+
? true
|
|
17273
|
+
: validateFileExtension(name.toLowerCase(), allowedExtensions);
|
|
17236
17274
|
const bytes = validateFileSize(size, maxBytes);
|
|
17237
17275
|
if (!mime) {
|
|
17238
17276
|
errorMessage = getError("duet-upload-101", errorCodes);
|
|
@@ -17635,14 +17673,6 @@ class DuetUpload {
|
|
|
17635
17673
|
* @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}]
|
|
17636
17674
|
*/
|
|
17637
17675
|
this.groups = [
|
|
17638
|
-
{
|
|
17639
|
-
id: this.DefaultGroups.inprogress,
|
|
17640
|
-
label: {
|
|
17641
|
-
fi: "Kesken olevat tiedostot",
|
|
17642
|
-
sv: "Filer inprogress",
|
|
17643
|
-
en: "Files inprogress",
|
|
17644
|
-
},
|
|
17645
|
-
},
|
|
17646
17676
|
{
|
|
17647
17677
|
id: this.DefaultGroups.pending,
|
|
17648
17678
|
label: {
|
|
@@ -17667,6 +17697,14 @@ class DuetUpload {
|
|
|
17667
17697
|
en: "Files with errors",
|
|
17668
17698
|
},
|
|
17669
17699
|
},
|
|
17700
|
+
{
|
|
17701
|
+
id: this.DefaultGroups.inprogress,
|
|
17702
|
+
label: {
|
|
17703
|
+
fi: "Kesken olevat tiedostot",
|
|
17704
|
+
sv: "Filer inprogress",
|
|
17705
|
+
en: "Files inprogress",
|
|
17706
|
+
},
|
|
17707
|
+
},
|
|
17670
17708
|
];
|
|
17671
17709
|
this.kick = debounce(() => {
|
|
17672
17710
|
this.tick = Date.now();
|
|
@@ -18047,17 +18085,17 @@ class DuetUpload {
|
|
|
18047
18085
|
}
|
|
18048
18086
|
});
|
|
18049
18087
|
return {
|
|
18050
|
-
inprogress,
|
|
18051
18088
|
pending,
|
|
18052
18089
|
failure,
|
|
18053
18090
|
success,
|
|
18091
|
+
inprogress,
|
|
18054
18092
|
};
|
|
18055
18093
|
};
|
|
18056
18094
|
this.getColumns = (group) => {
|
|
18057
18095
|
return [
|
|
18058
18096
|
{
|
|
18059
18097
|
sort_order: 1,
|
|
18060
|
-
direction: 1,
|
|
18098
|
+
direction: -1,
|
|
18061
18099
|
index: 0,
|
|
18062
18100
|
key: group.id,
|
|
18063
18101
|
label: group.label,
|