/*
 * DO NOT EDIT THIS FILE.
 * See the following change record for more information,
 * https://www.drupal.org/node/3084859
 * @preserve
 */

/**
 * @file
 * Generic base elements.
 */

*,
*::before,
*::after {
  box-sizing: border-box;
}
*:focus {
  outline: solid 2px var(--color--secondary);
  outline-offset: 2px;
}

html {
  font-family: var(--font-serif);
  font-size: var(--font-size-l);
  font-weight: normal;
  font-style: normal;
  line-height: var(--line-height-base);
  color: var(--color--black);
  scroll-behavior: smooth;
}

body.translation-ls {
  line-height: var(--line-height-l);
}

body {
  margin: 0;
}

body.is-fixed {
  position: fixed;
  overflow: hidden;
  width: 100%;
}

[dir="rtl"] body {
  background-position: top right;
}

a {
  color: var(--color--primary);
}

a:hover {
  color: var(--color--secondary);
}

a:focus {
  color: var(--color--secondary);
  /* outline: solid 2px var(--color--secondary);
  outline-offset: 2px; */
  outline: none !important;
}

button {
  font-family: inherit;
}

img,
video {
  display: block;
  max-width: 100%;
  height: auto;
}

audio {
  display: block;
  max-width: 100%;
}

h1 {
  font-size: 1.4rem;
  line-height: 1.7rem;
  font-weight: bold;
}

@media (min-width: 43.75rem) {
  h1 {
    font-size: 2rem;
    line-height: 2.4rem;
  }
}

@media (min-width: 75rem) {
  h1 {
    font-size: 2.4rem;
    line-height: 3rem;
  }
}

h2:not(.toolbar-menu__title) {
  font-size: 1.25rem;
  line-height: 1.5rem;
  color: var(--color--secondary);
  font-weight: bold;
}

@media (min-width: 43.75rem) {
  h2:not(.toolbar-menu__title) {
    font-size: 1.6rem;
    line-height: 2rem;
  }
}

@media (min-width: 75rem) {
  h2:not(.toolbar-menu__title) {
    font-size: 2rem;
    line-height: 2.6rem;
  }
}

h3:not(.accordion__headline) {
  font-size: 1.1rem;
  line-height: 1.32rem;
  font-weight: bold;
}
h3.accordion__headline {
  margin: 0;
  font-size: 1rem;
}

@media (min-width: 43.75rem) {
  h3:not(.accordion__headline) {
    font-size: 1.125rem;
    line-height: 1.575rem;
  }
}

@media (min-width: 75rem) {
  h3:not(.accordion__headline) {
    font-size: 1.6rem;
    line-height: 2.075rem;
  }
}

h4 {
  font-size: 1rem;
  line-height: var(--sp1-5);
  font-weight: bold;
}

h5 {
  font-size: 0.825rem;
  line-height: var(--sp1-5);
  font-weight: 400;
}

h6 {
  font-size: 0.75rem;
  line-height: var(--sp);
  font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-sans);
}

h1,
h2 {
  margin-block: var(--sp);
}

h3:not(.accordion__headline) {
  margin-block-start: var(--sp0-5);
  margin-block-end: 0;
}

@media (min-width: 43.75rem) {
  h1,
  h2 {
    margin-block-start: var(--sp);
    margin-block-end: 0;
  }

  h2 {
    margin-block-start: var(--sp2);
  }

  h3:not(.accordion__headline) {
    margin-block-start: var(--sp);
  }
}

@media (min-width: 75rem) {
  h2 {
    margin-block-start: var(--sp4);
  }
}

h5,
h6 {
  color: var(--color--gray-20);
  margin-block: calc(0.25 * var(--sp));
  font-style: italic;
}

h4 {
  margin-block: calc(0.5 * var(--sp));
}

ul {
  margin-block-start: 0.25em;
  margin-block-end: 0.25em;
  margin-inline-start: 1.5em;
  margin-inline-end: 0;
  padding-inline-start: 0;
  list-style-type: disc;
  list-style-image: none;
}
