/**
 * Styles for container layouts and info boxes using UAGB blocks.
 * Defines spacing, background, and responsive behavior for `.cont-bg`, `.cont-icons`, and related elements.
 */

.entry-content > .wp-block-uagb-container > .uagb-container-inner-blocks-wrap {
  max-width: 1200px !important;
  width: 90% !important;
}

.wp-block-uagb-container.kein-abstand-unten {
  margin-bottom: 0 !important;
}

#main .wp-block-uagb-container.cont-bg.kein-abstand-unten {
  padding-bottom: 0 !important;
  margin-bottom: var(--gap-xl) !important;
}

#main .wp-block-uagb-container.cont-bg.gar-kein-abstand-unten {
  padding-bottom: var(--gap-xl) !important;
  margin-bottom: 0 !important;
}

#main .entry-content > *:last-child {
  margin-bottom: var(--gap-xl);
}

/** CSS for gap large as main spacing */
.wp-block-uagb-container.einleitung,
.wp-block-uagb-container.cont-img-tab,
.wp-block-uagb-container.cont-bg > .uagb-container-inner-blocks-wrap,
.wp-block-uagb-container.cont-headings-text {
  gap: var(--gap-l) !important;
}

.wp-block-uagb-container.einleitung,
.wp-block-uagb-container.cont-headings-text {
  gap: var(--gap-m) !important;
}

/* datenschutz */
.page-id-39 .wp-block-uagb-container.einleitung {
  max-width: 1200px !important;
  width: 90% !important;
}

/*
.wp-block-uagb-image__figure::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
  opacity: 0.3;
}

.wp-block-uagb-image.no-filter .wp-block-uagb-image__figure::before {
  display: none;
}
*/

/** Container Hintergrund */

#main .wp-block-uagb-container.cont-bg {
  background-color: var(--ast-global-color-0);
  padding: var(--gap-xl) 0;
  position: relative;
  gap: var(--gap-l);
}

main .wp-block-uagb-container.cont-bg.region {
  gap: var(--gap-xl) !important;
}

/** Container Slider und Text */
.wp-block-uagb-container.cont-slider {
  position: relative;
}

.wp-block-uagb-container.cont-slider-text {
  gap: var(--gap-xl);
}

.wp-block-uagb-container.cont-slider-text .cont-txt {
  background-color: var(--ast-global-color-0);
  padding: var(--gap-l);
}

.wp-block-uagb-container.cont-slider-text
  .cont-txt
  .uagb-container-inner-blocks-wrap {
  gap: calc(var(--cont-gap) / 2) !important;
}

.wp-block-uagb-container.cont-slider-text > .uagb-container-inner-blocks-wrap {
  gap: 0 !important;
}

.wp-block-uagb-container.cont-slider-text .buchen-buttons {
  margin-top: var(--gap-m);
}

.wp-block-uagb-buttons-child.uagb-buttons__outer-wrap.buchen
  .uagb-button__wrapper
  a {
  background-color: var(--ast-global-color-2) !important;
  border-color: var(--ast-global-color-2) !important;
}

.wp-block-uagb-buttons-child.uagb-buttons__outer-wrap.buchen
  .uagb-button__wrapper
  a:hover {
  background-color: var(--ast-global-color-1) !important;
  color: var(--ast-global-color-2) !important;
}

/** Text & Accordion **/
.wp-block-uagb-container.cont-headings-acc {
  gap: var(--gap-l);
}

/** Grundriss */
.btn-grundriss {
  position: absolute !important;
  bottom: var(--gap-m);
  right: var(--gap-m);
  transform: translateY(4%);
  z-index: 9;
  --my-size: 124px;
  width: var(--my-size) !important;
  height: var(--my-size);
}

.wp-block-uagb-container.cont-slider-text .cont-txt .btn-grundriss {
  transform: translateY(-120%);
}

.btn-grundriss .wp-block-uagb-buttons-child a.wp-block-button__link {
  border-radius: 100px;
  --my-size: 124px;
  width: var(--my-size) !important;
  height: var(--my-size);
  background-color: var(--ast-global-color-3) !important;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  line-height: 1.21;
}

.btn-grundriss .wp-block-uagb-buttons-child a.wp-block-button__link::before {
  content: "";
  display: inline-block;
  position: relative;
  top: -5px;
  --my-size: 26px;
  width: var(--my-size) !important;
  height: var(--my-size);
  pointer-events: none;
  -webkit-mask: url(../../img/icon-grundriss.svg) no-repeat center / contain;
  mask: url(../../img/icon-grundriss.svg) no-repeat center / contain;
  transition: background-color 0.5s ease;
  background-color: var(--ast-global-color-1);
}

.btn-grundriss
  .wp-block-uagb-buttons-child
  a.wp-block-button__link:hover::before {
  background-color: var(--ast-global-color-3);
}

/* Container Badge */

.cont-badge::before {
  content: "";
  position: absolute;
  width: clamp(108px, 10vw, 148px);
  height: clamp(108px, 10vw, 148px);
  background-image: url("/wp-content/themes/astra-impuls-child/img/badge-before.svg");
  background-repeat: no-repeat;
  background-position: top right;
  background-size: contain;
  top: 0;
  right: clamp(26px, 7vw, 210px);
  transform: translateY(-50%);
  z-index: 9;
}

/**Container Slider Tab  (.cont-slider-tab)*/
.wp-block-uagb-container.cont-slider-tab {
  gap: 0 !important;
}

.cont-slider-tab .uagb-container-inner-blocks-wrap {
  row-gap: 0 !important;
}

.wp-block-uagb-container.cont-slider-tab .wp-block-uagb-tabs.uagb-tabs__wrap {
  font-size: var(--h5-font-size);
  margin-top: calc(((var(--h5-font-size) * 2.5) + (0.8em * 2)) * -1);
}

/* Container 2 und 3 Bilder */

.wp-block-uagb-container.cont-2-bilder {
  gap: 10px;
  flex-wrap: nowrap;
}

.wp-block-uagb-container.cont-2-bilder .wp-block-uagb-image img {
  max-height: 400px;
}

.wp-block-uagb-container.cont-3-bilder {
  gap: 0;
}

.wp-block-uagb-container.cont-3-bilder .wp-block-uagb-image {
  flex: 1 1 0;
  aspect-ratio: 820 / 615;
  overflow: hidden;
}

@media (max-width: 820px) {
  .wp-block-uagb-container.cont-icons {
    flex-direction: column;
    gap: var(--gap-xl);
  }

  .cont-bg.alignfull > *:not(.cont-3-bilder) {
    max-width: 84vw;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 768px) {
  .btn-grundriss {
    display: none;
  }

  .wp-block-uagb-container.cont-2-bilder {
    gap: 5px;
  }

  .wp-block-uagb-container.cont-slider-text
    .cont-txt
    .uagb-container-inner-blocks-wrap {
    gap: 0 !important;
  }

  .no-read-more > .uagb-container-inner-blocks-wrap {
    gap: var(--gap-m) !important;
  }

  .entry-content .rank-math-html-sitemap__list {
    padding-left: 0 !important;
  }

  #main .entry-content .wp-block-uagb-container:last-child.cont-no-bg {
    margin-bottom: calc(var(--gap-xl) + 35px) !important;
  }

  #main
    .entry-content
    .wp-block-uagb-container.cont-slider-text
    .uagb-container-inner-blocks-wrap {
    width: 100vw !important;
  }

  .wp-block-uagb-container.cont-slider-text .buchen-buttons {
    width: 95vw !important;
  }

  #main .entry-content > *:last-child {
    margin-bottom: calc(var(--gap-xl) + 16px) !important;
  }

  .wp-block-uagb-container.einleitung.small {
    margin-bottom: calc(var(--gap-l) * 1.6) !important;
  }
}

@media (max-width: 576px) {
  /**Einleitung  (.einleitung)*/

  #main .entry-content > .einleitung {
    /* padding-top: var(--gap-xl); */
  }

  /**Container Icons  (.cont-icons) & Containing Info Box*/
  .wp-block-uagb-container.cont-icons {
    margin-top: var(--gap-xl);
  }

  /* Container Text Spalten (.cont-text-spalten) */
  .cont-text-spalten .uagb-container-inner-blocks-wrap > :not(:last-child) {
    margin-bottom: var(--gap-l);
  }
}

/* in editor */
.editor-styles-wrapper a {
  color: var(--ast-global-color-0) !important;
}

#main .eb-availability-month-headings h2 {
  font-size: var(--h3-font-size) !important;
}

@media (max-width: 576px) {
  body.page-id-4181,
  body.page-id-4181 #wrapper {
    overflow: hidden;
    height: auto !important;
    position: relative !important;
  }

  .wp-block-uagb-container.kontakt-txt .wp-block-uagb-buttons {
    margin-top: var(--gap-m) !important;
  }
}

@media (max-width: 1195spx) {
  #main
    .cont-slider-text-row
    .uagb-container-inner-blocks-wrap
    > .wp-block-uagb-container {
    max-width: unset !important;
    width: 100% !important;
  }
}
