/*  */

.wrap-footer-slider #footer-slider img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 342 / 464;
  object-fit: cover;
}

footer a {
  text-decoration: none;
  transition: all 0.5s ease 0s;
  color: inherit;
}

#menu-footer-menu a:hover {
  color: var(--ast-global-color-3);
}

#footer {
  padding-block: var(--gap-xl) var(--gap-l);
  background-color: var(--ast-global-color-0);
  display: flex;
  flex-direction: column;
  gap: calc(var(--gap-xl) / 1.4);
}

footer p a,
footer li a {
  color: var(--ast-global-color-3);
  white-space: nowrap;
  font-style: normal;
  font-weight: 400;
  line-height: 1.7;
}
footer p a {
  font-size: var(--base-font-size);
}

footer li {
  font-size: clamp(12px, 0.704rem + 0.16vw, 14px);
  list-style: none;
}

#footer h4 {
  font-size: var(--h6-font-size);
  font-family: var(--headlinefont);
  font-weight: 400;
  font-style: italic;
  text-transform: none;
  color: var(--ast-global-color-3);
  line-height: 1.27;
}

#footer .wrap {
  display: flex;
  justify-content: center;
  position: relative;
  gap: calc(var(--gap-xl) / 1.4);
  /*width: min(1466px, 90vw);*/
  width: 1350px;
  max-width: 80vw;
  margin-inline: auto;
}

#footer .wrap::after {
  content: "";
  position: absolute;
  height: 101.73%;
  width: 46px;
  background-image: url(../img/icon-footer-vertical.svg);
  background-repeat: no-repeat;
  background-size: contain;
  right: -4.34vw;
  transform: translateX(100%);
  top: -9vw;
}

.inner-wrap {
  max-width: 900px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--gap-m);
}

.inner-wrap .wrap-infos {
  display: flex;
  max-width: 900px;
  align-items: flex-start;
  gap: clamp(40px, 0.904rem + 3.55vw, 110px);
  justify-content: center;
}

#footer-links .contact-icons a::after {
  content: "";
  display: block;
  height: 18px;
  width: 20px;
  background-image: url(../img/icon-facebook.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

#footer-links .contact-icons a.icon-ig::after {
  background-image: url(../img/icon-instagram.svg);
}

#footer-links .contact-icons a.icon-yt::after {
  background-image: url(../img/icon-youtube.svg);
}

#footer-links .contact-icons {
  display: flex;
  gap: var(--gap-s);
}

#footer-links .contact-icons a {
  display: flex;
  align-items: center;
  font-size: 0;
}

#footer-links,
#footer-mitte,
#footer-rechts,
#footer-claim {
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-m);
}

#footer-logo {
  width: clamp(200px, 10.676rem + 6.34vw, 280px);
}

.textwidget:has(.icon-footer) p {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 0.488rem + 0.48vw, 16px);
}

.textwidget a.icon-footer {
  position: relative;
  display: inline-block;
  width: clamp(17px, 0.994rem + 0.24vw, 20px);
  aspect-ratio: 1/1;
}

.textwidget a.icon-footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--ast-global-color-3);

  transition: background-color 0.3s ease-in-out;
}

.textwidget .icon-footer.fb::before {
  mask: url(../img/icon-facebook.svg) no-repeat center / contain;
  -webkit-mask: url(../img/icon-facebook.svg) no-repeat center / contain;
}
.textwidget .icon-footer.insta::before {
  mask: url(../img/icon-instagram.svg) no-repeat center / contain;
  -webkit-mask: url(../img/icon-instagram.svg) no-repeat center / contain;
}
.textwidget .icon-footer.youtube::before {
  mask: url(../img/icon-youtube.svg) no-repeat center / contain;
  -webkit-mask: url(../img/icon-youtube.svg) no-repeat center / contain;
}

.textwidget .icon-footer:hover::before {
  background-color: var(--ast-global-color-2);
}
#footer-logos {
  width: 80%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
}

.footer-logos-inner-wrapper ul {
  display: flex;
  gap: clamp(25px, 1.038rem + 1.82vw, 50px);
  margin: 0;
  flex-wrap: wrap;
}

.ft-logo li a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: clamp(5px, 0.267rem + 0.16vw, 7px);
  font-size: var(--btn-font-size);
  font-weight: 700;
}

.ft-logo li a::after {
  content: "";
  display: block;
  height: 18px;
  width: 14px;
  background-image: url(../img/pfeil-links-button.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  rotate: -45deg;
}

/* SLIDES */
.wrap-footer-slider {
  width: min(342px, 100%);
}

.wrap-footer-slider .footer-slider,
.footer-slider .footer-slide,
.footer-slider .footer-photo {
  height: 100%;
}

.footer-slider {
  position: relative;
}

.footer-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  gap: 57px;
  opacity: 0;
  transition: opacity 2s ease-in-out;
}

.wrap-footer-slider .footer-slide img.footer-photo {
  aspect-ratio: 342/464;
}
.footer-slide:first-child {
  position: relative;
}

.footer-slide.is-active {
  opacity: 1;
}

.footer-photo {
  width: clamp(193px, 8.665rem + 11.82vw, 342px);
}

.footer-claim {
  width: clamp(37px, 1.857rem + 1.59vw, 57px) !important;
  transform: translate(-3%, 60%);
}

/* mobile icons */
@media (min-width: 1024px) {
  #mobile-icons {
    display: none !important;
  }
}

#mobile-icons {
  position: fixed;
  bottom: 0;
  z-index: 9;
  display: flex;
  background-color: var(--ast-global-color-3);
  width: 100vw;
  padding: 15px 25px;
  justify-content: space-around;
}

#mobile-icons .mobile-icon a {
  color: var(--ast-global-color-0);
  font-size: var(--btn-font-size);
  font-weight: 700;
  line-height: 1.28;
  display: flex;
  align-items: center;
  gap: 7px;
}

#mobile-icons .mobile-icon a::after {
  content: "";
  display: block;
  width: 1.429em;
  height: 1.429em;
  background-image: url(/wp-content/themes/astra-impuls-child/img/arrow-links.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media (max-width: 1350px) {
  .footer-logos-inner-wrapper ul {
    row-gap: 0px;
  }

  #footer .wrap::after {
    right: -3vw;
    top: -10vw;
  }

  .footer-claim {
    transform: translate(-70%, 60%);
  }

  #footer .wrap {
    gap: calc(var(--gap-l) * 0.9);
  }
}

@media (max-width: 1024px) {
  #footer .wrap {
    flex-wrap: wrap;
  }

  #footer .wrap {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--gap-l) * 1.2);
    justify-content: flex-start;
  }

  .inner-wrap .wrap-infos {
    flex-direction: column;
  }

  .wrap-footer-slider {
    padding-left: 26px;
    width: 100%;
  }

  .wrap-footer-slider .footer-slide {
    justify-content: space-between;
  }

  .inner-wrap .wrap-infos {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-left: 26px;
  }

  .inner-wrap {
    max-width: 900px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: calc(var(--gap-m) * 2.4);
    align-items: flex-start;
  }

  #footer-links,
  #footer-mitte,
  #footer-rechts {
    gap: var(--gap-s);
  }

  .footer-logos-inner-wrapper ul {
    row-gap: 5px;
    column-gap: 25px;
    padding-left: 26px;
  }

  #footer .wrap::after {
    right: 3.3vw;
    top: -16vw;
    background-image: url(../img/icon-footer-vertical-mobile.svg);
    height: 92.5%;
  }

  .footer-claim {
    transform: translateY(10%);
  }
}

@media (max-width: 990px) {
  div#mobile-bar {
    display: flex;
  }

  #footer {
    padding-bottom: var(--gap-xl);
  }
}

@media (max-width: 768px) {
  #footer .wrap::after {
    right: 6vw;
  }

  #mobile-icons {
    justify-content: space-between;
  }
}
