/* Block Pattern Styling
--------------------------------------------- */
/* Normalizer ---------------- */
.reference__img img {
  width: 100%;
}

/* Stacking Images / Text ---------------- */
.reference__image_stack figure {
  margin-block: 0;
}

.reference__image_stack.right .image__stack_left .reference__img img,
.reference__image_stack.left .image__stack_right .reference__img img {
  height: 100%;
  object-fit: cover;
}

.reference__image_stack.left.text .image__stack_left .wp-block-group,
.reference__image_stack.right.text .image__stack_right .wp-block-group {
  padding-inline: 3rem;
}

/* Stacking left */
.reference__image_stack.left
  .image__stack_right
  :is(.reference__img, .reference__img img) {
  height: 100%;
}

.reference__image_stack.left .image__stack_left .reference__img:first-of-type {
  padding-bottom: 0.75rem;
}

.reference__image_stack.left .image__stack_left .reference__img:last-of-type {
  padding-top: 0.75rem;
}

.reference__image_stack.left .image__stack_left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Stacking right */
.reference__image_stack.right
  .image__stack_left
  :is(.reference__img, .reference__img img) {
  height: 100%;
}

.reference__image_stack.right
  .image__stack_right
  .reference__img:first-of-type {
  padding-bottom: 0.75rem;
}

.reference__image_stack.right .image__stack_right .reference__img:last-of-type {
  padding-top: 0.75rem;
}

.reference__image_stack.right .image__stack_right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Stacking right with text */
@media (max-width: 992px) {
  .reference__image_stack.left.text .image__stack_left .wp-block-group,
  .reference__image_stack.right.text .image__stack_right .wp-block-group {
    padding-top: 3rem;
    padding-bottom: 1.5rem;
  }
}

/* Stacking right with text / video left */
.reference__image_stack.video :is(.reference__video, .reference__video video) {
  height: 100%;
}

.reference__image_stack.video .reference__video video {
  object-fit: cover;
}

/* General */
@media (max-width: 1200px) {
  .reference__image_stack.left.text .image__stack_left .wp-block-group,
  .reference__image_stack.right.text .image__stack_right .wp-block-group {
    padding-inline: 0rem;
  }
}

/* Colored Tiles ---------------- */
.reference__colored_tile_row figure {
  margin-block: 0;
}

.reference__colored_tile_row .reference__colored_text_tile .wp-block-group {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.reference__colored_tile_row .reference__colored_text_tile .wp-block-group * {
  margin-left: 0 !important;
}

.reference__colored_tile_row
  .reference__colored_text_tile
  .wp-block-group
  p:last-of-type {
  margin-bottom: 0;
}

/* Text left */
.reference__colored_tile_row.left
  .reference__colored_tile_left
  .reference__colored_text_tile {
  position: relative;
  width: 100%;
  height: 100%;
}

.reference__colored_tile_row.left
  .reference__colored_tile_left
  .reference__colored_text_tile
  .wp-block-group {
  aspect-ratio: 1/1;
  padding: 1.5rem;
}

/* Text right */
.reference__colored_tile_row.right
  .reference__colored_tile_right
  .reference__colored_text_tile {
  position: relative;
  width: 100%;
  height: 100%;
}

.reference__colored_tile_row.right
  .reference__colored_tile_right
  .reference__colored_text_tile
  .wp-block-group {
  aspect-ratio: 1/1;
  padding: 1.5rem;
}

/* Image Slider ---------------- */
.image_slider__wrapper .swiper-slide img {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
  display: block;
  margin: 0;
}

.image_slider__navigation_button {
  background: transparent;
  border: none;
  color: var(--cDef);
  padding: 0;
}

.image_slider__navigation_pagination {
  width: fit-content;
}

/* Colored Background ---------------- */
.references__colored_background_cover .wp-block-group {
  max-width: 768px !important;
}

.references__colored_background_cover .wp-block-group .reference__img {
  width: fit-content !important;
  margin-top: 3rem;
}

/* General spacing ---------------- */
/* Paragraph Big */
.reference__paragraph_big {
  padding-block: 3rem;
}

.reference__paragraph_big * {
  line-height: 1.25;
}

.reference__paragraph_big p:last-of-type {
  margin-bottom: 0;
}

/* Title + Paragraph Big Right */
.reference__title_paragraph {
  padding-block: 3rem;
}

.reference__title_paragraph p:last-of-type {
  margin-bottom: 0;
}

/* Paragraph Padding */
.reference__paragraph_padding p:last-of-type {
  margin-bottom: 0;
}

@media (max-width: 1400px) {
  :is(.reference__img_left_text_right, .reference__img_left_text_left)
    .reference__paragraph_padding {
    padding-top: 4.5rem;
    padding-bottom: 3rem;
    text-align: center;
  }
}

@media (max-width: 992px) {
  /* Multiple Image Rows */
  :is(.reference__image_row_2, .reference__image_row_3, .reference__image_row_4)
    .col-12:not(:last-of-type) {
    margin-bottom: 1.5rem;
  }

  /* Video / Image Row // Image / Video Row */
  :is(
      .reference__row_video_left_image_right,
      .reference__row_video_left_image_left
    )
    .col-12:not(:last-of-type) {
    margin-bottom: 1.5rem;
  }
}

/* ---------------------------------------------- */
/* References ----------------------------------- */
/* ---------------------------------------------- */
.single-referenzen figure {
  margin-block: 0;
}

.single-referenzen .entry-content > .wp-block-group:not(:last-of-type) {
  margin-bottom: 1.5rem;
}

/* Pre footer social media ---------------- */
.reference__social_media_styling {
  min-height: 37px;
}

.reference__social_media_styling:not(span) {
  text-decoration: underline;
  margin-top: 3px;
}

/* Pre footer meta ---------------- */
.reference__meta {
  max-width: 50%;
  flex-basis: 50%;
  padding-right: 0.5rem;
}

.reference__meta .bsAccentline__after::after {
  background-color: var(--cDef);
  font-family: var(--family-body) !important;
}

.reference__meta .bsAccentline__after {
  font-family: var(--family-body);
}

.reference__meta :is(p, a) {
  font-family: var(--family-alternative);
}

.reference__meta a:hover,
.reference__meta a:focus {
  text-decoration: underline;
}

@media (max-width: 1200px) {
  .reference__social_media_styling {
    margin-bottom: 1rem;
  }
}

/* Bottom Navigation ---------------- */
.reference__navigation_seperator {
  background: var(--cDef);
  opacity: 1;
  margin: 0;
  padding: 0;
  height: 4px !important;
}

.reference__navigation_seperator.lower {
  opacity: 0.05;
}

.quoteBlock.small p:not(.quote__first_line, .quote__second_line) {
  text-decoration: none;
}

/* Image / Video / Image ---------------- */
.reference__image_and_video_row_3 :is(.reference__img, .reference__img img) {
  height: 100%;
}

.reference__image_and_video_row_3 .reference__img img {
  object-fit: cover;
  object-position: center;
}

@media (max-width: 992px) {
  .reference__image_and_video_row_3 .reference__video {
    padding-block: 1.5rem;
  }
}

/* Image Left / Text Right ---------------- */
:is(.reference__img_left_text_right.big, .reference__text_left_image_right.big)
  .reference__paragraph_padding {
  max-width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start !important;
  flex-direction: column;
}

:is(.reference__img_left_text_right.big, .reference__text_left_image_right.big)
  :is(.reference__img, .reference__img img) {
  height: 100%;
  object-fit: cover;
  object-position: center;
}

:is(.reference__img_left_text_right.big, .reference__text_left_image_right.big)
  .reference__paragraph_padding
  * {
  max-width: 75%;
  width: 100%;
}

@media (min-width: 576px) {
  .reference__paragraph_padding {
    max-width: 75%;
  }
}

@media (min-width: 1400px) {
  :is(
      .reference__img_left_text_right.big,
      .reference__text_left_image_right.big
    )
    .reference__paragraph_padding {
    padding-block: 1rem;
  }
}

@media (max-width: 1500px) {
}

@media (max-width: 1400px) {
  .reference__img_left_text_right.big .reference__paragraph_padding {
    margin-top: 1.5rem;
  }

  .reference__text_left_image_right.big .reference__paragraph_padding {
    padding-top: 4.5rem;
    margin-top: 1.5rem;
  }

  :is(
      .reference__img_left_text_right.big,
      .reference__text_left_image_right.big
    )
    .reference__paragraph_padding {
    padding-bottom: 4.5rem;
    height: auto;
    text-align: start;
  }
}
