.field.field--name-field-paragraphs .field {
  margin: 0;
}
.field.field--name-field-paragraphs h2:first-child {
  margin-top: 0;
}
.field.field--name-field-paragraphs h2:last-child {
  margin-bottom: 0;
}


.paragraph.paragraph--type--two-columns.paragraph--view-mode--default {
  .paragraph--type--image figure {
    width: 100%;
    img {
      width: 100%;
    }
  }
}

.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-left .field--name-field-image-text-image figure,
.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-right .field--name-field-image-text-image figure{
  width: 100%;
  img {
    width: 100%;
  }
}

.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-left,
.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-right,
.paragraph.paragraph--type--two-columns.paragraph--view-mode--default {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--teasergap, 1em);
  flex-direction: column;
  &.paragraph-col-align--start {
    align-items: start;
  }
  &.paragraph-col-align--center {
    align-items: center;
  }
  &.paragraph-col-align--end {
    align-items: end;
  }
  & > div {
    box-sizing: border-box;
    position: relative;
  }
}

@media screen and (min-width: 980px) {
  .paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-left,
  .paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-right,
  .paragraph.paragraph--type--two-columns.paragraph--view-mode--default {
    flex-direction: row;
    & > div {
        flex: 1 0 calc(50% - calc(var(--teasergap, 1em)/2));
    }
  }
}


@media screen and (max-width: 479px) {
  .toggle_columns_mobile.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-left,
  .toggle_columns_mobile.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-right,
  .toggle_columns_mobile.paragraph.paragraph--type--two-columns.paragraph--view-mode--default {
    flex-direction: column-reverse;
  }
}

@media screen and (min-width: 480px) and (max-width: 979px) {
  .toggle_columns_tablet.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-left,
  .toggle_columns_tablet.paragraph.paragraph--type--image-text-paragraph.paragraph--view-mode--image-right,
  .toggle_columns_tablet.paragraph.paragraph--type--two-columns.paragraph--view-mode--default {
    flex-direction: column-reverse;
  }
}

.field--name-field-icon-list-items {
  padding-bottom: var(--teasergap, 1em);
  border-bottom: 2px solid hsl(0deg 0% 52%);
  margin-bottom: 2em;
  .paragraph--type--icon-list-item {
    display: flex;
    margin-top: var(--teasergap, 1em);
    padding-top: var(--teasergap, 1em);
    gap: var(--teasergap, 1em);
    border-top: 2px solid hsl(0deg 0% 52%);
    .field--name-field-icon-list-icon,
    .field--name-field-icon-item-icon-file {
      width: 25%;
      min-width: 2em;
      text-align: center;
      svg {
        max-height: 6em;
        height: auto;
      }
    }
    .field--name-field-icon-list-text {
      width: 75%;
      & > h2,
      & > h3,
      & > h4 {
        margin-top: 0;
        margin-bottom: var(--teasergap, 1em);
      }
      & > p {
        margin-top: var(--teasergap, 1em);
        margin-bottom: var(--teasergap, 1em);
      }
    }
  }
}

.paragraph.paragraph--type--banner {
  .field--background-image  {
    figure.media-image {
      position: static;
    }
    .media-image__wrapper {
      position: absolute;
      inset: 0;
      z-index: -5;
      overflow: hidden;
      img {
        position: relative;
        object-fit: cover;
        min-width: 100%;
        min-height: 100%;
        top: 50%;
        transform: translateY(-50%);
      }
    }
  }
  &.clickarea {
    cursor: pointer;
  }
  @media screen and (min-width: 980px) {
    .field--banner-text ul,
    .field--name-field-banner-text {
      margin: 0;
      display: flex;
      flex-direction: row;
      & > li,
      & > div {
          flex: 1 0;
      }
      p:last-child {
        margin-bottom: 0;
      }
    }
  }
}

.paragraph--type--gallery {
  .field--images > ul {
    display: flex;
    flex-wrap: wrap;
    gap: var(--teasergap, 1em);
    & > li {
      flex-grow: 0;
      flex-shrink: 1;
      width: calc(100% / 3 - calc(var(--teasergap, 1em)/3*2));
      text-align: center;
      img {
        width: 100%;
        height: auto;
      }
    }
    .clickarea {
      cursor: pointer;
    }
  }
}
@media screen and (max-width: 479px) {
  .paragraph--type--gallery .field--images > ul > li {
    width: calc(50% - calc(var(--teasergap, 1em)/2));
  }
}
