:root {
  --container-width-xl: 1200px;
  --color-bus: #0000bf;
  --color-bus-light: #f0f0ff;
  --color-bus-dark: #00005e;
  --color-coat-of-arms: #0072c6;
  --color-coat-of-arms-light: #e6f4ff;
  --color-coat-of-arms-dark: #005799;
  --color-silver: #dedfe1;
  --color-focus-outline: #0072c6;
  --color-black: #000;
  --color-white: #fff;
  --color-black-5: #f2f2f2;
  --color-black-10: #e6e6e6;
  --color-black-20: #ccc;
  --color-black-40: #999;
  --color-black-50: grey;
  --color-black-60: #666;
  --color-black-80: #333;
  --color-black-90: #1a1a1a;
  --color-error: #b01038;
  --color-error-light: #f6e2e6;
  --color-error-dark: #8d0d2d;
  --color-success: #007a64;
  --color-success-light: #e2f5f3;
  --color-success-dark: #006250;
  --color-info: #0062b9;
  --color-info-light: #e5eff8;
  --spacing-layout-2-xs: 1rem;
  --spacing-layout-xs: 1.5rem;
  --spacing-layout-s: 2rem;
  --spacing-layout-m: 3rem;
  --spacing-layout-l: 4rem;
  --spacing-3-xs: 0.25rem;
  --spacing-2-xs: 0.5rem;
  --spacing-xs: 0.75rem;
  --spacing-s: 1rem;
  --spacing-m: 1.5rem;
  --fontsize-heading-xxs: 1rem;
  --fontsize-body-s: 0.875rem;
  --fontsize-body-m: 1rem;
  --fontsize-body-l: 1.125rem;
  --font-default: helsinkigrotesk, arial, sans-serif;
  --lineheight-s: 1;
  --lineheight-m: 1.2;
  --lineheight-l: 1.5;
  --hg_reg: "Helsinki Grotesk Regular", sans-serif;
  --hg_med: "Helsinki Grotesk Medium", sans-serif;
  --hg_bol: "Helsinki Grotesk Bold", sans-serif;
}
.hds-icon--angle-down {
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 13.5l5-5 1.5 1.5-6.5 6.5L5.5 10 7 8.5l5 5z' fill='currentColor'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 13.5l5-5 1.5 1.5-6.5 6.5L5.5 10 7 8.5l5 5z' fill='currentColor'/%3E%3C/svg%3E");
}
.hds-icon--check-circle-fill {
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 3a9 9 0 100 18 9 9 0 000-18zm4.5 5L18 9.5 10.5 17 6 12.5 7.5 11l3 3 6-6z' fill='currentColor'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 3a9 9 0 100 18 9 9 0 000-18zm4.5 5L18 9.5 10.5 17 6 12.5 7.5 11l3 3 6-6z' fill='currentColor'/%3E%3C/svg%3E");
}
.hds-icon--info-circle-fill {
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 3a9 9 0 100 18 9 9 0 000-18zm1 7v6.5h2V18H9v-1.5h2v-5H9V10h4zm-1.188-4a1.312 1.312 0 110 2.625 1.312 1.312 0 010-2.625z' fill='currentColor'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 3a9 9 0 100 18 9 9 0 000-18zm1 7v6.5h2V18H9v-1.5h2v-5H9V10h4zm-1.188-4a1.312 1.312 0 110 2.625 1.312 1.312 0 010-2.625z' fill='currentColor'/%3E%3C/svg%3E");
}
.hds-button {
  --border-width: 2px;
  --color: inherit;
  --min-size: 44px;
  --outline-gutter: 2px;
  --outline-width: 3px;
  align-content: flex-start;
  align-items: center;
  background-color: var(--background-color, transparent);
  border: var(--border-width) solid var(--border-color, transparent);
  border-radius: 0;
  color: var(--color);
  cursor: pointer;
  display: inline-flex;
  font-family: inherit;
  font-size: 100%;
  font-family: var(--hg_med);
  justify-content: center;
  line-height: 1.15;
  margin: 0;
  min-height: var(--min-size);
  min-width: var(--min-size);
  padding: 0 var(--spacing-2-xs);
  position: relative;
  text-decoration: none;
  text-transform: none;
  vertical-align: top;
}
.hds-button,
.hds-button *,
.hds-button:after,
.hds-button :after,
.hds-button:before,
.hds-button :before {
  box-sizing: border-box;
}
.hds-button[type="button"],
.hds-button[type="reset"],
.hds-button[type="submit"],
button.hds-button {
  -webkit-appearance: button;
}
.hds-button:-moz-focus-inner,
.hds-button[type="button"]:-moz-focus-inner,
.hds-button[type="reset"]:-moz-focus-inner,
.hds-button[type="submit"]:-moz-focus-inner {
  border-style: none;
  padding: 0;
}
.hds-button:-moz-focusring,
.hds-button[type="button"]:-moz-focusring,
.hds-button[type="reset"]:-moz-focusring,
.hds-button[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
.hds-button.focus-visible,
.hds-button:focus-visible,
.hds-button:hover {
  transition-duration: 85ms;
  transition-property: background-color, border-color, color;
  transition-timing-function: ease-out;
}
.hds-button:hover {
  background-color: var(--background-color-hover, transparent);
  color: var(--color-hover);
}
.hds-button.focus-visible,
.hds-button:active,
.hds-button:focus-visible {
  background-color: var(--background-color-focus, transparent);
  color: var(--color-focus);
  outline: none;
}
.hds-button:not(:disabled) {
  border-color: var(--border-color, transparent);
}
.hds-button:disabled {
  background-color: var(--background-color-disabled, transparent);
  border-color: var(--border-color-disabled, transparent);
  color: var(--color-disabled);
  cursor: not-allowed;
}
.hds-button.focus-visible:hover,
.hds-button:active:hover,
.hds-button:focus-visible:hover {
  background-color: var(--background-color-hover-focus, transparent);
}
.hds-button:not(:disabled):hover {
  border-color: var(--border-color-hover, transparent);
}
.hds-button:not(:disabled).focus-visible,
.hds-button:not(:disabled):active,
.hds-button:not(:disabled):focus-visible {
  border-color: var(--border-color-focus, transparent);
}
.hds-button:not(:disabled).focus-visible:hover,
.hds-button:not(:disabled):active:hover,
.hds-button:not(:disabled):focus-visible:hover {
  border-color: var(--border-color-hover-focus, transparent);
  color: var(--color-hover-focus);
}
.hds-button:after {
  --size: 100%;
  border: var(--outline-width) solid transparent;
  content: "";
  height: var(--size);
  position: absolute;
  width: var(--size);
}
.hds-button.focus-visible:after,
.hds-button:active:after,
.hds-button:focus-visible:after {
  --size: calc(
    100% +
      calc(
        var(--outline-width) * 2 + var(--border-width) * 2 +
          var(--outline-gutter) * 2
      )
  );
  border-color: var(--focus-outline-color);
}
.hds-button__label,
input[type="button"].hds-button,
input[type="reset"].hds-button,
input[type="submit"].hds-button {
  font-weight: inherit;
  line-height: 1.25em;
  padding: var(--spacing-s);
}
input[type="button"].hds-button,
input[type="reset"].hds-button,
input[type="submit"].hds-button {
  cursor: pointer;
  padding: var(--spacing-s) var(--spacing-l);
}
input[type="button"].hds-button.focus-visible,
input[type="button"].hds-button:focus-visible,
input[type="reset"].hds-button.focus-visible,
input[type="reset"].hds-button:focus-visible,
input[type="submit"].hds-button.focus-visible,
input[type="submit"].hds-button:focus-visible {
  box-shadow: 0 0 0 var(--outline-gutter) var(--submit-input-focus-gutter-color),
    0 0 0 calc(var(--outline-gutter) + var(--outline-width))
      var(--focus-outline-color);
}
.hds-button__label:only-child {
  margin: 0 var(--spacing-2-xs);
}
.hds-button--small .hds-button__label {
  line-height: var(--lineheight-s);
  padding: var(--spacing-2-xs) var(--spacing-xs);
}
.hds-button--supplementary .hds-button__label:first-child {
  padding-right: var(--spacing-2-xs);
}
.hds-button--small .hds-button__label:only-child {
  margin: 0 var(--spacing-xs);
}
.hds-button--supplementary .hds-icon + .hds-button__label:last-child {
  padding-left: var(--spacing-2-xs);
}
.hds-button--supplementary .hds-icon + .hds-button__label:not(:last-child) {
  padding-left: var(--spacing-2-xs);
  padding-right: var(--spacing-2-xs);
}
.hds-button--small {
  padding: 0;
}
input[type="button"].hds-button--small,
input[type="reset"].hds-button--small,
input[type="submit"].hds-button--small {
  line-height: var(--lineheight-s);
  padding: var(--spacing-2-xs) var(--spacing-m);
}
.hds-button--small .hds-button__label:not(:first-of-type):not(:last-of-type) {
  padding: var(--spacing-2-xs) var(--spacing-2-xs);
}
.hds-button .hds-icon {
  height: var(--spacing-m);
  margin-left: var(--spacing-s);
  width: var(--spacing-m);
}
.hds-button__label ~ .hds-icon {
  margin: 0 var(--spacing-s) 0 0;
}
.hds-button--small .hds-icon {
  margin-left: var(--spacing-2-xs);
}
.hds-button .hds-button--small .hds-button__label ~ .hds-icon {
  margin: 0 var(--spacing-2-xs) 0 0;
}
.hds-button .hds-icon:first-of-type:not(:last-of-type) {
  margin: 0 0 0 var(--spacing-2-xs);
}
.hds-button .hds-icon:last-of-type:not(:first-of-type) {
  margin: 0 var(--spacing-2-xs) 0 0;
}
.hds-button--small .hds-icon:first-child:not(:last-of-type) {
  margin: 0 0 0 var(--spacing-2-xs);
}
.hds-button--small .hds-icon:last-child:not(:first-of-type) {
  margin: 0 var(--spacing-2-xs) 0 0;
}
.hds-button--secondary,
.hds-theme--bus .hds-button--secondary {
  --border-color: var(--color-bus);
  --border-color-hover: var(--color-bus-dark);
  --border-color-focus: var(--color-bus);
  --border-color-hover-focus: var(--color-bus-dark);
  --border-color-disabled: var(--color-black-50);
  --focus-outline-color: var(--color-focus-outline);
  --submit-input-focus-gutter-color: var(--color-white);
}
.hds-button--secondary,
.hds-button--supplementary,
.hds-theme--bus .hds-button--secondary,
.hds-theme--bus .hds-button--supplementary {
  --background-color: transparent;
  --background-color-hover: var(--color-bus-light);
  --background-color-focus: transparent;
  --background-color-hover-focus: var(--color-bus-light);
  --background-color-disabled: transparent;
  --color: var(--color-bus);
  --color-hover: var(--color-bus-dark);
  --color-focus: var(--color-bus);
  --color-hover-focus: var(--color-bus-dark);
  --color-disabled: var(--color-black-40);
}
.hds-button--supplementary,
.hds-theme--bus .hds-button--supplementary {
  --border-color: transparent;
  --border-color-hover: transparent;
  --border-color-focus: var(--color-focus-outline);
  --border-color-hover-focus: var(--color-focus-outline);
  --border-color-disabled: transparent;
  --focus-outline-color: transparent;
  --submit-input-focus-gutter-color: transparent;
}
.hds-button--secondary.hds-button--theme-coat,
.hds-theme--coat.hds-button--secondary,
.hds-theme--coat .hds-button--secondary {
  --border-color: var(--color-coat-of-arms);
  --border-color-hover: var(--color-coat-of-arms-dark);
  --border-color-focus: var(--color-coat-of-arms);
  --border-color-hover-focus: var(--color-coat-of-arms-dark);
}
.hds-button--secondary.hds-button--theme-coat,
.hds-button--supplementary.hds-button--theme-coat,
.hds-theme--coat.hds-button--secondary,
.hds-theme--coat .hds-button--secondary,
.hds-theme--coat.hds-button--supplementary,
.hds-theme--coat .hds-button--supplementary {
  --background-color: transparent;
  --background-color-hover: var(--color-coat-of-arms-light);
  --background-color-focus: transparent;
  --background-color-hover-focus: var(--color-coat-of-arms-light);
  --color: var(--color-coat-of-arms);
  --color-hover: var(--color-coat-of-arms);
  --color-focus: var(--color-coat-of-arms);
  --color-hover-focus: var(--color-coat-of-arms);
}
.hds-button--supplementary.hds-button--theme-coat,
.hds-theme--coat.hds-button--supplementary,
.hds-theme--coat .hds-button--supplementary {
  --border-color: transparent;
  --border-color-hover: transparent;
  --border-color-focus: var(--color-focus-outline);
  --border-color-hover-focus: var(--color-focus-outline);
}
.hds-button--secondary.hds-button--theme-black,
.hds-theme--black.hds-button--secondary,
.hds-theme--black .hds-button--secondary {
  --border-color: var(--color-black);
  --border-color-hover: var(--color-black);
  --border-color-focus: var(--color-black);
  --border-color-hover-focus: var(--color-black);
}
.hds-button--secondary.hds-button--theme-black,
.hds-button--supplementary.hds-button--theme-black,
.hds-theme--black.hds-button--secondary,
.hds-theme--black .hds-button--secondary,
.hds-theme--black.hds-button--supplementary,
.hds-theme--black .hds-button--supplementary {
  --background-color: transparent;
  --background-color-hover: var(--color-black-5);
  --background-color-focus: transparent;
  --background-color-hover-focus: var(--color-black-5);
  --color: var(--color-black);
  --color-hover: var(--color-black);
  --color-focus: var(--color-black);
  --color-hover-focus: var(--color-black);
}
.hds-button--supplementary.hds-button--theme-black,
.hds-theme--black.hds-button--supplementary,
.hds-theme--black .hds-button--supplementary {
  --border-color: transparent;
  --border-color-hover: transparent;
  --border-color-focus: var(--color-focus-outline);
  --border-color-hover-focus: var(--color-focus-outline);
}
.hds-checkbox {
  --size: 24px;
  --icon-scale: 1;
  --border-width: 2px;
  --outline-width: 3px;
  --label-font-size: var(--fontsize-body-m);
  --label-padding: var(--spacing-2-xs);
  --icon-size: var(--spacing-m);
  display: flex;
  flex-wrap: wrap;
  min-height: var(--size);
  position: relative;
}
.hds-checkbox,
.hds-checkbox *,
.hds-checkbox :after,
.hds-checkbox :before {
  box-sizing: border-box;
}
.hds-checkbox,
.hds-theme--bus .hds-checkbox {
  --background-unselected: transparent;
  --background-selected: var(--color-bus);
  --background-hover: var(--color-bus-dark);
  --background-disabled: var(--color-black-10);
  --border-color-selected: var(--color-bus);
  --border-color-selected-hover: var(--color-bus-dark);
  --border-color-selected-focus: var(--color-bus);
  --border-color-unselected: var(--color-black-50);
  --border-color-unselected-hover: var(--color-black-90);
  --border-color-unselected-focus: var(--color-black-90);
  --border-color-disabled: var(--color-black-10);
  --icon-color-unselected: transparent;
  --icon-color-selected: var(--color-white);
  --icon-color-disabled: var(--color-white);
  --label-color: var(--color-black-90);
  --label-color-disabled: var(--color-black-40);
}
.hds-theme--coat .hds-checkbox {
  --background-selected: var(--color-coat-of-arms);
  --background-hover: var(--color-coat-of-arms-dark);
  --border-color-selected: var(--color-coat-of-arms);
  --border-color-selected-hover: var(--color-coat-of-arms-dark);
  --border-color-selected-focus: var(--color-coat-of-arms);
}
.hds-theme--black .hds-checkbox {
  --background-selected: var(--color-black);
  --background-hover: var(--color-black-80);
  --border-color-selected: var(--color-black);
  --border-color-selected-hover: var(--color-black-80);
  --border-color-selected-focus: var(--color-black);
}
.hds-checkbox:not(:first-of-type) {
  margin-top: var(--spacing-2-xs);
}
.hds-checkbox .hds-checkbox__input:before,
.hds-checkbox .hds-checkbox__label:after,
.hds-checkbox .hds-checkbox__label:before {
  content: "";
  left: 0;
  position: absolute;
  top: 0;
}
.hds-checkbox .hds-checkbox__input:before {
  background-color: var(--icon-color-unselected);
  height: var(--size);
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 0h24v24H0z'/%3E%3Cpath fill='currentColor' d='M21 7L10 18l-5.5-5.5L6 11l4 4 9.5-9.5z'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 0h24v24H0z'/%3E%3Cpath fill='currentColor' d='M21 7L10 18l-5.5-5.5L6 11l4 4 9.5-9.5z'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: calc(var(--size) * var(--icon-scale));
  mask-size: calc(var(--size) * var(--icon-scale));
  transform: scale(0.6);
  width: var(--size);
  z-index: 1;
}
.hds-checkbox .hds-checkbox__label:before {
  height: var(--size);
  width: var(--size);
}
.hds-checkbox .hds-checkbox__label:after {
  background-color: var(--background-unselected);
  border: var(--border-width) solid var(--border-color-unselected);
  height: var(--size);
  width: var(--size);
}
.hds-checkbox .hds-checkbox__input:focus + .hds-checkbox__label:after,
.hds-checkbox .hds-checkbox__input:focus:before,
.hds-checkbox .hds-checkbox__input:hover + .hds-checkbox__label:after,
.hds-checkbox .hds-checkbox__input:hover:before {
  transition: 85ms ease-out;
  transition-property: background-color, border-color, transform;
}
.hds-checkbox .hds-checkbox__input:focus + .hds-checkbox__label:before {
  outline: var(--outline-width) solid
    var(--focus-outline-color, var(--color-focus-outline));
  outline-offset: var(--focus-outline-offset, 0);
  transform: translateZ(0);
  transition: 85ms ease-out;
  transition-property: outline, outline-offset, transform;
}
.hds-checkbox .hds-checkbox__input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 100%;
  height: var(--size);
  left: 0;
  line-height: 1.15;
  margin: 0;
  outline: none;
  position: absolute;
  top: 0;
  width: var(--size);
}
.hds-checkbox .hds-checkbox__label {
  color: var(--label-color);
  cursor: pointer;
  font-size: var(--label-font-size);
  line-height: var(--lineheight-m);
  padding-left: calc(var(--size) + var(--label-padding));
  padding-top: calc(
    (var(--size) - var(--label-font-size) * var(--lineheight-m)) / 2
  );
  position: relative;
}
.hds-checkbox .hds-checkbox__label--hidden {
  padding-left: var(--size);
}
.hds-checkbox__error-text {
  background-color: var(--color-error-light);
  border-left: 8px solid var(--color-error);
  color: var(--color-black);
  display: flex;
  flex-basis: 100%;
  font-size: var(--fontsize-body-m);
  margin-top: var(--spacing-2-xs);
  padding: var(--spacing-2-xs);
  position: relative;
}
.hds-checkbox__error-text:before {
  background: var(--color-error);
  content: "";
  display: inline-block;
  height: var(--icon-size);
  margin-right: var(--spacing-2-xs);
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.175 3.456c.349-.586 1.223-.607 1.61-.063l.04.063 9.052 15.21c.343.577-.072 1.285-.753 1.332l-.072.002H2.948c-.7 0-1.15-.689-.858-1.273l.033-.06 9.052-15.21zM13 16v2h-2v-2h2zm0-7.5v6h-2v-6h2z' fill='currentColor'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.175 3.456c.349-.586 1.223-.607 1.61-.063l.04.063 9.052 15.21c.343.577-.072 1.285-.753 1.332l-.072.002H2.948c-.7 0-1.15-.689-.858-1.273l.033-.06 9.052-15.21zM13 16v2h-2v-2h2zm0-7.5v6h-2v-6h2z' fill='currentColor'/%3E%3C/svg%3E");
  pointer-events: none;
  width: var(--icon-size);
}
.hds-checkbox .hds-checkbox__input:checked:before {
  background-color: var(--icon-color-selected);
  transform: scale(1);
}
.hds-checkbox .hds-checkbox__input:checked + .hds-checkbox__label:after,
.hds-checkbox .hds-checkbox__input:indeterminate + .hds-checkbox__label:after {
  background-color: var(--background-selected);
  border-color: var(--border-color-selected);
}
.hds-checkbox .hds-checkbox__input:disabled + .hds-checkbox__label:after {
  background-color: var(--background-disabled);
  border-color: var(--border-color-disabled);
}
.hds-checkbox
  .hds-checkbox__input:not(:disabled):focus
  + .hds-checkbox__label:after {
  border-color: var(--border-color-unselected-focus);
}
.hds-checkbox
  .hds-checkbox__input:not(:disabled):hover
  + .hds-checkbox__label:after,
.hds-checkbox
  .hds-checkbox__input:not(:disabled):hover:focus
  + .hds-checkbox__label:after {
  border-color: var(--border-color-unselected-hover);
}
.hds-checkbox
  .hds-checkbox__input:not(:disabled):checked:focus
  + .hds-checkbox__label:after,
.hds-checkbox
  .hds-checkbox__input:not(:disabled):indeterminate:focus
  + .hds-checkbox__label:after {
  border-color: var(--border-color-selected-focus);
}
.hds-checkbox
  .hds-checkbox__input:not(:disabled):checked:hover
  + .hds-checkbox__label:after,
.hds-checkbox
  .hds-checkbox__input:not(:disabled):checked:hover:focus
  + .hds-checkbox__label:after,
.hds-checkbox
  .hds-checkbox__input:not(:disabled):indeterminate:hover
  + .hds-checkbox__label:after,
.hds-checkbox
  .hds-checkbox__input:not(:disabled):indeterminate:hover:focus
  + .hds-checkbox__label:after {
  background-color: var(--background-hover);
  border-color: var(--border-color-selected-hover);
}
.hds-checkbox .hds-checkbox__input:disabled + .hds-checkbox__label {
  color: var(--label-color-disabled);
}
.hds-checkbox .hds-checkbox__input:checked:disabled:before {
  background-color: var(--icon-color-disabled);
}
.hds-checkbox .hds-checkbox__input:disabled,
.hds-checkbox .hds-checkbox__input:disabled + .hds-checkbox__label {
  cursor: not-allowed;
}
:host .hds-cc__form .hds-checkbox {
  --label-color-disabled: var(--color-black-60);
}
.hds-icon {
  --icon-size: 100%;
  background-color: currentcolor;
  display: inline-block;
  height: var(--icon-size);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: auto;
  mask-size: auto;
  width: var(--icon-size);
}
.hds-notification {
  --notification-background-color: var(--color-info-light);
  --notification-border-color: var(--color-info);
  --notification-border-width: var(--spacing-2-xs);
  --notification-icon-color: var(--color-info);
  --notification-color: var(--color-black-90);
  --notification-max-width-inline: none;
  --notification-max-width-toast: 21rem;
  --notification-z-index-inline: auto;
  --notification-z-index-toast: 99;
  --notification-offset: var(--spacing-layout-s);
  --notification-padding: var(--spacing-s);
  background-color: var(--notification-background-color);
  border: solid var(--notification-border-color);
  border-left-width: var(--notification-border-width);
  border-bottom-width: 0;
  border-right-width: 0;
  border-top-width: 0;
  box-sizing: border-box;
  color: var(--notification-color);
  max-width: var(--notification-max-width-inline);
  padding: var(--notification-padding);
  position: relative;
  width: 100%;
  z-index: var(--notification-z-index-inline);
}
.hds-notification__content {
  display: grid;
  grid-gap: var(--spacing-s);
  gap: var(--spacing-s);
}
.hds-notification__label {
  align-items: flex-start;
  display: flex;
  font-size: var(--fontsize-heading-xs);
  font-family: var(--hg_bol);
  letter-spacing: 0.4px;
  line-height: 24px;
  margin-right: var(--spacing-l);
}
.hds-notification__label > .hds-icon {
  color: var(--notification-icon-color);
  flex: none;
  margin-right: var(--spacing-2-xs);
}
.hds-notification__body {
  font-size: var(--fontsize-body-s);
  line-height: 24px;
}
.hds-notification--small {
  --notification-padding: var(--spacing-2-xs);
}
.hds-notification--small .hds-notification__content {
  display: flex;
  grid-gap: 0;
  gap: 0;
}
.hds-notification--small .hds-notification__label {
  margin-right: 0;
}
.hds-notification--small .hds-notification__body {
  margin-right: var(--spacing-l);
}
.hds-notification .hds-icon {
  --icon-size: var(--spacing-layout-xs);
}
.hds-notification__close-button {
  --notification-close-button-offset: var(--spacing-s);
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  outline: none;
  padding: 0;
  position: absolute;
  right: var(--notification-close-button-offset);
  top: var(--notification-close-button-offset);
}
.hds-notification--large .hds-notification__close-button,
.hds-notification--small .hds-notification__close-button {
  --notification-close-button-offset: var(--spacing-2-xs);
}
.hds-notification__close-button:focus {
  box-shadow: 0 0 0 3px var(--color-focus-outline);
}
@media only screen and (max-width: 765.98px) {
  .hds-notification {
    --notification-offset: var(--spacing-s);
  }
}
.hds-notification--success {
  --notification-background-color: var(--color-success-light);
  --notification-border-color: var(--color-success);
  --notification-icon-color: var(--color-success);
}
.hds-table-container {
  overflow-x: auto;
}
.hds-table-container:focus {
  outline: var(--color-focus-outline) 3px solid;
}
.hds-table {
  --content-background-color: var(--color-white);
  border-collapse: collapse;
  line-height: 1.5;
  width: 100%;
}
.hds-table th {
  border-bottom: 1px solid var(--color-black-20);
  font-family: var(--hg_med);
  line-height: var(--lineheight-l);
  text-align: left;
  white-space: nowrap;
}
.hds-table__content tr td,
.hds-table th {
  font-size: var(--fontsize-body-m);
  padding: var(--spacing-xs) var(--spacing-m);
}
.hds-table__content tr td {
  background-color: var(--content-background-color);
  border-bottom: 1px solid var(--color-black-50);
  color: var(--color-black-90);
  font-weight: 400;
  line-height: 24px;
}
.hds-table__header-row {
  background-color: var(--header-background-color);
}
.hds-table--light {
  --header-background-color: var(--color-silver);
  margin: 0;
}
.hds-table.hds-table--light th {
  color: var(--color-black-90);
}
@media (max-width: 767px) {
  .hds-table th {
    font-family: var(--hg_bol);
  }
  .hds-table__content tr td,
  .hds-table th {
    font-size: var(--fontsize-body-s);
    padding: 9px var(--spacing-s);
  }
}
.hds-theme--coat,
.hds-theme--coat-of-arms {
  --hds-cc-border-color: var(--color-coat-of-arms);
}
.hds-cc--page {
  margin-top: var(--spacing-layout-xs);
  margin-bottom: var(--spacing-layout-xs);
}
*,
:after,
:before {
  box-sizing: inherit;
}
html {
  -webkit-text-size-adjust: 100%;
}
.hds-cc {
  --autoheight-open-time: 0.15s;
  --common-spacing: var(--spacing-s);
  --focus-outline-color: var(
    --focus-outline-color-override,
    var(--color-focus-outline, var(--color-coat-of-arms))
  );
  --outline-width: 3px;
  color: var(--color-black-90);
  font-family: var(--font-default);
  font-size: var(--fontsize-body-m);
}
.hds-cc.hds-cc--banner {
  bottom: 0;
  left: 0;
  overscroll-behavior: contain;
  position: fixed;
  width: 100vw;
  z-index: 999;
}
.hds-cc.hds-cc--page {
  padding-top: var(--spacing-layout-xs);
}
.hds-cc__container {
  background: var(--color-white);
}
.hds-cc--banner .hds-cc__container {
  border-top: 8px solid var(--hds-cc-border-color, var(--color-black));
  bottom: 0;
  max-height: 80vh;
  overflow-y: auto;
  position: absolute;
  width: 100%;
  z-index: 2;
}
.hds-cc__aligner {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--container-width-override, var(--container-width-xl));
}
.hds-cc--banner .hds-cc__aligner {
  padding: var(--spacing-layout-2-xs);
}
@media (min-width: 768px) {
  .hds-cc--banner .hds-cc__aligner {
    padding: var(--spacing-layout-s) var(--spacing-layout-xs);
  }
}
.visually-hidden {
  border: 0;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.hds-cc__heading {
  font-size: 2rem;
  font-family: var(--hg_reg);
  line-height: 1;
  margin: 0;
}
.hds-cc__heading:focus {
  outline: var(--outline-width, 3px) solid var(--focus-outline-color, #000);
  outline-offset: var(--outline-gutter, 2px);
}
.hds-cc__subheading {
  font-size: 1.5rem;
  font-family: var(--hg_med);
  line-height: 1;
  margin: 0;
}
.hds-cc__description,
.hds-cc__form p {
  max-width: 860px;
}
.hds-cc__description,
.hds-cc p,
.hds-cc__form p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  margin-block: var(--spacing-layout-2-xs);
}
.hds-cc__form-title {
  font-family: var(--hg_med);
  font-size: var(--fs-0);
}
.hds-cc__accordion-button .hds-icon {
  transition: transform 0.15s linear;
}
.hds-cc__accordion-button[aria-expanded="true"] .hds-icon {
  transform: rotate(180deg);
}
.hds-cc__accordion-button .hds-button__label {
  padding-left: var(--spacing-2-xs);
  padding-right: var(--spacing-2-xs);
}
.hds-cc__accordion-button:not(.hds-cc__accordion-button--read-more) {
  margin-bottom: 16px;
  padding-right: 6px;
}
.hds-cc__accordion-button--read-more {
  display: none;
  font-size: 1rem;
  grid-area: readmore;
  line-height: 2;
}
.hds-cc--banner .hds-cc__form {
  --internal-autoheight-open-time: var(--autoheight-open-time, 0.3s);
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows var(--internal-autoheight-open-time) linear;
}
@media (prefers-reduced-motion) {
  .hds-cc--banner .hds-cc__form {
    --internal-autoheight-open-time: 0s;
  }
}
.hds-cc__form__animator {
  margin-left: -5px;
  margin-right: -5px;
  overflow: hidden;
  padding-left: 5px;
  padding-right: 5px;
  transform: translateY(0);
}
.hds-cc--banner :not([aria-expanded="true"]) + .hds-cc__form {
  grid-template-rows: 0fr;
}
.hds-cc--banner
  :not([aria-expanded="true"])
  + .hds-cc__form
  .hds-cc__form__animator {
  transition: visibility 0s linear var(--internal-autoheight-open-time);
  visibility: hidden;
}
.hds-cc--page .hds-cc__accordion-button--details {
  display: none;
}
.hds-cc__groups {
  padding-bottom: var(--spacing-layout-s);
}
.hds-cc__notification_container .hds-notification {
  margin-bottom: var(--spacing-layout-s);
}
@keyframes entryAnimation {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes exitAnimation {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(20px);
  }
}
.hds-notification.enter {
  animation: entryAnimation 0.5s ease-out forwards;
}
.hds-notification.exit {
  animation: exitAnimation 0.5s ease-out forwards;
}
@media (prefers-reduced-motion: reduce) {
  .hds-notification.enter,
  .hds-notification.exit {
    animation-duration: 0s !important;
  }
}
.hds-cc__group {
  border-bottom: 1px solid var(--color-black-60);
  padding-bottom: var(--spacing-layout-2-xs);
  padding-top: var(--spacing-layout-s);
}
.hds-cc__group:first-of-type {
  border-top: 1px solid var(--color-black-60);
}
.hds-cc__group .hds-notification {
  display: none;
}
.hds-cc__group--highlight .hds-notification {
  display: block;
  margin-top: var(--spacing-layout-2-xs);
}
.hds-cc__group-details {
  --internal-autoheight-open-time: var(--autoheight-open-time, 0.3s);
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows var(--internal-autoheight-open-time) linear;
}
@media (prefers-reduced-motion) {
  .hds-cc__group-details {
    --internal-autoheight-open-time: 0s;
  }
}
.hds-cc__group-details__animator {
  margin-left: -5px;
  margin-right: -5px;
  overflow: hidden;
  padding-left: 5px;
  padding-right: 5px;
  transform: translateY(0);
}
:not([aria-expanded="true"]) + .hds-cc__group-details {
  grid-template-rows: 0fr;
}
:not([aria-expanded="true"])
  + .hds-cc__group-details
  .hds-cc__group-details__animator {
  transition: visibility 0s linear var(--internal-autoheight-open-time);
  visibility: hidden;
}
.hds-cc__group-details__animator .hds-table-container {
  margin-top: 5px;
  margin-bottom: 5px;
}
.hds-cc--banner
  [aria-controls="hds-cc-form"]:not([aria-expanded="true"])
  ~ .hds-cc__buttons
  .hds-cc__selected-cookies-button,
.hds-cc--page .hds-cc__all-cookies-button,
:not([aria-expanded="true"]) > .hds-cc__accordion-button-hide,
[aria-controls="hds-cc-form"][aria-expanded="true"]
  ~ .hds-cc__buttons
  .hds-cc__all-cookies-button,
[aria-expanded="true"] > .hds-cc__accordion-button-show {
  display: none;
}
.hds-cc__form {
  --autoheight-open-time: 0.2s;
}
.hds-cc__buttons {
  grid-column-gap: 32px;
  -moz-column-gap: 32px;
  column-gap: 32px;
  display: flex;
  flex-direction: column;
  grid-row-gap: 16px;
  row-gap: 16px;
}
@media (min-width: 768px) {
  .hds-cc__buttons {
    flex-direction: row;
  }
}
.hds-cc--page .hds-cc__all-cookies-button {
  display: none;
}