/* ==================================================
* Accessibility
* ================================================== */
/**! ==================================================
 * Mixin form fields
 * ================================================== */
/* ==================================================
 * Nav-block
 * ==================================================*/
/* ==================================================
 * Nav-Inline
 * ==================================================*/
/* ==================================================
* Nav-Pulldown
* ==================================================*/
/* ==================================================
* Nav-Toggle
* ==================================================*/
/**! ==================================================
 * Mixin page padding
 * ================================================== */
/* ==================================================
    Section
* ================================================== */
/* ==================================================
* Toggle
* ==================================================*/
/* ==================================================
* Toggle-list
* ==================================================*/
/* ==================================================
* Mixins and functions
* ================================================== */
/* ==================================================
* Accessibility
* ================================================== */
/* ==================================================
* Basic variables
* ================================================== */
:root {
  --cta-border-radius: 4.5rem;
}

/* ==================================================
* Palette
* ================================================== */
/* ==================================================
* Global theme / foundation tokens
* ================================================== */
:root {
  /* Brand */
  --color-brand-primary: #005538;
  --color-brand-secondary: #008939;
  /* Text */
  --color-text-default: #002216;
  --color-text-subtle: #4B5D63;
  --color-text-strong: #000000;
  --color-text-inverted: #ffffff;
  /* Heading */
  --color-heading-default: #005538;
  --color-heading-inverted: #ffffff;
  --color-heading-subtle: #374951;
  /* Surface */
  --color-surface-default: #ffffff;
  --color-surface-inverted: #005538;
  --color-surface-subtle: #F5F1E9;
  --color-surface-accent: #FFF17A;
  --color-surface-strong: #E6007E;
  --color-surface-dark: #2E2E3D;
  /* Border */
  --color-border-default: #005538;
  --color-border-inverted: #ffffff;
  --color-border-subtle: #CCE7D7;
  --color-border-strong: #008939;
  --color-border-dark: #2E2E3D;
  --color-border-disabled: #D1DBDA;
  /* Icon */
  --color-icon-default: #005538;
  --color-icon-inverted: #ffffff;
  --color-icon-strong: #008939;
  /* Feedback */
  --color-feedback-error: #ad0000;
  /* Accessibility */
  --color-outline-accessibility: #0BA1DD;
}

/* ==================================================
* Font variables
* ================================================== */
:root {
  --font-family: "PT Sans", "Verdana", "Arial", sans-serif;
  --font-weight: 400;
  --font-family-headline: "GrueneType Neue", "Verdana", "Arial", sans-serif;
  --font-weight-headline: 400;
}

/* ==================================================
* Basic maps
* ================================================== */
/******************************************
	Button
******************************************/
.cta, body .klaro .cookie-notice .cn-learn-more,
body .klaro .cookie-notice .cm-btn,
body .klaro .cookie-modal .cm-btn,
body .klaro .context-notice .cm-btn {
  --cta-color-text: var(--color-text-inverted);
  --cta-color-background: var(--color-brand-primary);
  --cta-color-border: transparent;
  --cta-color-text-hover: var(--color-text-default);
  --cta-color-background-hover: var(--color-surface-accent);
  --cta-color-border-hover: transparent;
  --cta-color-text-inverted: var(--color-text-default);
  --cta-color-background-inverted: var(--color-surface-accent);
  --cta-color-border-inverted: transparent;
  --cta-color-text-hover-inverted: var(--color-text-inverted);
  --cta-color-background-hover-inverted: var(--color-brand-primary);
  --cta-color-border-hover-inverted: transparent;
  --cta-color-text-white: var(--color-text-default);
  --cta-color-background-white: var(--color-surface-default);
  --cta-color-border-white: transparent;
  --cta-color-text-hover-white: var(--color-text-default);
  --cta-color-background-hover-white: var(--color-surface-accent);
  --cta-color-border-hover-white: transparent;
  --cta-color-text-disabled: var(--color-text-inverted);
  --cta-color-background-disabled: var(--color-border-disabled);
  --cta-color-border-disabled: var(--color-border-disabled);
  --cta-color-border-icon: transparent;
  --cta-color-border-icon-hover: var(--color-border-inverted);
  color: var(--cta-color-text);
  background-color: var(--cta-color-background);
  -webkit-transition: background-color 0.5s, color 0.5s, border-color 0.5s;
  transition: background-color 0.5s, color 0.5s, border-color 0.5s;
  border: 0;
  display: inline-block;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
}
.cta span, body .klaro .cookie-notice .cn-learn-more span,
body .klaro .cookie-notice .cm-btn span,
body .klaro .cookie-modal .cm-btn span,
body .klaro .context-notice .cm-btn span {
  pointer-events: none;
}
.cta .icon, body .klaro .cookie-notice .cn-learn-more .icon,
body .klaro .cookie-notice .cm-btn .icon,
body .klaro .cookie-modal .cm-btn .icon,
body .klaro .context-notice .cm-btn .icon {
  font-size: 2rem;
}
.cta-default, .cta-inverted, .cta-white, .cta-icon-only, .cta-icon-only-white, .cta-big {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 1rem;
  line-height: 130%;
  letter-spacing: 0;
  border: 0;
  border-radius: var(--cta-border-radius);
  padding: 0.75rem 1.25rem;
  text-decoration: none;
}
.cta-default:focus, .cta-default:focus-within, .cta-inverted:focus, .cta-inverted:focus-within, .cta-white:focus, .cta-white:focus-within, .cta-icon-only:focus, .cta-icon-only:focus-within, .cta-icon-only-white:focus, .cta-icon-only-white:focus-within, .cta-big:focus, .cta-big:focus-within {
  outline: 0;
}
.cta-default:has(input:focus-visible), .cta-default:focus-visible, .cta-inverted:has(input:focus-visible), .cta-inverted:focus-visible, .cta-white:has(input:focus-visible), .cta-white:focus-visible, .cta-icon-only:has(input:focus-visible), .cta-icon-only:focus-visible, .cta-icon-only-white:has(input:focus-visible), .cta-icon-only-white:focus-visible, .cta-big:has(input:focus-visible), .cta-big:focus-visible {
  outline: 0.125rem solid var(--color-outline-accessibility);
  outline-style: solid;
  outline-offset: 0.125rem;
  outline-width: 0.125rem;
}
.cta-default.disabled, .cta-inverted.disabled, .cta-white.disabled, .cta-icon-only.disabled, .cta-icon-only-white.disabled, .cta-big.disabled {
  background-color: var(--cta-color-background-disabled) !important;
  color: var(--cta-color-text-disabled);
  border-color: var(--cta-color-border-disabled);
}
.cta:hover:not(.disabled), body .klaro .cookie-notice .cn-learn-more:hover:not(.disabled),
body .klaro .cookie-notice .cm-btn:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn:hover:not(.disabled),
body .klaro .context-notice .cm-btn:hover:not(.disabled) {
  color: var(--cta-color-text-hover);
  background-color: var(--cta-color-background-hover);
  text-decoration: none;
}
.cta-inverted {
  color: var(--cta-color-text-inverted);
  background-color: var(--cta-color-background-inverted);
  border-color: var(--cta-color-border-inverted);
}
.cta-inverted:hover:not(.disabled) {
  color: var(--cta-color-text-hover-inverted);
  background-color: var(--cta-color-background-hover-inverted);
  border-color: var(--cta-color-border-hover-inverted);
}
.cta-white {
  color: var(--cta-color-text-white);
  background-color: var(--cta-color-background-white);
  border-color: var(--cta-color-border-white);
}
.cta-white:hover:not(.disabled) {
  color: var(--cta-color-text-hover-white);
  background-color: var(--cta-color-background-hover-white);
  border-color: var(--cta-color-border-hover-white);
}
.cta-icon-only {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: inherit;
  width: 2.25rem;
  height: 2.25rem;
  color: var(--cta-color-text);
  background-color: var(--cta-color-background);
  border: 0.0625rem solid var(--cta-color-border-icon);
  padding: 0;
}
@media (min-width: 576px) {
  .cta-icon-only {
    width: 3rem;
    height: 3rem;
  }
}
.cta-icon-only:hover:not(.disabled) {
  color: var(--cta-color-text-hover);
  background-color: var(--cta-color-background-hover);
  border: 0.0625rem solid var(--cta-color-border-icon-hover);
}
.cta-icon-only-white {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: inherit;
  width: 2.25rem;
  height: 2.25rem;
  color: var(--cta-color-text-white);
  background-color: var(--cta-color-background-white);
  border: 0.0625rem solid var(--cta-color-border-icon);
  padding: 0;
}
@media (min-width: 576px) {
  .cta-icon-only-white {
    width: 3rem;
    height: 3rem;
  }
}
.cta-icon-only-white:hover:not(.disabled) {
  color: var(--cta-color-text-hover-white);
  background-color: var(--cta-color-background-hover-white);
  border: 0.0625rem solid var(--cta-color-border-icon-hover);
}
.cta-big {
  font-family: var(--font-family);
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 130%;
  letter-spacing: 0;
}
.cta-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 3rem;
}
@media (min-width: 768px) {
  .cta-group {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

body .klaro {
  --klaro-color-brand: var(--color-brand-primary);
  --klaro-color-background: var(--color-background);
  --klaro-color-context-background: var(--color-brand-secondary);
  --klaro-color-context-border: var(--color-brand-secondary);
  --klaro-color-text-inverted: var(--color-text-inverted);
  --klaro-color-button-text: var(--color-text-inverted);
  --klaro-color-button-text-hover: var(--color-text-default);
  --klaro-color-button-background: var(--color-brand-primary);
  --klaro-color-button-background-hover: var(--color-surface-accent);
  --klaro-color-link-text: var(--color-text);
  --klaro-color-link-text-hover: var(--color-text);
  --klaro-color-slider-background: var(--color-brand-primary);
  --klaro-color-slider-background-active: var(--color-brand-secondary);
  --green1: var(--color-brand-primary);
  --green2: var(--color-brand-primary);
  --green3: var(--color-brand-primary);
  --light1: var(--color-text-default);
  --dark3: var(--color-text-default);
  --font-family: var(--font-family-sans);
}
body .klaro.cm-as-context-notice {
  padding: 0;
}
body .klaro label {
  margin: 0;
}
body .klaro .cookie-notice:not(.cookie-modal-notice) {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  font-size: 0.8125rem;
  line-height: 160%;
  letter-spacing: 0;
  position: fixed;
  top: initial;
  right: 1rem;
  bottom: 1rem;
  left: initial;
  width: calc(100vw - 1rem * 2);
  background-color: var(--klaro-color-background);
  border-color: var(--klaro-color-background);
  border-radius: 0.25rem;
}
@media (min-width: 768px) {
  body .klaro .cookie-notice:not(.cookie-modal-notice) {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1rem;
    line-height: 150%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-notice:not(.cookie-modal-notice) {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1rem;
    line-height: 150%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-notice:not(.cookie-modal-notice) {
    max-width: 50rem;
  }
}
body .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1rem;
}
body .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok .cn-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  width: 100%;
  margin-top: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok .cn-buttons {
    width: auto;
  }
}
body .klaro .cookie-modal .cm-modal .cm-header h1.title {
  font-family: var(--font-family-headline);
  font-weight: var(--font-weight-headline);
  font-size: 1.875rem;
  line-height: 110%;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-modal .cm-header h1.title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 2.5rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-modal .cm-modal .cm-header h1.title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 2.5rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-modal .cm-header {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  font-size: 1rem;
  line-height: 150%;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-header {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1.125rem;
    line-height: 155%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-modal .cm-header {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1.25rem;
    line-height: 155%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-modal .cm-header .title {
  font-family: var(--font-family-headline);
  font-weight: var(--font-weight-headline);
  font-size: 2.5rem;
  line-height: 110%;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-header .title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 3.75rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-modal .cm-header .title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 3.75rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-modal .cm-caret,
body .klaro .cookie-modal .cm-list-description {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  font-size: 0.8125rem;
  line-height: 160%;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-caret,
  body .klaro .cookie-modal .cm-list-description {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1rem;
    line-height: 150%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-modal .cm-caret,
  body .klaro .cookie-modal .cm-list-description {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1rem;
    line-height: 150%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-modal .cm-service + .cm-service {
  padding-top: 1rem;
}
body .klaro .cookie-modal .cm-list-title {
  font-family: var(--font-family-headline);
  font-weight: var(--font-weight-headline);
  font-size: 1.125rem;
  line-height: 110%;
  letter-spacing: 0;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-list-title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 1.5rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .cookie-modal .cm-list-title {
    font-family: var(--font-family-headline);
    font-weight: var(--font-weight-headline);
    font-size: 1.5rem;
    line-height: 110%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-modal .cm-footer-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-flow: column !important;
          flex-flow: column !important;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.5rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-footer-buttons {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-flow: row !important;
            flex-flow: row !important;
  }
}
body .klaro .cookie-modal .cm-footer-buttons .cm-btn {
  width: 100%;
}
body .klaro .cookie-modal .cm-footer-buttons .cm-btn:last-child {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
@media (min-width: 768px) {
  body .klaro .cookie-modal .cm-footer-buttons .cm-btn {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  body .klaro .cookie-modal .cm-footer-buttons .cm-btn:last-child {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
body .klaro .context-notice {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  font-size: 1rem;
  line-height: 150%;
  letter-spacing: 0;
  background-color: var(--klaro-color-context-background);
  border-color: var(--klaro-color-context-border);
  border-radius: 0;
}
@media (min-width: 768px) {
  body .klaro .context-notice {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1.125rem;
    line-height: 155%;
    letter-spacing: 0;
  }
}
@media (min-width: 992px) {
  body .klaro .context-notice {
    font-family: var(--font-family);
    font-weight: var(--font-weight);
    font-size: 1.25rem;
    line-height: 155%;
    letter-spacing: 0;
  }
}
body .klaro .cookie-notice a:link,
body .klaro .cookie-notice a:visited,
body .klaro .cookie-notice a:hover,
body .klaro .cookie-modal a:link,
body .klaro .cookie-modal a:visited,
body .klaro .cookie-modal a:hover {
  color: var(--klaro-color-link-text);
  line-height: 2rem;
  text-align: center;
}
body .klaro .cookie-notice .cn-learn-more,
body .klaro .cookie-notice .cm-btn,
body .klaro .cookie-modal .cm-btn,
body .klaro .context-notice .cm-btn {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 3rem;
  margin-top: 0 !important;
  margin-right: 0 !important;
  padding: 0.5rem 1rem;
  color: var(--klaro-color-button-text);
  background-color: var(--klaro-color-button-background) !important;
  background-image: none;
  border: 0;
  border-radius: var(--cta-border-radius);
  overflow: hidden;
  -webkit-transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
body .klaro .cookie-notice .cn-learn-more:hover:not(.disabled),
body .klaro .cookie-notice .cm-btn:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn:hover:not(.disabled),
body .klaro .context-notice .cm-btn:hover:not(.disabled) {
  color: var(--klaro-color-button-text-hover);
  background-color: var(--klaro-color-button-background-hover) !important;
}
@media (min-width: 768px) {
  body .klaro .cookie-notice .cn-learn-more,
  body .klaro .cookie-notice .cm-btn,
  body .klaro .cookie-modal .cm-btn,
  body .klaro .context-notice .cm-btn {
    -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
            flex-grow: 0 !important;
  }
}
body .klaro .context-notice .cm-btn.cm-btn-success-var,
body .klaro .cookie-notice .cm-btn.cm-btn-success-var,
body .klaro .cookie-modal .cm-btn.cm-btn-success-var,
body .klaro .cookie-modal .cm-btn.cm-btn-success,
body .klaro .cookie-modal .cm-btn.cm-btn-accept,
body .klaro .cookie-modal .cm-btn.cm-btn-decline {
  color: var(--klaro-color-button-text);
  background-color: var(--klaro-color-button-background) !important;
  font-weight: bold !important;
}
body .klaro .context-notice .cm-btn.cm-btn-success-var:hover:not(.disabled),
body .klaro .cookie-notice .cm-btn.cm-btn-success-var:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn.cm-btn-success-var:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn.cm-btn-success:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn.cm-btn-accept:hover:not(.disabled),
body .klaro .cookie-modal .cm-btn.cm-btn-decline:hover:not(.disabled) {
  color: var(--klaro-color-button-text-hover);
  background-color: var(--klaro-color-button-background-hover) !important;
}
body .klaro .context-notice .cm-list-label .slider,
body .klaro .cookie-notice .cm-list-label .slider,
body .klaro .cookie-modal .cm-list-label .slider {
  background-color: var(--klaro-color-slider-background);
  opacity: 0.6;
}
body .klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
body .klaro .context-notice .cm-list-input:checked + .cm-list-label .slider,
body .klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
  background-color: var(--klaro-color-slider-background-active);
  opacity: 1;
}
body .klaro .klaro-table {
  margin-top: 1rem;
}
body .klaro .purposes {
  display: none;
}