/* stylelint-disable order/properties-alphabetical-order */
/* stylelint-enable */
/**
 * project colors
 */
/**
 * project colors
 */
/**
 * base color definitions
 */
/**
 * error color
 */
/**
 * interaction color definitions
 */
/**
 * common colors for form elements
 * these elements are a little bit detached
 * maybe this has to be discussed
 */
/**
 * gaps, defined in styleguide
 * use in future these gaps
 */
:root {
  --spacing-l: 30px;
  --grid-gap: 30px;
}

.cards {
  --background-color-light2: var(--greys2);
  --text-color-light2: var(--text-color-primary);
  --background-color-light3: var(--greys3);
  --text-color-light3: var(--text-color-primary);
  --background-color-light4: var(--greys4);
  --text-color-light4: var(--text-color-primary);
  --background-color-light5: var(--greys5);
  --text-color-light5: var(--text-color-primary);
  --background-color-primary0: var(--primary0);
  --text-color-primary0: var(--text-color-primary);
  --background-color-primary1: var(--primary1);
  --text-color-primary1: var(--text-color-primary);
  --background-color-primary2: var(--primary2);
  --text-color-primary2: var(--text-color-primary);
  --background-color-primary3: var(--primary3);
  --text-color-primary3: var(--text-color-primary);
  --background-color-primary4: var(--primary4);
  --text-color-primary4: var(--text-color-primary);
  --background-color-primary5: var(--primary5);
  --text-color-primary5: var(--text-color-primary);
  --background-color-secondary3: var(--secondary3);
  --text-color-secondary3: var(--text-color-primary);
  --background-color-secondary4: var(--secondary4);
  --text-color-secondary4: var(--text-color-primary);
  --background-color-secondary5: var(--secondary5);
  --text-color-secondary5: var(--text-color-primary);
  --background-color-complementary0: var(--complementary0);
  --text-color-complementary0: var(--text-color-primary);
  --background-color-complementary1: var(--complementary1);
  --text-color-complementary1: var(--text-color-primary);
  --background-color-complementary2: var(--complementary2);
  --text-color-complementary2: var(--text-color-primary);
  --background-color-complementary3: var(--complementary3);
  --text-color-complementary3: var(--text-color-primary);
  --background-color-complementary4: var(--complementary4);
  --text-color-complementary4: var(--text-color-primary);
  --background-color-complementary5: var(--complementary5);
  --text-color-complementary5: var(--text-color-primary);
}

.cards {
  --cards-background-color-primary: var(--primary-color);
  --cards-text-color-primary: var(--text-color-secondary);
  --cards-background-color-secondary: var(--secondary-color);
  --cards-text-color-secondary: var(--text-color-secondary);
  --cards-background-color-tertiary: var(--tertiary-color);
  --cards-text-color-tertiary: var(--text-color-secondary);
  --cards-background-color-light: var(--light-gray-color);
  --cards-text-color-light: var(--text-color-primary);
}

.progress {
  --bg-color: var(--group1-color5);
  --fill-color: var(--group1-color0);
}

th {
  --color: var(--text-color);
}

.text {
  --background-color-light2: var(--greys2);
  --text-color-light2: var(--text-color-primary);
  --background-color-light3: var(--greys3);
  --text-color-light3: var(--text-color-primary);
  --background-color-light4: var(--greys4);
  --text-color-light4: var(--text-color-primary);
  --background-color-light5: var(--greys5);
  --text-color-light5: var(--text-color-primary);
  --background-color-primary0: var(--primary0);
  --text-color-primary0: var(--text-color-primary);
  --background-color-primary1: var(--primary1);
  --text-color-primary1: var(--text-color-primary);
  --background-color-primary2: var(--primary2);
  --text-color-primary2: var(--text-color-primary);
  --background-color-primary3: var(--primary3);
  --text-color-primary3: var(--text-color-primary);
  --background-color-primary4: var(--primary4);
  --text-color-primary4: var(--text-color-primary);
  --background-color-primary5: var(--primary5);
  --text-color-primary5: var(--text-color-primary);
  --background-color-secondary3: var(--secondary3);
  --text-color-secondary3: var(--text-color-primary);
  --background-color-secondary4: var(--secondary4);
  --text-color-secondary4: var(--text-color-primary);
  --background-color-secondary5: var(--secondary5);
  --text-color-secondary5: var(--text-color-primary);
  --background-color-complementary0: var(--complementary0);
  --text-color-complementary0: var(--text-color-primary);
  --background-color-complementary1: var(--complementary1);
  --text-color-complementary1: var(--text-color-primary);
  --background-color-complementary2: var(--complementary2);
  --text-color-complementary2: var(--text-color-primary);
  --background-color-complementary3: var(--complementary3);
  --text-color-complementary3: var(--text-color-primary);
  --background-color-complementary4: var(--complementary4);
  --text-color-complementary4: var(--text-color-primary);
  --background-color-complementary5: var(--complementary5);
  --text-color-complementary5: var(--text-color-primary);
}

.title-area {
  --background-color: var(--greys4);
}

.action-progress-overlay {
  --content-padding: 1rem;
  --backdrop-color: rgb(from var(--black) r g b / 50%);
  --color: white;
}

.progress {
  --width: 100%;
  --outer-padding: 0;
}

td,
th {
  --padding: 10px 24px;
}

:root {
  --heading1-margin-bottom: 30px;
  --heading2-margin-bottom: 24px;
  --heading3-margin-bottom: 16px;
  --heading4-margin-bottom: 8px;
  --heading5-margin-bottom: 8px;
  --heading6-margin-bottom: 8px;
}

:root {
  --decoration-width: 1px;
  --decoration-style: underline;
  --decoration-offset: auto;
  --decoration-hover-width: var(--decoration-width);
  --decoration-hover-style: var(--decoration-style);
  --text-link-font-weight: 700;
}

.survey-list__toggle {
  --action-color: var(--primary-dark-color);
}

/**
 * @file
 * Float clearing.
 *
 */
.clearfix::after {
  clear: both;
  content: "";
  display: block;
}

/**
 * @file
 * Utility classes to hide elements in different ways.
 */
/**
 * Hide elements from all users.
 *
 * Used for elements which should not be immediately displayed to any user. An
 * example would be collapsible details that will be expanded with a click
 * from a user. The effect of this class can be toggled with the jQuery show()
 * and hide() functions.
 */
.hidden {
  display: none;
}

/**
 * Hide elements visually, but keep them available for screen readers.
 *
 * Used for information required for screen reader users to understand and use
 * the site where visual display is undesirable. Information provided in this
 * manner should be kept concise, to avoid unnecessary burden on the user.
 */
.visually-hidden {
  /**
   * The .focusable class extends the .visually-hidden class to allow
   * the element to be focusable when navigated to via the keyboard.
   */
}
.visually-hidden:not(.visually-hidden.focusable:focus-visible) {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(100%);
  clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.visually-hidden.focusable:focus-visible {
  position: absolute;
  overflow: visible;
  padding: 1rem 2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

/**
 * Hide visually and from screen readers, but maintain layout.
 */
.invisible {
  visibility: hidden;
}

.accordion-section__title {
  margin-top: 0;
}
.accordion-section__downloads {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: -0.5rem;
}
.accordion-section__downloads > * {
  margin-bottom: 0.5rem;
}

.content-section {
  padding-bottom: 6.25rem;
}
.content-section > *:not(:last-child) {
  margin-bottom: 1.875rem;
}
.content-section__content-after > *:not(:last-child) {
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .content-section__content-after > *:not(:last-child) {
    margin-bottom: 3.125rem;
  }
}
.content-section__button-wrapper {
  margin-top: 1.875rem;
}
.content-section__heading {
  max-width: 45rem;
}
.content-section--content-wrapped .content-section__content {
  max-width: 45rem;
}
@media only screen and (min-width: 768px) {
  .content-section--half-wrapped .content-section__content {
    max-width: 50%;
  }
}
.content-section--vertical-gutter .content-section__content > *:not(:last-child) {
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .content-section--vertical-gutter .content-section__content > *:not(:last-child) {
    margin-bottom: 3.125rem;
  }
}

.field-group--vertical-gap:not(:last-child) {
  margin-bottom: 0.875rem;
}
.field-group--vertical-gap-big:not(:last-child) {
  margin-bottom: 3.75rem;
}
.field-group--background {
  background-color: #F5F6F7;
  padding: 1.25rem;
}
.field-group--error {
  background-color: #FFDCE2;
}
.field-group--indented {
  padding-left: 1.25rem;
}
.field-group--indented-big {
  padding-left: 3.75rem;
}
.field-group__item--select select {
  width: 100%;
}
.field-group__description {
  padding-right: 1.25rem;
  margin-bottom: 0.875rem;
}
.field-group__heading:not(.field-group__heading--first) {
  margin-top: 1.2rem !important;
}
.field-group__item:not(:last-child) {
  margin-bottom: 0.5rem;
}
.field-group__content-after {
  margin-top: 0.875rem;
}

.flex-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -ms-flex-preferred-size: var(--flex-bar-basis, auto);
  flex-basis: var(--flex-bar-basis, auto);
  margin-right: calc(-1 * var(--flex-bar-h-spacing, 0.875rem));
  margin-bottom: calc(-1 * var(--flex-bar-v-spacing, 0.875rem));
}
.flex-bar > * {
  margin-right: var(--flex-bar-h-spacing, 0.875rem);
  margin-bottom: var(--flex-bar-v-spacing, 0.875rem);
}
.flex-bar > *.flex-bar {
  margin: 0;
}
.flex-bar--align-start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.flex-bar--align-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.flex-bar--align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex-bar--justify-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.flex-bar--justify-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.flex-bar--justify-space-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flex-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  margin-left: calc(-1*var(--gutter));
  margin-right: calc(-1*var(--gutter));
  width: calc(100% + 2*var(--gutter));
}
.flex-grid > * {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.flex-grid--vertical-gutter > *:not(:last-child) {
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 768px) {
  .flex-grid--vertical-gutter > *:not(:last-child) {
    margin-bottom: 3.125rem;
  }
}
.flex-grid__column {
  width: calc(100% - 2*var(--gutter));
  float: left;
  margin-left: var(--gutter);
}
@media only screen and (min-width: 768px) {
  .flex-grid__column--1-of-2 {
    width: calc(50% - 1.5*var(--gutter));
    float: left;
    margin-left: var(--gutter);
  }
}
@media only screen and (min-width: 768px) {
  .flex-grid__column--1-of-3 {
    width: calc(33.3333333333% - 1.3333333333*var(--gutter));
    float: left;
    margin-left: var(--gutter);
  }
}
.flex-grid__column--1-of-4 {
  width: calc(50% - 1.5*var(--gutter));
  float: left;
  margin-left: var(--gutter);
}
@media only screen and (min-width: 768px) {
  .flex-grid__column--1-of-4 {
    width: calc(25% - 1.25*var(--gutter));
    float: left;
    margin-left: var(--gutter);
  }
}
@media only screen and (min-width: 768px) {
  .flex-grid__column--2-of-3 {
    width: calc(66.6666666667% - 1.6666666667*var(--gutter));
    float: left;
    margin-left: var(--gutter);
  }
}
@media only screen and (min-width: 768px) {
  .flex-grid__column--2-of-3-center {
    width: calc(66.6666666667% - 1.6666666667*var(--gutter));
    float: left;
    margin-left: var(--gutter);
    margin-left: calc(16.6666666667% - 1.1666666667*var(--gutter) + 2*var(--gutter));
  }
}

.form-page {
  --form-page-row-gap: 1.5625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: var(--form-page-row-gap);
  padding-bottom: 3.75rem;
}
.form-page__title {
  margin: 0;
}
.form-page--vertical-gap-after-form-before .form-page__form-before {
  margin-bottom: 2.5rem;
}
.form-page__form-after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}

.grid {
  display: grid;
  /**
   * used for claim on mood image
   */
}
.grid--2-cols {
  /* autoprefixer grid: autoplace */
  -ms-grid-columns: 1fr;
  grid-template-columns: repeat(1, 1fr);
  -ms-grid-rows: auto var(--gutter) auto;
  grid-template-rows: repeat(2, auto);
  grid-gap: var(--gutter);
}
.grid--2-cols > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.grid--2-cols > *:nth-child(2) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
@media only screen and (min-width: 768px) {
  .grid--2-cols {
    /* autoprefixer grid: autoplace */
    -ms-grid-columns: 1fr var(--gutter) 1fr;
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: repeat(1, auto);
    grid-gap: var(--gutter);
  }
  .grid--2-cols > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .grid--2-cols > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
@media only screen and (min-width: 768px) {
  .grid--2-cols.grid--1-to-2 {
    grid-template: "first second second"/1fr 1fr 1fr;
  }
  .grid--2-cols.grid--1-to-2 > *:nth-child(1) {
    grid-area: first;
  }
  .grid--2-cols.grid--1-to-2 > *:nth-child(2) {
    grid-area: second;
  }
}
@media only screen and (min-width: 768px) {
  .grid--2-cols.grid--2-to-1 {
    grid-template: "first first second"/1fr 1fr 1fr;
  }
  .grid--2-cols.grid--2-to-1 > *:nth-child(1) {
    grid-area: first;
  }
  .grid--2-cols.grid--2-to-1 > *:nth-child(2) {
    grid-area: second;
  }
}
@media only screen and (min-width: 768px) {
  .grid--2-cols.grid--1-to-3 {
    grid-template: "first second second second"/1fr 1fr 1fr 1fr;
  }
  .grid--2-cols.grid--1-to-3 > *:nth-child(1) {
    grid-area: first;
  }
  .grid--2-cols.grid--1-to-3 > *:nth-child(2),
  .grid--2-cols.grid--1-to-3 > *:nth-child(3),
  .grid--2-cols.grid--1-to-3 > *:nth-child(4) {
    grid-area: second;
  }
}
.grid--3-cols {
  /* autoprefixer grid: autoplace */
  -ms-grid-columns: 1fr;
  grid-template-columns: repeat(1, 1fr);
  -ms-grid-rows: auto var(--gutter) auto var(--gutter) auto;
  grid-template-rows: repeat(3, auto);
  grid-gap: var(--gutter);
}
.grid--3-cols > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.grid--3-cols > *:nth-child(2) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
.grid--3-cols > *:nth-child(3) {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
}
@media only screen and (min-width: 768px) {
  .grid--3-cols {
    /* autoprefixer grid: autoplace */
    -ms-grid-columns: 1fr var(--gutter) 1fr;
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: repeat(1, auto);
    grid-gap: var(--gutter);
  }
  .grid--3-cols > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .grid--3-cols > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--3-cols {
    /* autoprefixer grid: autoplace */
    -ms-grid-columns: 1fr var(--gutter) 1fr var(--gutter) 1fr;
    grid-template-columns: repeat(3, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: repeat(1, auto);
    grid-gap: var(--gutter);
  }
  .grid--3-cols > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .grid--3-cols > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .grid--3-cols > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
}
@media only screen and (min-width: 768px) {
  .grid--8-of-12-centered {
    grid-template: ". content ."/2fr 8fr 2fr;
  }
  .grid--8-of-12-centered > *:nth-child(1) {
    grid-area: content;
  }
}
@media only screen and (min-width: 1200px) {
  .grid--survey-reply-sociodemographics {
    grid-template: "first first second"/1fr 1fr 1fr;
  }
  .grid--survey-reply-sociodemographics > *:nth-child(1) {
    grid-area: first;
  }
  .grid--survey-reply-sociodemographics > *:nth-child(2) {
    grid-area: second;
  }
}

.inline > *,
.inline > * > * {
  display: inline;
}

.intermediate-page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}
.intermediate-page__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 3.125rem 0;
}
.intermediate-page__header-with-claim {
  display: grid;
  grid-template: "logos" "claim"/1fr;
  padding: 2.5rem 0;
  gap: 1.5rem;
}
@media only screen and (min-width: 1024px) {
  .intermediate-page__header-with-claim {
    grid-template: "logos claim"/1fr 2fr;
    gap: var(--grid-gap);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-items: start;
    padding: 2.5rem 3.125rem;
  }
}
.intermediate-page__claim {
  grid-area: claim;
  font-size: 1.25rem;
  line-height: 1.1;
  font-weight: 700;
}
.intermediate-page__logos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.125rem;
  grid-area: logos;
}
.intermediate-page__teaser-claim {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 2.5rem;
  color: #333;
  font-size: 1.5rem;
  line-height: 1.0833333333;
  font-weight: 800;
}
.intermediate-page__federal-state-logo > img, .intermediate-page__institute-logo > img {
  max-height: 80px;
}
.intermediate-page__content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-top: 2.5rem;
  padding-bottom: 3.125rem;
  background-color: #F5F6F7;
}
@media only screen and (min-width: 768px) {
  .intermediate-page__content {
    padding-top: 3.75rem;
    padding-bottom: 5rem;
  }
}
.intermediate-page__button {
  margin-top: 1.5rem;
}
.intermediate-page__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--grid-gap);
}
@media only screen and (min-width: 768px) {
  .intermediate-page__grid {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (min-width: 768px) {
  .intermediate-page__school {
    grid-column: 7/span 6;
  }
}
@media only screen and (min-width: 1024px) {
  .intermediate-page__school {
    grid-column: 7/span 5;
  }
}
@media only screen and (min-width: 768px) {
  .intermediate-page__classic {
    grid-column: 1/span 6;
  }
}
@media only screen and (min-width: 1024px) {
  .intermediate-page__classic {
    grid-column: 2/span 5;
  }
}

.login-section {
  display: grid;
  row-gap: 1.5rem;
  grid-template: "native" "register" "spacer" "idp"/1fr;
}
@media only screen and (min-width: 768px) {
  .login-section {
    grid-template: "native spacer idp ." 1fr "register register register ." auto/290px auto 1fr 1fr;
  }
}
.login-section--overlay {
  max-width: 290px;
  grid-template: "native"/1fr;
  margin-bottom: 0;
}
.login-section--overlay.login-section--with-provider {
  grid-template: "native" "spacer" "idp"/1fr;
}
.login-section__label {
  display: inline-block;
  font-weight: 700;
}
.login-section__register {
  grid-area: register;
}
.login-section__native {
  grid-area: native;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (min-width: 768px) {
  .login-section__native {
    -webkit-box-pack: unset;
    -ms-flex-pack: unset;
    justify-content: unset;
    -webkit-box-align: unset;
    -ms-flex-align: unset;
    align-items: unset;
  }
}
.login-section--overlay .login-section__native {
  -webkit-box-pack: unset;
  -ms-flex-pack: unset;
  justify-content: unset;
  -webkit-box-align: unset;
  -ms-flex-align: unset;
  align-items: unset;
}
.login-section__idp {
  grid-area: idp;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.login-section__native, .login-section__idp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 0.625rem;
}
.login-section__native .form-item__content-wrapper {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (min-width: 768px) {
  .login-section__native .form-item__content-wrapper {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.login-section--overlay .login-section__native .form-item__content-wrapper {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.login-section__spacer {
  grid-area: spacer;
  background: var(--general-grey-3, #808080);
  width: 100%;
  height: 1px;
  margin: 3.75rem 0 1.125rem 0;
}
@media only screen and (min-width: 768px) {
  .login-section__spacer {
    width: 1px;
    height: auto;
    margin: 0 3.75rem;
  }
}
.login-section--overlay .login-section__spacer {
  width: 100%;
  height: 1px;
  margin: 0;
}

.node {
  display: grid;
  row-gap: var(--node-row-gap-small);
  margin-bottom: var(--node-row-gap-small);
  grid-template-columns: repeat(4, 1fr);
}
@media only screen and (min-width: 1024px) {
  .node {
    row-gap: var(--node-row-gap);
    margin-bottom: var(--node-row-gap);
  }
}
@media only screen and (min-width: 768px) {
  .node {
    grid-template-columns: minmax(var(--node-outer-padding-broad), 1fr) minmax(auto, var(--max-width)) minmax(var(--node-outer-padding-broad), 1fr);
  }
}
@media only screen and (min-width: 1200px) {
  .node--center .node__item--narrow > * {
    grid-column: 3/11;
  }
}
.node__item {
  display: grid;
  grid-column: span 4;
  -webkit-column-gap: var(--node-column-gap);
  -moz-column-gap: var(--node-column-gap);
  column-gap: var(--node-column-gap);
}
@media only screen and (min-width: 768px) {
  .node__item {
    grid-template-columns: repeat(12, 1fr);
    grid-column: 2/3;
  }
}
.node__item--narrow > * {
  grid-column: span 12;
}
@media only screen and (max-width: 1023px) {
  .node__item--narrow > * {
    padding-right: var(--node-outer-padding-narrow);
    padding-left: var(--node-outer-padding-narrow);
  }
}
@media only screen and (min-width: 1024px) {
  .node__item--narrow > * {
    grid-column: span 10;
  }
}
@media only screen and (min-width: 1200px) {
  .node__item--narrow > * {
    grid-column: span 8;
  }
}
.node__item--broad > * {
  grid-column: span 12;
}
@media only screen and (max-width: 767px) {
  .node__item--broad > * {
    padding-right: var(--node-outer-padding-narrow);
    padding-left: var(--node-outer-padding-narrow);
  }
}

.outer-wrapper:not(.outer-wrapper--large) {
  padding-right: var(--outer-padding);
  padding-left: var(--outer-padding);
  max-width: calc(var(--max-width) + 2 * var(--outer-padding));
  margin-left: auto;
  margin-right: auto;
}
.outer-wrapper--large {
  --max-width: 98.75rem;
}
@media only screen and (min-width: 1024px) {
  .outer-wrapper--large {
    padding-right: var(--outer-padding);
    padding-left: var(--outer-padding);
    max-width: calc(var(--max-width) + 2 * var(--outer-padding));
    margin-left: auto;
    margin-right: auto;
  }
}

.overlay-container {
  position: fixed;
  display: none;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  overflow-y: scroll;
  overflow-x: hidden;
  background-color: white;
}
.overlay-container__close {
  position: absolute;
  top: 24px;
  right: 24px;
  z-index: 1000;
  color: #203F5A !important;
}

.page-layout {
  display: grid;
  grid-column-gap: var(--gutter);
  grid-template: "sidebar-first" "content" 1fr "sidebar-second"/1fr;
  height: 100%;
  -ms-flex-line-pack: start;
  align-content: start;
}
.page-layout__content {
  grid-area: content;
  min-width: 0;
}
.page-layout__sidebar > *:not(:last-child) {
  margin-bottom: 1.875rem;
}
.page-layout__sidebar--first {
  grid-area: sidebar-first;
}
.page-layout__sidebar--second {
  grid-area: sidebar-second;
}
@media only screen and (min-width: 1024px) {
  .page-layout--center {
    grid-template: ". content ." auto/2fr 8fr 2fr;
  }
}
@media only screen and (min-width: 1200px) {
  .page-layout--sidebar-right {
    grid-template: "content content sidebar-first" auto "content content sidebar-second" 1fr/1fr 1fr 1fr;
  }
  .page-layout--sidebar-left {
    grid-template: "sidebar-first content content" auto "sidebar-second content content" 1fr/1fr 1fr 1fr;
  }
}

.page-title-section {
  padding-top: 1.875rem;
  padding-bottom: 0.875rem;
}
@media only screen and (min-width: 768px) {
  .page-title-section {
    padding-top: 3.75rem;
    padding-bottom: 1.875rem;
  }
}
.page-title-section__wrapper > *:not(last-child) {
  margin-bottom: 0.875rem;
}
.page-title-section__mood-image {
  position: relative;
  max-width: 105rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding-bottom: 1.875rem;
}
.page-title-section__mood-image img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 8.75rem;
}
@media only screen and (min-width: 540px) {
  .page-title-section__mood-image img {
    height: 15rem;
  }
}
@media only screen and (min-width: 1024px) {
  .page-title-section__mood-image img {
    height: 22.5rem;
  }
}

.questionnaire-edit {
  display: grid;
  grid-template: "questionnaire-detail questionnaire-detail" "sidebar content"/2fr 5fr;
  grid-column-gap: var(--gutter);
  grid-row-gap: var(--gutter);
}
.questionnaire-edit__questionnaire-detail {
  grid-area: questionnaire-detail;
  align-self: start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.questionnaire-edit__questionnaire-detail > form {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.questionnaire-edit__questionnaire-detail > *:not(:last-child) {
  margin-right: 0.875rem;
}
.questionnaire-edit__content-wrapper {
  grid-area: content;
}
.questionnaire-edit__content-wrapper > *:not(:last-child) {
  margin-bottom: var(--gutter);
}
.questionnaire-edit__component-sidebar {
  grid-area: sidebar;
}
.questionnaire-edit__component-sidebar > *:not(:last-child) {
  margin-bottom: 0.875rem;
}
.questionnaire-edit__component-detail {
  -ms-flex-item-align: start;
  align-self: start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.questionnaire-edit__component-detail > form {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.questionnaire-edit__component-detail > *:not(:last-child) {
  margin-right: 0.875rem;
}
.questionnaire-edit__component-statements > *:last-child {
  margin-top: 0.875rem;
}
.questionnaire-edit__description {
  margin-top: 0.875rem;
  color: #808080;
  font-size: 0.875rem;
  line-height: 1.1428571429;
}
.questionnaire-edit__accordion-content {
  padding-right: 0.875rem;
  padding-left: 0.875rem;
}

@-webkit-keyframes v-dash {
  0% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes v-dash {
  0% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes h-dash {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-3%);
    transform: translateX(-3%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateX(1%);
    transform: translateX(1%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes h-dash {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-3%);
    transform: translateX(-3%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateX(1%);
    transform: translateX(1%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
.section-container--animation-v-dash > * {
  opacity: 0.01;
}
.section-container--animation-v-dash .section-container__item--appeared {
  -webkit-animation: v-dash 0.75s ease-in 0.25s forwards;
  animation: v-dash 0.75s ease-in 0.25s forwards;
}
.section-container--animation-h-dash > * {
  opacity: 0.01;
}
.section-container--animation-h-dash .section-container__item--appeared {
  -webkit-animation: h-dash 1s ease-in 0.25s forwards;
  animation: h-dash 1s ease-in 0.25s forwards;
}

.section-flex--separator > * {
  border-top: 1px solid #CCCCCC;
}
.section-flex--separator > *:last-child {
  border-bottom: 1px solid #CCCCCC;
}

.section--background-default {
  padding-top: 2.5rem;
  padding-bottom: 3.125rem;
  background-color: #F5F6F7;
  color: black;
}
@media only screen and (min-width: 768px) {
  .section--background-default {
    padding-top: 3.75rem;
    padding-bottom: 5rem;
  }
}
.section--background-teaser {
  padding-top: 2.5rem;
  padding-bottom: 3.125rem;
  background-color: #F5F6F7;
}
@media only screen and (min-width: 768px) {
  .section--background-teaser {
    padding-top: 3.75rem;
    padding-bottom: 5rem;
  }
}
.section--survey-type {
  padding: 0;
}
.section--survey-type:not(:last-child) {
  margin-bottom: 3.75rem;
}
.section__content--multiple > *:not(last-child) {
  margin-bottom: var(--gutter);
}
.section--padding-small {
  padding-top: 3.125rem;
  padding-bottom: 0.875rem;
}
@media only screen and (min-width: 768px) {
  .section--center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
  }
}
.section__actions {
  margin-top: 0.875rem;
}
.section__heading {
  margin-top: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.section__description {
  padding-bottom: 1.5rem;
}

.sidebar--background-default {
  padding: 1.875rem;
  background-color: #F5F6F7;
}
.sidebar__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.sidebar__items > *:not(:last-child) {
  margin-bottom: var(--gutter);
}

.survey-complete-page__context {
  background: rgba(32, 63, 90, 0.05);
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}
@media only screen and (min-width: 768px) {
  .survey-complete-page__context {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
  }
}
.survey-complete-page__component-reference {
  margin-top: 3.75rem;
}
.survey-complete-page__content {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}
.survey-complete-page__title {
  margin-bottom: 3.125rem;
}

.survey-complete-table {
  position: relative;
  border-spacing: 0;
  width: 100%;
}
.survey-complete-table__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media only screen and (max-width: 767px) {
  .survey-complete-table__body {
    row-gap: 0.875rem;
  }
}
@media only screen and (min-width: 768px) {
  .survey-complete-table__body--button {
    row-gap: 0.875rem;
  }
}

.survey-list {
  background-color: var(--light-gray-color, #F5F6F7);
  padding-top: 1.875rem;
}
.survey-list:last-child {
  padding-bottom: 3.125rem;
}
@media only screen and (min-width: 768px) {
  .survey-list:last-child {
    padding-bottom: 5rem;
  }
}
.survey-list__toggle-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding-right: 1.5rem;
}
.survey-list__toggle {
  text-align: right;
  color: var(--primary-dark-color);
}
.survey-list__heading {
  margin-top: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.survey-list__description {
  padding-bottom: 1.5rem;
}

.survey-user-statement-group-form__row-wrapper {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-column-gap: 1.3rem;
}

.teaser-section {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 4;
  background-color: var(--background-color-teaser-section);
  padding-top: 2.5rem;
  padding-bottom: 3.125rem;
}
@media only screen and (min-width: 768px) {
  .teaser-section {
    padding-top: 3.75rem;
    padding-bottom: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  .teaser-section {
    padding-right: var(--node-outer-padding-narrow);
    padding-left: var(--node-outer-padding-narrow);
  }
}
@media only screen and (min-width: 768px) {
  .teaser-section {
    grid-column: span 3;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
  }
}
.teaser-section__items, .teaser-section__heading {
  grid-column: span 4;
}
@media only screen and (min-width: 768px) {
  .teaser-section__items, .teaser-section__heading {
    grid-column: 2/3;
  }
}
.teaser-section__items {
  display: grid;
  row-gap: var(--grid-row-gap);
}
@media only screen and (min-width: 768px) {
  .teaser-section__items {
    -webkit-column-gap: var(--node-column-gap);
    -moz-column-gap: var(--node-column-gap);
    column-gap: var(--node-column-gap);
    grid-template-columns: repeat(12, 1fr);
  }
}
.teaser-section__items > * {
  grid-column: span 4;
}

.view__header, .view__filter, .view__attachment-before {
  margin-bottom: 1.875rem;
}
.view__row:not(:last-child) {
  margin-bottom: 0.875rem;
}
.view__pager, .view__attachment-after {
  margin-top: 1.875rem;
}

.widget-container {
  position: relative;
}
/*# sourceMappingURL=layout.css.map */
